#include <juce_FixedSizeFunction.h>
Public Member Functions | |
FixedSizeFunction () noexcept=default | |
FixedSizeFunction (std::nullptr_t) noexcept | |
FixedSizeFunction (const FixedSizeFunction &)=delete | |
template<typename Callable, typename Fn = Decay<Callable>, IntIfValidConversion< Callable > = 0> | |
FixedSizeFunction (Callable &&callable) | |
FixedSizeFunction (FixedSizeFunction &&other) noexcept | |
template<size_t otherLen, std::enable_if_t<(otherLen< len), int > = 0> | |
FixedSizeFunction (FixedSizeFunction< otherLen, Ret(Args...)> &&other) noexcept | |
FixedSizeFunction & | operator= (std::nullptr_t) noexcept |
FixedSizeFunction & | operator= (const FixedSizeFunction &)=delete |
template<typename Callable, IntIfValidConversion< Callable > = 0> | |
FixedSizeFunction & | operator= (Callable &&callable) |
template<size_t otherLen, std::enable_if_t<(otherLen< len), int > = 0> | |
FixedSizeFunction & | operator= (FixedSizeFunction< otherLen, Ret(Args...)> &&other) noexcept |
FixedSizeFunction & | operator= (FixedSizeFunction &&other) noexcept |
~FixedSizeFunction () noexcept | |
Ret | operator() (Args... args) const |
operator bool () const noexcept | |
A type similar to std::function
that holds a callable object.
Unlike std::function
, the callable object will always be stored in a buffer of size len
that is internal to the FixedSizeFunction instance. This in turn means that creating a FixedSizeFunction instance will never allocate, making FixedSizeFunctions suitable for use in realtime contexts.
Definition at line 99 of file juce_FixedSizeFunction.h.
|
defaultnoexcept |
Create an empty function.
|
inlinenoexcept |
Create an empty function.
Definition at line 118 of file juce_FixedSizeFunction.h.
|
inline |
Forwards the passed Callable into the internal storage buffer.
Definition at line 127 of file juce_FixedSizeFunction.h.
|
inlinenoexcept |
Move constructor.
Definition at line 142 of file juce_FixedSizeFunction.h.
|
inlinenoexcept |
Converting constructor from smaller FixedSizeFunctions.
Definition at line 150 of file juce_FixedSizeFunction.h.
|
inlinenoexcept |
Destructor.
Definition at line 188 of file juce_FixedSizeFunction.h.
|
inlineexplicitnoexcept |
Returns true if this instance currently holds a callable.
Definition at line 202 of file juce_FixedSizeFunction.h.
|
inline |
If this instance is currently storing a callable object, calls that object, otherwise throws std::bad_function_call
.
Definition at line 193 of file juce_FixedSizeFunction.h.
|
inline |
Assigns a new callable to this instance.
Definition at line 166 of file juce_FixedSizeFunction.h.
|
inlinenoexcept |
Move assignment operator.
Definition at line 179 of file juce_FixedSizeFunction.h.
|
inlinenoexcept |
Move assignment from smaller FixedSizeFunctions.
Definition at line 173 of file juce_FixedSizeFunction.h.
|
inlinenoexcept |
Nulls this instance.
Definition at line 157 of file juce_FixedSizeFunction.h.