JUCE: containers

JUCE

Namespaces | Classes | Functions | Variables
containers
juce_core

## Namespaces
namespace | detail
namespace | detail::adlSwap

## Classes
class | AbstractFifo
| Encapsulates the logic required to implement a lock-free FIFO. More...
class | AbstractFifo::ScopedReadWrite< mode >
| Class for a scoped reader/writer. More...
class | Array< ElementType, TypeOfCriticalSectionToUse, minimumAllocatedSize >
| Holds a resizable array of primitive or copy-by-value objects. More...
class | ArrayAllocationBase< ElementType, TypeOfCriticalSectionToUse >
| Implements some basic array storage allocation functions. More...
class | ArrayBase< ElementType, TypeOfCriticalSectionToUse >
| A basic object container. More...
class | DynamicObject
| Represents a dynamically implemented object. More...
class | DefaultElementComparator< ElementType >
| A simple ElementComparator class that can be used to sort an array of objects that support the '<' operator. More...
struct | DefaultHashFunctions
| A simple class to generate hash functions for some primitive types, intended for use with the HashMap class. More...
class | HashMap< KeyType, ValueType, HashFunctionType, TypeOfCriticalSectionToUse >
| Holds a set of mappings between some key/value pairs. More...
struct | HashMap< KeyType, ValueType, HashFunctionType, TypeOfCriticalSectionToUse >::Iterator
| Iterates over the items in a HashMap. More...
class | LinkedListPointer< ObjectType >
| Helps to manipulate singly-linked lists of objects. More...
class | LinkedListPointer< ObjectType >::Appender
| Allows efficient repeated insertions into a list. More...
class | ListenerList< ListenerClass, ArrayType >
| Holds a set of objects and can invoke a member function callback on each object in the set with a single call. More...
struct | ListenerList< ListenerClass, ArrayType >::DummyBailOutChecker
| A dummy bail-out checker that always returns false. More...
struct | ListenerList< ListenerClass, ArrayType >::Iterator
| Iterates the listeners in a ListenerList. More...
class | NamedValueSet
| Holds a set of named var objects. More...
struct | NamedValueSet::NamedValue
| Structure for a named var object. More...
struct | Nullopt
| A type representing the null state of an Optional. More...
class | Optional< Value >
| A simple optional type. More...
class | OwnedArray< ObjectClass, TypeOfCriticalSectionToUse >
| An array designed for holding objects. More...
class | PropertySet
| A set of named property values, which can be strings, integers, floating point, etc. More...
class | ReferenceCountedArray< ObjectClass, TypeOfCriticalSectionToUse >
| Holds a list of objects derived from ReferenceCountedObject, or which implement basic reference-count handling methods. More...
class | ScopedValueSetter< ValueType >
| Helper class providing an RAII-based mechanism for temporarily setting and then re-setting a value. More...
class | SingleThreadedAbstractFifo
| Encapsulates the logic for a single-threaded FIFO. More...
class | SortedSet< ElementType, TypeOfCriticalSectionToUse >
| Holds a set of unique primitive objects, such as ints or doubles. More...
class | SparseSet< Type >
| Holds a set of primitive values, storing them as a set of ranges. More...
class | var
| A variant class, that can be used to hold a range of primitive values. More...
struct | var::NativeFunctionArgs
| This structure is passed to a NativeFunction callback, and contains invocation details about the function's arguments and context. More...
struct | VariantConverter< Type >
| This template-overloaded class can be used to convert between var and custom types. More...

## 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)
JUCE_API bool | operator== (const var &, const var &)
| Compares the values of two var objects, using the var::equals() comparison. More...
JUCE_API bool | operator!= (const var &, const var &)
| Compares the values of two var objects, using the var::equals() comparison. More...
JUCE_API bool | operator< (const var &, const var &)
| Compares the values of two var objects, using the var::equals() comparison. More...
JUCE_API bool | operator<= (const var &, const var &)
| Compares the values of two var objects, using the var::equals() comparison. More...
JUCE_API bool | operator> (const var &, const var &)
| Compares the values of two var objects, using the var::equals() comparison. More...
JUCE_API bool | operator>= (const var &, const var &)
| Compares the values of two var objects, using the var::equals() comparison. More...
JUCE_API bool | operator== (const var &, const String &)
JUCE_API bool | operator!= (const var &, const String &)
JUCE_API bool | operator== (const var &, const char *)
JUCE_API bool | operator!= (const var &, const char *)

## Variables
constexpr Nullopt | nullopt { 0 }
| An object that can be used when constructing and comparing Optional instances. More...

## Detailed Description

## Function Documentation

## ◆ makeOptional()

template<typename Value >

JUCE_END_IGNORE_WARNINGS_MSVC Optional< std::decay_t< Value > > makeOptional | ( | Value && | v | ) |

References gl::v.

## ◆ operator==() [1/8]

template<class T , class U >

bool operator== | ( | const Optional< T > & | lhs,
|  | const Optional< U > & | rhs
| ) |  |

References Optional< Value >::hasValue().

Referenced by ColourGradient::operator!=(), AudioPlayHead::CurrentPositionInfo::operator!=(), AudioPlayHead::LoopPoints::operator!=(), MidiBufferIterator::operator!=(), MPEZoneLayout::operator!=(), AudioProcessorGraph::NodeAndChannel::operator!=(), AudioPlayHead::PositionInfo::operator!=(), SortedSet< ElementType, TypeOfCriticalSectionToUse >::operator!=(), AudioPlayHead::TimeSignature::operator!=(), and LookAndFeel::playAlertSound().

## ◆ operator!=() [1/8]

template<class T , class U >

bool operator!= | ( | const Optional< T > & | lhs,
|  | const Optional< U > & | rhs
| ) |  |

References Optional< Value >::hasValue().

Referenced by ColourGradient::operator!=().

## ◆ operator<() [1/6]

template<class T , class U >

bool operator< | ( | const Optional< T > & | lhs,
|  | const Optional< U > & | rhs
| ) |  |

References Optional< Value >::hasValue().

Referenced by LookAndFeel::playAlertSound().

## ◆ operator<=() [1/6]

template<class T , class U >

bool operator<= | ( | const Optional< T > & | lhs,
|  | const Optional< U > & | rhs
| ) |  |

References Optional< Value >::hasValue().

## ◆ operator>() [1/6]

template<class T , class U >

bool operator> | ( | const Optional< T > & | lhs,
|  | const Optional< U > & | rhs
| ) |  |

References Optional< Value >::hasValue().

## ◆ operator>=() [1/6]

template<class T , class U >

bool operator>= | ( | const Optional< T > & | lhs,
|  | const Optional< U > & | rhs
| ) |  |

References Optional< Value >::hasValue().

## ◆ operator==() [2/8]

template<class T >

bool operator== | ( | const Optional< T > & | opt,
|  | Nullopt |
| ) |  |
| noexcept

## ◆ operator==() [3/8]

template<class T >

bool operator== | ( | Nullopt | ,
|  | const Optional< T > & | opt
| ) |  |
| noexcept

## ◆ operator!=() [2/8]

template<class T >

bool operator!= | ( | const Optional< T > & | opt,
|  | Nullopt |
| ) |  |
| noexcept

## ◆ operator!=() [3/8]

template<class T >

bool operator!= | ( | Nullopt | ,
|  | const Optional< T > & | opt
| ) |  |
| noexcept

## ◆ operator<() [2/6]

template<class T >

bool operator< | ( | const Optional< T > & | ,
|  | Nullopt |
| ) |  |
| noexcept

## ◆ operator<() [3/6]

template<class T >

bool operator< | ( | Nullopt | ,
|  | const Optional< T > & | opt
| ) |  |
| noexcept

## ◆ operator<=() [2/6]

template<class T >

bool operator<= | ( | const Optional< T > & | opt,
|  | Nullopt |
| ) |  |
| noexcept

## ◆ operator<=() [3/6]

template<class T >

bool operator<= | ( | Nullopt | ,
|  | const Optional< T > & |
| ) |  |
| noexcept

## ◆ operator>() [2/6]

template<class T >

bool operator> | ( | const Optional< T > & | opt,
|  | Nullopt |
| ) |  |
| noexcept

## ◆ operator>() [3/6]

template<class T >

bool operator> | ( | Nullopt | ,
|  | const Optional< T > & |
| ) |  |
| noexcept

## ◆ operator>=() [2/6]

template<class T >

bool operator>= | ( | const Optional< T > & | ,
|  | Nullopt |
| ) |  |
| noexcept

## ◆ operator>=() [3/6]

template<class T >

bool operator>= | ( | Nullopt | ,
|  | const Optional< T > & | opt
| ) |  |
| noexcept

## ◆ operator==() [4/8]

template<class T , class U >

bool operator== | ( | const Optional< T > & | opt,
|  | const U & | value
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator==() [5/8]

template<class T , class U >

bool operator== | ( | const T & | value,
|  | const Optional< U > & | opt
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator!=() [4/8]

template<class T , class U >

bool operator!= | ( | const Optional< T > & | opt,
|  | const U & | value
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator!=() [5/8]

template<class T , class U >

bool operator!= | ( | const T & | value,
|  | const Optional< U > & | opt
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator<() [4/6]

template<class T , class U >

bool operator< | ( | const Optional< T > & | opt,
|  | const U & | value
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator<() [5/6]

template<class T , class U >

bool operator< | ( | const T & | value,
|  | const Optional< U > & | opt
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator<=() [4/6]

template<class T , class U >

bool operator<= | ( | const Optional< T > & | opt,
|  | const U & | value
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator<=() [5/6]

template<class T , class U >

bool operator<= | ( | const T & | value,
|  | const Optional< U > & | opt
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator>() [4/6]

template<class T , class U >

bool operator> | ( | const Optional< T > & | opt,
|  | const U & | value
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator>() [5/6]

template<class T , class U >

bool operator> | ( | const T & | value,
|  | const Optional< U > & | opt
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator>=() [4/6]

template<class T , class U >

bool operator>= | ( | const Optional< T > & | opt,
|  | const U & | value
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator>=() [5/6]

template<class T , class U >

bool operator>= | ( | const T & | value,
|  | const Optional< U > & | opt
| ) |  |

References Optional< Value >::hasValue(), and gl::value.

## ◆ operator==() [6/8]

JUCE_API bool operator== | ( | const var & | ,
|  | const var & |
| ) |  |

Compares the values of two var objects, using the var::equals() comparison.

## ◆ operator!=() [6/8]

JUCE_API bool operator!= | ( | const var & | ,
|  | const var & |
| ) |  |

Compares the values of two var objects, using the var::equals() comparison.

## ◆ operator<() [6/6]

JUCE_API bool operator< | ( | const var & | ,
|  | const var & |
| ) |  |

Compares the values of two var objects, using the var::equals() comparison.

## ◆ operator<=() [6/6]

JUCE_API bool operator<= | ( | const var & | ,
|  | const var & |
| ) |  |

Compares the values of two var objects, using the var::equals() comparison.

## ◆ operator>() [6/6]

JUCE_API bool operator> | ( | const var & | ,
|  | const var & |
| ) |  |

Compares the values of two var objects, using the var::equals() comparison.

## ◆ operator>=() [6/6]

JUCE_API bool operator>= | ( | const var & | ,
|  | const var & |
| ) |  |

Compares the values of two var objects, using the var::equals() comparison.

## ◆ operator==() [7/8]

JUCE_API bool operator== | ( | const var & | ,
|  | const String & |
| ) |  |

## ◆ operator!=() [7/8]

JUCE_API bool operator!= | ( | const var & | ,
|  | const String & |
| ) |  |

## ◆ operator==() [8/8]

JUCE_API bool operator== | ( | const var & | ,
|  | const char * |
| ) |  |

## ◆ operator!=() [8/8]

JUCE_API bool operator!= | ( | const var & | ,
|  | const char * |
| ) |  |

## Variable Documentation

## ◆ nullopt

constexpr Nullopt nullopt { 0 }
| constexpr

An object that can be used when constructing and comparing Optional instances.

Similar to std::nullopt.