#include <any_invocable.h>
Classes | |
| struct | IsCompatibleAnyInvocable |
| struct | IsCompatibleAnyInvocable< AnyInvocable< Sig > > |
Public Types | |
| template<class T > | |
| using | HasTrivialRemoteStorage = std::integral_constant< bool, std::is_trivially_destructible< T >::value &&alignof(T)<=ABSL_INTERNAL_DEFAULT_NEW_ALIGNMENT > |
| using | result_type = ReturnType |
| enum | TargetType : int { TargetType::kPointer = 0, TargetType::kCompatibleAnyInvocable = 1, TargetType::kIncompatibleAnyInvocable = 2, TargetType::kOther = 3 } |
Public Member Functions | |
| void | Clear () |
| CoreImpl () noexcept | |
| template<class QualTRef , class... Args> | |
| CoreImpl (absl::in_place_type_t< QualTRef >, Args &&... args) | |
| CoreImpl (CoreImpl &&other) noexcept | |
| template<class QualDecayedTRef , class F > | |
| CoreImpl (TypedConversionConstruct< QualDecayedTRef >, F &&f) | |
| bool | HasValue () const |
| template<int target_type, class QualDecayedTRef , class F , absl::enable_if_t< target_type==0, int > = 0> | |
| void | Initialize (F &&f) |
| template<int target_type, class QualDecayedTRef , class F , absl::enable_if_t< target_type==1, int > = 0> | |
| void | Initialize (F &&f) |
| template<int target_type, class QualDecayedTRef , class F , absl::enable_if_t< target_type==2, int > = 0> | |
| void | Initialize (F &&f) |
| template<int target_type, class QualDecayedTRef , class F , typename = absl::enable_if_t<target_type == 3>> | |
| void | Initialize (F &&f) |
| template<class T , typename = absl::enable_if_t<std::is_trivially_copyable<T>::value>> | |
| void | InitializeLocalManager () |
| template<class T , absl::enable_if_t<!std::is_trivially_copyable< T >::value, int > = 0> | |
| void | InitializeLocalManager () |
| template<class T , class... Args, typename = absl::enable_if_t<HasTrivialRemoteStorage<T>::value>> | |
| void | InitializeRemoteManager (Args &&... args) |
| template<class T , class... Args, absl::enable_if_t<!HasTrivialRemoteStorage< T >::value, int > = 0> | |
| void | InitializeRemoteManager (Args &&... args) |
| template<class QualTRef , class... Args, typename = absl::enable_if_t< IsStoredLocally<RemoveCVRef<QualTRef>>::value>> | |
| void | InitializeStorage (Args &&... args) |
| template<class QualTRef , class... Args, absl::enable_if_t<!IsStoredLocally< RemoveCVRef< QualTRef >>::value, int > = 0> | |
| void | InitializeStorage (Args &&... args) |
| CoreImpl & | operator= (CoreImpl &&other) noexcept |
| ~CoreImpl () | |
Public Attributes | |
| InvokerType< SigIsNoexcept, ReturnType, P... > * | invoker_ |
| ManagerType * | manager_ |
| TypeErasedState | state_ |
Definition at line 415 of file internal/any_invocable.h.
| using absl::internal_any_invocable::CoreImpl< SigIsNoexcept, ReturnType, P >::HasTrivialRemoteStorage = std::integral_constant<bool, std::is_trivially_destructible<T>::value && alignof(T) <= ABSL_INTERNAL_DEFAULT_NEW_ALIGNMENT> |
Definition at line 606 of file internal/any_invocable.h.
| using absl::internal_any_invocable::CoreImpl< SigIsNoexcept, ReturnType, P >::result_type = ReturnType |
Definition at line 429 of file internal/any_invocable.h.
|
strong |
| Enumerator | |
|---|---|
| kPointer | |
| kCompatibleAnyInvocable | |
| kIncompatibleAnyInvocable | |
| kOther | |
Definition at line 433 of file internal/any_invocable.h.
|
inlinenoexcept |
Definition at line 431 of file internal/any_invocable.h.
|
inlineexplicit |
Definition at line 444 of file internal/any_invocable.h.
|
inlineexplicit |
Definition at line 467 of file internal/any_invocable.h.
|
inlinenoexcept |
Definition at line 471 of file internal/any_invocable.h.
|
inline |
Definition at line 499 of file internal/any_invocable.h.
|
inline |
Definition at line 505 of file internal/any_invocable.h.
|
inline |
Definition at line 502 of file internal/any_invocable.h.
|
inline |
Definition at line 513 of file internal/any_invocable.h.
|
inline |
Definition at line 538 of file internal/any_invocable.h.
|
inline |
Definition at line 550 of file internal/any_invocable.h.
|
inline |
Definition at line 561 of file internal/any_invocable.h.
|
inline |
Definition at line 592 of file internal/any_invocable.h.
|
inline |
Definition at line 598 of file internal/any_invocable.h.
|
inline |
Definition at line 610 of file internal/any_invocable.h.
|
inline |
Definition at line 622 of file internal/any_invocable.h.
|
inline |
Definition at line 569 of file internal/any_invocable.h.
|
inline |
Definition at line 583 of file internal/any_invocable.h.
|
inlinenoexcept |
Definition at line 479 of file internal/any_invocable.h.
| InvokerType<SigIsNoexcept, ReturnType, P...>* absl::internal_any_invocable::CoreImpl< SigIsNoexcept, ReturnType, P >::invoker_ |
Definition at line 653 of file internal/any_invocable.h.
| ManagerType* absl::internal_any_invocable::CoreImpl< SigIsNoexcept, ReturnType, P >::manager_ |
Definition at line 652 of file internal/any_invocable.h.
| TypeErasedState absl::internal_any_invocable::CoreImpl< SigIsNoexcept, ReturnType, P >::state_ |
Definition at line 651 of file internal/any_invocable.h.