JUCE
Classes | Namespaces | Functions | Variables
juce_Optional.h File Reference

Classes

struct  Nullopt
 A type representing the null state of an Optional. More...
 
class  Optional< Value >
 A simple optional type. More...
 

Namespaces

 detail
 
 detail::adlSwap
 

Functions

template<typename Value >
JUCE_END_IGNORE_WARNINGS_MSVC Optional< std::decay_t< Value > > makeOptional (Value &&v)
 
template<class T , class U >
bool operator== (const Optional< T > &lhs, const Optional< U > &rhs)
 
template<class T , class U >
bool operator!= (const Optional< T > &lhs, const Optional< U > &rhs)
 
template<class T , class U >
bool operator< (const Optional< T > &lhs, const Optional< U > &rhs)
 
template<class T , class U >
bool operator<= (const Optional< T > &lhs, const Optional< U > &rhs)
 
template<class T , class U >
bool operator> (const Optional< T > &lhs, const Optional< U > &rhs)
 
template<class T , class U >
bool operator>= (const Optional< T > &lhs, const Optional< U > &rhs)
 
template<class T >
bool operator== (const Optional< T > &opt, Nullopt) noexcept
 
template<class T >
bool operator== (Nullopt, const Optional< T > &opt) noexcept
 
template<class T >
bool operator!= (const Optional< T > &opt, Nullopt) noexcept
 
template<class T >
bool operator!= (Nullopt, const Optional< T > &opt) noexcept
 
template<class T >
bool operator< (const Optional< T > &, Nullopt) noexcept
 
template<class T >
bool operator< (Nullopt, const Optional< T > &opt) noexcept
 
template<class T >
bool operator<= (const Optional< T > &opt, Nullopt) noexcept
 
template<class T >
bool operator<= (Nullopt, const Optional< T > &) noexcept
 
template<class T >
bool operator> (const Optional< T > &opt, Nullopt) noexcept
 
template<class T >
bool operator> (Nullopt, const Optional< T > &) noexcept
 
template<class T >
bool operator>= (const Optional< T > &, Nullopt) noexcept
 
template<class T >
bool operator>= (Nullopt, const Optional< T > &opt) noexcept
 
template<class T , class U >
bool operator== (const Optional< T > &opt, const U &value)
 
template<class T , class U >
bool operator== (const T &value, const Optional< U > &opt)
 
template<class T , class U >
bool operator!= (const Optional< T > &opt, const U &value)
 
template<class T , class U >
bool operator!= (const T &value, const Optional< U > &opt)
 
template<class T , class U >
bool operator< (const Optional< T > &opt, const U &value)
 
template<class T , class U >
bool operator< (const T &value, const Optional< U > &opt)
 
template<class T , class U >
bool operator<= (const Optional< T > &opt, const U &value)
 
template<class T , class U >
bool operator<= (const T &value, const Optional< U > &opt)
 
template<class T , class U >
bool operator> (const Optional< T > &opt, const U &value)
 
template<class T , class U >
bool operator> (const T &value, const Optional< U > &opt)
 
template<class T , class U >
bool operator>= (const Optional< T > &opt, const U &value)
 
template<class T , class U >
bool operator>= (const T &value, const Optional< U > &opt)
 

Variables

template<typename T >
constexpr auto detail::adlSwap::isNothrowSwappable = noexcept (swap (std::declval<T&>(), std::declval<T&>()))
 
constexpr Nullopt nullopt { 0 }
 An object that can be used when constructing and comparing Optional instances. More...