| 
| class   | adjacency_matrix | 
|   | Basic implementation of a directed adjacency matrix.  More...
  | 
|   | 
| struct   | adl_meta_pointer_like | 
|   | Fake ADL based lookup function for meta pointer-like types.  More...
  | 
|   | 
| struct   | allocation_deleter | 
|   | Deleter for allocator-aware unique pointers (waiting for C++20).  More...
  | 
|   | 
| struct   | as_cref_t | 
|   | Empty class type used to request the as cref policy.  More...
  | 
|   | 
| class   | as_group | 
|   | Converts a registry to a group.  More...
  | 
|   | 
| struct   | as_is_t | 
|   | Empty class type used to request the as-is policy.  More...
  | 
|   | 
| struct   | as_ref_t | 
|   | Empty class type used to request the as ref policy.  More...
  | 
|   | 
| class   | as_view | 
|   | Converts a registry to a view.  More...
  | 
|   | 
| struct   | as_void_t | 
|   | Empty class type used to request the as void policy.  More...
  | 
|   | 
| class   | basic_any | 
|   | A SBO friendly, type-safe container for single values of any type.  More...
  | 
|   | 
| class   | basic_common_view | 
|   | Basic storage view implementation.  More...
  | 
|   | 
| class   | basic_continuous_loader | 
|   | Utility class for continuous loading.  More...
  | 
|   | 
| class   | basic_dispatcher | 
|   | Basic dispatcher implementation.  More...
  | 
|   | 
| class   | basic_entt_traits | 
|   | Common basic entity traits implementation.  More...
  | 
|   | 
| class   | basic_flow | 
|   | Utility class for creating task graphs.  More...
  | 
|   | 
| class   | basic_group | 
|   | Group.  More...
  | 
|   | 
| class   | basic_group< owned_t< Owned... >, get_t< Get... >, exclude_t< Exclude... > > | 
|   | Owning group.  More...
  | 
|   | 
| class   | basic_group< owned_t<>, get_t< Get... >, exclude_t< Exclude... > > | 
|   | Non-owning group.  More...
  | 
|   | 
| class   | basic_handle | 
|   | Non-owning handle to an entity.  More...
  | 
|   | 
| class   | basic_hashed_string | 
|   | Zero overhead unique identifier.  More...
  | 
|   | 
| struct   | basic_meta_associative_container_traits | 
|   | General purpose implementation of meta associative container traits.  More...
  | 
|   | 
| struct   | basic_meta_sequence_container_traits | 
|   | General purpose implementation of meta sequence container traits.  More...
  | 
|   | 
| class   | basic_organizer | 
|   | Utility class for creating a static task graph.  More...
  | 
|   | 
| class   | basic_poly | 
|   | Static polymorphism made simple and within everyone's reach.  More...
  | 
|   | 
| class   | basic_reactive_mixin | 
|   | Mixin type used to add reactive support to storage types.  More...
  | 
|   | 
| class   | basic_registry | 
|   | Fast and reliable entity-component system.  More...
  | 
|   | 
| class   | basic_runtime_view | 
|   | Generic runtime view.  More...
  | 
|   | 
| class   | basic_scheduler | 
|   | Cooperative scheduler for processes.  More...
  | 
|   | 
| class   | basic_sigh_mixin | 
|   | Mixin type used to add signal support to storage types.  More...
  | 
|   | 
| class   | basic_snapshot | 
|   | Utility class to create snapshots from a registry.  More...
  | 
|   | 
| class   | basic_snapshot_loader | 
|   | Utility class to restore a snapshot as a whole.  More...
  | 
|   | 
| class   | basic_sparse_set | 
|   | Sparse set implementation.  More...
  | 
|   | 
| class   | basic_storage | 
|   | Storage implementation.  More...
  | 
|   | 
| class   | basic_storage< Entity, Entity, Allocator > | 
|   | Swap-only entity storage specialization.  More...
  | 
|   | 
| class   | basic_storage< Type, Entity, Allocator, std::enable_if_t< component_traits< Type, Entity >::page_size==0u > > | 
|   | Default constructor.     More...
  | 
|   | 
| class   | basic_storage_view | 
|   | Basic storage view implementation.  More...
  | 
|   | 
| class   | basic_table | 
|   | Basic table implementation.  More...
  | 
|   | 
| class   | basic_view | 
|   | View implementation.  More...
  | 
|   | 
| class   | basic_view< get_t< Get >, exclude_t<> > | 
|   | Storage view specialization.  More...
  | 
|   | 
| class   | basic_view< get_t< Get... >, exclude_t< Exclude... >, std::enable_if_t<(sizeof...(Get) !=0u)> > | 
|   | General purpose view.  More...
  | 
|   | 
| struct   | choice_t | 
|   | Utility class to disambiguate overloaded functions.  More...
  | 
|   | 
| struct   | choice_t< 0 > | 
|   | Utility class to disambiguate overloaded functions.     More...
  | 
|   | 
| struct   | component_traits | 
|   | Common way to access various properties of components.  More...
  | 
|   | 
| class   | compressed_pair | 
|   | A compressed pair.  More...
  | 
|   | 
| struct   | connect_arg_t | 
|   | Disambiguation tag for constructors and the like.  More...
  | 
|   | 
| class   | connection | 
|   | Connection class.  More...
  | 
|   | 
| struct   | constness_as | 
|   | Transcribes the constness of a type to another type.  More...
  | 
|   | 
| struct   | constness_as< To, const From > | 
|   | Transcribes the constness of a type to another type.     More...
  | 
|   | 
| class   | delegate | 
|   | Basic delegate implementation.  More...
  | 
|   | 
| class   | delegate< Ret(Args...)> | 
|   | Utility class to use to send around functions and members. 
  | 
|   | 
| class   | dense_map | 
|   | Associative container for key-value pairs with unique keys.  More...
  | 
|   | 
| class   | dense_set | 
|   | Associative container for unique objects of a given type.  More...
  | 
|   | 
| struct   | directed_tag | 
|   | Undirected graph category tag.  More...
  | 
|   | 
| class   | emitter | 
|   | General purpose event emitter.  More...
  | 
|   | 
| struct   | entt_traits | 
|   | Entity traits.  More...
  | 
|   | 
| struct   | enum_as_bitmask | 
|   | Enable bitmask support for enum classes.  More...
  | 
|   | 
| struct   | enum_as_bitmask< Type, std::void_t< decltype(Type::_entt_enum_as_bitmask)> > | 
|   | Enable bitmask support for enum classes.     More...
  | 
|   | 
| struct   | exclude_t | 
|   | Alias for exclusion lists.  More...
  | 
|   | 
| class   | family | 
|   | Dynamic identifier generator.  More...
  | 
|   | 
| struct   | forward_apply | 
|   | Utility class to forward-and-apply tuple objects.  More...
  | 
|   | 
| struct   | get_t | 
|   | Alias for lists of observed elements.  More...
  | 
|   | 
| class   | ident | 
|   | Type integral identifiers.  More...
  | 
|   | 
| struct   | identity | 
|   | Identity function object (waiting for C++20).  More...
  | 
|   | 
| struct   | input_iterator_pointer | 
|   | Helper type to use as pointer with input iterators.  More...
  | 
|   | 
| struct   | insertion_sort | 
|   | Function object for performing insertion sort.  More...
  | 
|   | 
| class   | iota_iterator | 
|   | Plain iota iterator (waiting for C++20).  More...
  | 
|   | 
| struct   | is_applicable | 
|   | Same as std::is_invocable, but with tuples.  More...
  | 
|   | 
| struct   | is_applicable< Func, const Tuple< Args... > > | 
|   | Same as std::is_invocable, but with tuples.     More...
  | 
|   | 
| struct   | is_applicable< Func, Tuple< Args... > > | 
|   | Same as std::is_invocable, but with tuples.     More...
  | 
|   | 
| struct   | is_applicable_r | 
|   | Same as std::is_invocable_r, but with tuples for arguments.  More...
  | 
|   | 
| struct   | is_applicable_r< Ret, Func, std::tuple< Args... > > | 
|   | Same as std::is_invocable_r, but with tuples for arguments.     More...
  | 
|   | 
| struct   | is_complete | 
|   | Provides the member constant value to true if a given type is complete, false otherwise.  More...
  | 
|   | 
| struct   | is_complete< Type, std::void_t< decltype(sizeof(Type))> > | 
|   | Provides the member constant value to true if a given type is complete, false otherwise.     More...
  | 
|   | 
| struct   | is_ebco_eligible | 
|   | Provides the member constant value to true if a given type is both an empty and non-final class, false otherwise.  More...
  | 
|   | 
| struct   | is_equality_comparable | 
|   | Provides the member constant value to true if a given type is equality comparable, false otherwise.  More...
  | 
|   | 
| struct   | is_equality_comparable< const Type > | 
|   | Provides the member constant value to true if a given type is equality comparable, false otherwise.     More...
  | 
|   | 
| struct   | is_iterator | 
|   | Provides the member constant value to true if a given type is an iterator, false otherwise.  More...
  | 
|   | 
| struct   | is_iterator< Type, std::enable_if_t<!std::is_void_v< std::remove_cv_t< std::remove_pointer_t< Type > > > > > | 
|   | Provides the member constant value to true if a given type is an iterator, false otherwise.     More...
  | 
|   | 
| struct   | is_meta_pointer_like | 
|   | Provides the member constant value to true if a given type is a pointer-like type from the point of view of the meta system, false otherwise.  More...
  | 
|   | 
| struct   | is_meta_pointer_like< const Type > | 
|   | Partial specialization to ensure that const pointer-like types are also accepted.  More...
  | 
|   | 
| struct   | is_meta_pointer_like< std::shared_ptr< Type > > | 
|   | Makes std::shared_ptrs of any type pointer-like types for the meta system.  More...
  | 
|   | 
| struct   | is_meta_pointer_like< std::unique_ptr< Type, Args... > > | 
|   | Makes std::unique_ptrs of any type pointer-like types for the meta system.  More...
  | 
|   | 
| struct   | is_meta_pointer_like< Type * > | 
|   | Makes plain pointers pointer-like types for the meta system.  More...
  | 
|   | 
| struct   | is_meta_pointer_like< Type(*)[N]> | 
|   | Partial specialization used to reject pointers to arrays.  More...
  | 
|   | 
| struct   | is_meta_pointer_like< Type, std::void_t< typename Type::is_meta_pointer_like > > | 
|   | Specialization for self-proclaimed meta pointer like types.  More...
  | 
|   | 
| struct   | is_meta_policy | 
|   | Provides the member constant value to true if a type also is a meta policy, false otherwise.  More...
  | 
|   | 
| struct   | is_transparent | 
|   | Provides the member constant value to true if Type::is_transparent is valid and denotes a type, false otherwise.  More...
  | 
|   | 
| struct   | is_transparent< Type, std::void_t< typename Type::is_transparent > > | 
|   | Provides the member constant value to true if Type::is_transparent is valid and denotes a type, false otherwise.     More...
  | 
|   | 
| struct   | is_tuple | 
|   | Provides the member constant value to true if a given type is a tuple, false otherwise.  More...
  | 
|   | 
| struct   | is_tuple< std::tuple< Args... > > | 
|   | Provides the member constant value to true if a given type is a tuple, false otherwise.     More...
  | 
|   | 
| struct   | iterable_adaptor | 
|   | Utility class to create an iterable object from a pair of iterators.  More...
  | 
|   | 
| class   | locator | 
|   | Service locator, nothing more.  More...
  | 
|   | 
| class   | member_class | 
|   | Extracts the class of a non-static member object or function.  More...
  | 
|   | 
| class   | meta_any | 
|   | Opaque wrapper for values of any type.  More...
  | 
|   | 
| class   | meta_associative_container | 
|   | Proxy object for associative containers.  More...
  | 
|   | 
| struct   | meta_associative_container_traits | 
|   | Traits class template to be specialized to enable support for meta associative containers.  More...
  | 
|   | 
| struct   | meta_associative_container_traits< dense_map< Args... > > | 
|   | Meta associative container traits for dense_maps of any type.  More...
  | 
|   | 
| struct   | meta_associative_container_traits< dense_set< Args... > > | 
|   | Meta associative container traits for dense_sets of any type.  More...
  | 
|   | 
| struct   | meta_associative_container_traits< std::map< Args... > > | 
|   | Meta associative container traits for std::maps of any type.  More...
  | 
|   | 
| struct   | meta_associative_container_traits< std::set< Args... > > | 
|   | Meta associative container traits for std::sets of any type.  More...
  | 
|   | 
| struct   | meta_associative_container_traits< std::unordered_map< Args... > > | 
|   | Meta associative container traits for std::unordered_maps of any type.  More...
  | 
|   | 
| struct   | meta_associative_container_traits< std::unordered_set< Args... > > | 
|   | Meta associative container traits for std::unordered_sets of any type.  More...
  | 
|   | 
| struct   | meta_class_template_tag | 
|   | Utility class to disambiguate class templates.  More...
  | 
|   | 
| class   | meta_ctx | 
|   | Opaque meta context type.  More...
  | 
|   | 
| class   | meta_ctx_arg_t | 
|   | Disambiguation tag for constructors and the like.  More...
  | 
|   | 
| struct   | meta_custom | 
|   | Opaque wrapper for user defined data of any type.  More...
  | 
|   | 
| struct   | meta_data | 
|   | Opaque wrapper for data members.  More...
  | 
|   | 
| class   | meta_factory | 
|   | Meta factory to be used for reflection purposes.  More...
  | 
|   | 
| struct   | meta_func | 
|   | Opaque wrapper for member functions.  More...
  | 
|   | 
| struct   | meta_function_descriptor | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | meta_function_descriptor< Type, Ret Class::* > | 
|   | Meta function descriptor.  More...
  | 
|   | 
| struct   | meta_function_descriptor< Type, Ret(*)()> | 
|   | Meta function descriptor.  More...
  | 
|   | 
| struct   | meta_function_descriptor< Type, Ret(*)(MaybeType, Args...)> | 
|   | Meta function descriptor.  More...
  | 
|   | 
| struct   | meta_function_descriptor< Type, Ret(Class::*)(Args...) const > | 
|   | Meta function descriptor.  More...
  | 
|   | 
| struct   | meta_function_descriptor< Type, Ret(Class::*)(Args...)> | 
|   | Meta function descriptor.  More...
  | 
|   | 
| struct   | meta_function_descriptor_traits | 
|   | Meta function descriptor traits.  More...
  | 
|   | 
| class   | meta_function_helper | 
|   | Meta function helper.  More...
  | 
|   | 
| struct   | meta_handle | 
|   | Opaque pointers to instances of any type.  More...
  | 
|   | 
| class   | meta_sequence_container | 
|   | Proxy object for sequence containers.  More...
  | 
|   | 
| struct   | meta_sequence_container_traits | 
|   | Traits class template to be specialized to enable support for meta sequence containers.  More...
  | 
|   | 
| struct   | meta_sequence_container_traits< std::array< Type, N > > | 
|   | Meta sequence container traits for std::arrays of any type.  More...
  | 
|   | 
| struct   | meta_sequence_container_traits< std::deque< Args... > > | 
|   | Meta sequence container traits for std::deques of any type.  More...
  | 
|   | 
| struct   | meta_sequence_container_traits< std::list< Args... > > | 
|   | Meta sequence container traits for std::lists of any type.  More...
  | 
|   | 
| struct   | meta_sequence_container_traits< std::vector< Args... > > | 
|   | Meta sequence container traits for std::vectors of any type.  More...
  | 
|   | 
| struct   | meta_template_traits | 
|   | Traits class template to be specialized to enable support for meta template information.  More...
  | 
|   | 
| struct   | meta_template_traits< Clazz< Args... > > | 
|   | General purpose traits class for generating meta template information.  More...
  | 
|   | 
| class   | meta_type | 
|   | Opaque wrapper for types.  More...
  | 
|   | 
| struct   | monostate | 
|   | Minimal implementation of the monostate pattern.  More...
  | 
|   | 
| class   | nth_argument | 
|   | Extracts the n-th argument of a callable type.  More...
  | 
|   | 
| struct   | null_t | 
|   | Null object for all identifiers.  More...
  | 
|   | 
| struct   | overloaded | 
|   | Helper type for visitors.  More...
  | 
|   | 
| struct   | owned_t | 
|   | Alias for lists of owned elements.  More...
  | 
|   | 
| struct   | poly_base | 
|   | Poly base class used to inject functionalities into concepts.  More...
  | 
|   | 
| struct   | poly_inspector | 
|   | Inspector class used to infer the type of the virtual table.  More...
  | 
|   | 
| class   | poly_vtable | 
|   | Static virtual table factory.  More...
  | 
|   | 
| class   | process | 
|   | Base class for processes.  More...
  | 
|   | 
| struct   | process_adaptor | 
|   | Adaptor for lambdas and functors to turn them into processes.  More...
  | 
|   | 
| struct   | radix_sort | 
|   | Function object for performing LSD radix sort.  More...
  | 
|   | 
| struct   | reactive | 
|   | Empty value type for reactive storage types.  More...
  | 
|   | 
| class   | resource | 
|   | Basic resource handle.  More...
  | 
|   | 
| class   | resource_cache | 
|   | Basic cache for resources of any type.  More...
  | 
|   | 
| struct   | resource_loader | 
|   | Transparent loader for shared resources.  More...
  | 
|   | 
| struct   | scoped_connection | 
|   | Scoped connection class.  More...
  | 
|   | 
| class   | sigh | 
|   | Unmanaged signal handler.  More...
  | 
|   | 
| class   | sigh< Ret(Args...), Allocator > | 
|   | Unmanaged signal handler. 
  | 
|   | 
| struct   | sigh_helper | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | sigh_helper< Registry > | 
|   | Signal connection helper for registries.  More...
  | 
|   | 
| struct   | sigh_helper< Registry, Type > | 
|   | Signal connection helper for registries.  More...
  | 
|   | 
| class   | sink | 
|   | Sink class.  More...
  | 
|   | 
| class   | sink< sigh< Ret(Args...), Allocator > > | 
|   | Sink class. 
  | 
|   | 
| struct   | size_of | 
|   | A type-only sizeof wrapper that returns 0 where sizeof complains.  More...
  | 
|   | 
| struct   | size_of< Type, std::void_t< decltype(sizeof(Type))> > | 
|   | A type-only sizeof wrapper that returns 0 where sizeof complains.     More...
  | 
|   | 
| struct   | std_sort | 
|   | Function object to wrap std::sort in a class type.  More...
  | 
|   | 
| struct   | storage_for | 
|   | 
| struct   | storage_type | 
|   | Provides a common way to define storage types.  More...
  | 
|   | 
| struct   | storage_type< reactive, Entity, Allocator > | 
|   | 
| struct   | tombstone_t | 
|   | Tombstone object for all identifiers.  More...
  | 
|   | 
| struct   | type_hash | 
|   | Type hash.  More...
  | 
|   | 
| struct   | type_identity | 
|   | Identity type trait.  More...
  | 
|   | 
| struct   | type_index | 
|   | Type sequential identifier.  More...
  | 
|   | 
| struct   | type_info | 
|   | Implementation specific information about a type.  More...
  | 
|   | 
| struct   | type_list | 
|   | A class to use to push around lists of types, nothing more.  More...
  | 
|   | 
| struct   | type_list_cat | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | type_list_cat< type_list< Type... > > | 
|   | Concatenates multiple type lists.  More...
  | 
|   | 
| struct   | type_list_cat< type_list< Type... >, type_list< Other... >, List... > | 
|   | Concatenates multiple type lists.  More...
  | 
|   | 
| struct   | type_list_cat<> | 
|   | Concatenates multiple type lists.  More...
  | 
|   | 
| struct   | type_list_contains | 
|   | Provides the member constant value to true if a type list contains a given type, false otherwise.  More...
  | 
|   | 
| struct   | type_list_contains< type_list< Type... >, Other > | 
|   | Provides the member constant value to true if a type list contains a given type, false otherwise.     More...
  | 
|   | 
| struct   | type_list_diff | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | type_list_diff< type_list< Type... >, type_list< Other... > > | 
|   | Computes the difference between two type lists.  More...
  | 
|   | 
| struct   | type_list_element | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | type_list_element< 0u, type_list< First, Other... > > | 
|   | Provides compile-time indexed access to the types of a type list.  More...
  | 
|   | 
| struct   | type_list_element< Index, type_list< First, Other... > > | 
|   | Provides compile-time indexed access to the types of a type list.  More...
  | 
|   | 
| struct   | type_list_index | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | type_list_index< Type, type_list< First, Other... > > | 
|   | Provides compile-time type access to the types of a type list.  More...
  | 
|   | 
| struct   | type_list_index< Type, type_list< Type, Other... > > | 
|   | Provides compile-time type access to the types of a type list.  More...
  | 
|   | 
| struct   | type_list_index< Type, type_list<> > | 
|   | Provides compile-time type access to the types of a type list.  More...
  | 
|   | 
| struct   | type_list_transform | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | type_list_transform< exclude_t< Type... >, Op > | 
|   | Applies a given function to an exclude list and generate a new list.  More...
  | 
|   | 
| struct   | type_list_transform< get_t< Type... >, Op > | 
|   | Applies a given function to a get list and generate a new list.  More...
  | 
|   | 
| struct   | type_list_transform< owned_t< Type... >, Op > | 
|   | Applies a given function to an owned list and generate a new list.  More...
  | 
|   | 
| struct   | type_list_transform< type_list< Type... >, Op > | 
|   | Applies a given function to a type list and generate a new list.  More...
  | 
|   | 
| struct   | type_list_unique | 
|   | Removes duplicates types from a type list.  More...
  | 
|   | 
| struct   | type_name | 
|   | Type name.  More...
  | 
|   | 
| struct   | undirected_tag | 
|   | Directed graph category tag.  More...
  | 
|   | 
| struct   | value_list | 
|   | A class to use to push around lists of constant values, nothing more.  More...
  | 
|   | 
| struct   | value_list_cat | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | value_list_cat< value_list< Value... > > | 
|   | Concatenates multiple value lists.  More...
  | 
|   | 
| struct   | value_list_cat< value_list< Value... >, value_list< Other... >, List... > | 
|   | Concatenates multiple value lists.  More...
  | 
|   | 
| struct   | value_list_cat<> | 
|   | Concatenates multiple value lists.  More...
  | 
|   | 
| struct   | value_list_contains | 
|   | Provides the member constant value to true if a value list contains a given value, false otherwise.  More...
  | 
|   | 
| struct   | value_list_contains< value_list< Value... >, Other > | 
|   | Provides the member constant value to true if a value list contains a given value, false otherwise.     More...
  | 
|   | 
| struct   | value_list_diff | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | value_list_diff< value_list< Value... >, value_list< Other... > > | 
|   | Computes the difference between two value lists.  More...
  | 
|   | 
| struct   | value_list_element | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | value_list_element< 0u, value_list< Value, Other... > > | 
|   | Provides compile-time indexed access to the types of a type list.  More...
  | 
|   | 
| struct   | value_list_element< Index, value_list< Value, Other... > > | 
|   | Provides compile-time indexed access to the values of a value list.  More...
  | 
|   | 
| struct   | value_list_index | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | value_list_index< Value, value_list< First, Other... > > | 
|   | Provides compile-time type access to the values of a value list.  More...
  | 
|   | 
| struct   | value_list_index< Value, value_list< Value, Other... > > | 
|   | Provides compile-time type access to the values of a value list.  More...
  | 
|   | 
| struct   | value_list_index< Value, value_list<> > | 
|   | Provides compile-time type access to the values of a value list.  More...
  | 
|   | 
| struct   | value_list_unique | 
|   | Primary template isn't defined on purpose.  More...
  | 
|   | 
| struct   | value_list_unique< value_list< Value, Other... > > | 
|   | Removes duplicates values from a value list.  More...
  | 
|   | 
| struct   | value_list_unique< value_list<> > | 
|   | Removes duplicates values from a value list.  More...
  | 
|   | 
| struct   | y_combinator | 
|   | Basic implementation of a y-combinator.  More...
  | 
|   | 
 | 
| template<typename... Type>  | 
| using  | table = basic_table<std::vector<Type>...> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | id_type = std::uint32_t | 
|   | Alias declaration for type identifiers.  
  | 
|   | 
| using  | any = basic_any<> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | hashed_string = basic_hashed_string<char> | 
|   | Aliases for common character types.  
  | 
|   | 
| using  | hashed_wstring = basic_hashed_string<wchar_t> | 
|   | Aliases for common character types.  
  | 
|   | 
| template<typename Type>  | 
| using  | type_identity_t = typename type_identity<Type>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename Type, typename>  | 
| using  | unpack_as_type = Type | 
|   | Using declaration to be used to repeat the same type a number of times equal to the size of a given parameter pack.  
  | 
|   | 
| template<auto Value>  | 
| using  | integral_constant = std::integral_constant<decltype(Value), Value> | 
|   | Wraps a static constant.  
  | 
|   | 
| template<id_type Value>  | 
| using  | tag = integral_constant<Value> | 
|   | Alias template to facilitate the creation of named values.  
  | 
|   | 
| template<std::size_t Index, typename List>  | 
| using  | type_list_element_t = typename type_list_element<Index, List>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename... List>  | 
| using  | type_list_cat_t = typename type_list_cat<List...>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename List>  | 
| using  | type_list_unique_t = typename type_list_unique<List>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename... List>  | 
| using  | type_list_diff_t = typename type_list_diff<List...>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename List, template< typename... > class Op>  | 
| using  | type_list_transform_t = typename type_list_transform<List, Op>::type | 
|   | Helper type.  
  | 
|   | 
| template<std::size_t Index, typename List>  | 
| using  | value_list_element_t = typename value_list_element<Index, List>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename... List>  | 
| using  | value_list_cat_t = typename value_list_cat<List...>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename Type>  | 
| using  | value_list_unique_t = typename value_list_unique<Type>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename... List>  | 
| using  | value_list_diff_t = typename value_list_diff<List...>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename To, typename From>  | 
| using  | constness_as_t = typename constness_as<To, From>::type | 
|   | Alias template to facilitate the transcription of the constness.  
  | 
|   | 
| template<typename Member>  | 
| using  | member_class_t = typename member_class<Member>::type | 
|   | Helper type.  
  | 
|   | 
| template<std::size_t Index, typename Candidate>  | 
| using  | nth_argument_t = typename nth_argument<Index, Candidate>::type | 
|   | Helper type.  
  | 
|   | 
| using  | sparse_set = basic_sparse_set<> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename Type>  | 
| using  | storage = basic_storage<Type> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename Type>  | 
| using  | sigh_mixin = basic_sigh_mixin<Type, basic_registry<typename Type::entity_type, typename Type::base_type::allocator_type>> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename Type>  | 
| using  | reactive_mixin = basic_reactive_mixin<Type, basic_registry<typename Type::entity_type, typename Type::base_type::allocator_type>> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | registry = basic_registry<> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | organizer = basic_organizer<registry> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | handle = basic_handle<registry> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | const_handle = basic_handle<const registry> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename... Args>  | 
| using  | handle_view = basic_handle<registry, Args...> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename... Args>  | 
| using  | const_handle_view = basic_handle<const registry, Args...> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | snapshot = basic_snapshot<registry> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | snapshot_loader = basic_snapshot_loader<registry> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | continuous_loader = basic_continuous_loader<registry> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | runtime_view = basic_runtime_view<sparse_set> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | const_runtime_view = basic_runtime_view<const sparse_set> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename... Args>  | 
| using  | storage_type_t = typename storage_type<Args...>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename... Args>  | 
| using  | storage_for_t = typename storage_for<Args...>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename Get, typename Exclude = exclude_t<>>  | 
| using  | view = basic_view<type_list_transform_t<Get, storage_for>, type_list_transform_t<Exclude, storage_for>> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename Owned, typename Get = get_t<>, typename Exclude = exclude_t<>>  | 
| using  | group = basic_group<type_list_transform_t<Owned, storage_for>, type_list_transform_t<Get, storage_for>, type_list_transform_t<Exclude, storage_for>> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | flow = basic_flow<> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| template<typename Type, typename It>  | 
| using  | meta_range = iterable_adaptor<internal::meta_range_iterator<Type, It>> | 
|   | Iterable range to use to iterate all types of meta objects.  
  | 
|   | 
| template<typename Type, typename Candidate>  | 
| using  | meta_function_helper_t = typename meta_function_helper<Type, Candidate>::type | 
|   | Helper type.  
  | 
|   | 
| template<typename Concept>  | 
| using  | poly = basic_poly<Concept> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | scheduler = basic_scheduler<> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
| using  | dispatcher = basic_dispatcher<> | 
|   | Alias declaration for the most common use case.  
  | 
|   | 
 | 
| template<typename Type, std::size_t Len, std::size_t Align>  | 
| std::remove_const_t< Type >  | any_cast (const basic_any< Len, Align > &data) noexcept | 
|   | Performs type-safe access to the contained object.  
  | 
|   | 
| template<typename Type, std::size_t Len, std::size_t Align>  | 
| std::remove_const_t< Type >  | any_cast (basic_any< Len, Align > &data) noexcept | 
|   | Performs type-safe access to the contained object.     
  | 
|   | 
| template<typename Type, std::size_t Len, std::size_t Align>  | 
| std::remove_const_t< Type >  | any_cast (basic_any< Len, Align > &&data) noexcept | 
|   | Performs type-safe access to the contained object.     
  | 
|   | 
| template<typename Type, std::size_t Len, std::size_t Align>  | 
| const Type *  | any_cast (const basic_any< Len, Align > *data) noexcept | 
|   | Performs type-safe access to the contained object.     
  | 
|   | 
| template<typename Type, std::size_t Len, std::size_t Align>  | 
| Type *  | any_cast (basic_any< Len, Align > *data) noexcept | 
|   | Performs type-safe access to the contained object.     
  | 
|   | 
| template<typename Type, std::size_t Len = basic_any<>::length, std::size_t Align = basic_any<Len>::alignment, typename... Args>  | 
| basic_any< Len, Align >  | make_any (Args &&...args) | 
|   | Constructs a wrapper from a given type, passing it all arguments.  
  | 
|   | 
| template<std::size_t Len = basic_any<>::length, std::size_t Align = basic_any<Len>::alignment, typename Type>  | 
| basic_any< Len, Align >  | forward_as_any (Type &&value) | 
|   | Forwards its argument and avoids copies for lvalue references.  
  | 
|   | 
| template<typename Type>  | 
| constexpr std::enable_if_t< std::is_unsigned_v< Type >, int >  | popcount (const Type value) noexcept | 
|   | Returns the number of set bits in a value (waiting for C++20 and std::popcount).  
  | 
|   | 
| template<typename Type>  | 
| constexpr std::enable_if_t< std::is_unsigned_v< Type >, bool >  | has_single_bit (const Type value) noexcept | 
|   | Checks whether a value is a power of two or not (waiting for C++20 and std::has_single_bit).  
  | 
|   | 
| template<typename Type>  | 
| constexpr std::enable_if_t< std::is_unsigned_v< Type >, Type >  | next_power_of_two (const Type value) noexcept | 
|   | Computes the smallest power of two greater than or equal to a value (waiting for C++20 and std::bit_ceil).  
  | 
|   | 
| template<typename Type>  | 
| constexpr std::enable_if_t< std::is_unsigned_v< Type >, Type >  | fast_mod (const Type value, const std::size_t mod) noexcept | 
|   | Fast module utility function (powers of two only).  
  | 
|   | 
| template<typename Type, typename Other>  | 
|   | compressed_pair (Type &&, Other &&) -> compressed_pair< std::decay_t< Type >, std::decay_t< Other > > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename First, typename Second>  | 
| constexpr void  | swap (compressed_pair< First, Second > &lhs, compressed_pair< First, Second > &rhs) noexcept | 
|   | Swaps two compressed pair objects.  
  | 
|   | 
| template<typename Char>  | 
|   | basic_hashed_string (const Char *str, std::size_t len) -> basic_hashed_string< Char > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename Char, std::size_t N>  | 
|   | basic_hashed_string (const Char(&str)[N]) -> basic_hashed_string< Char > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename Char>  | 
| constexpr bool  | operator== (const basic_hashed_string< Char > &lhs, const basic_hashed_string< Char > &rhs) noexcept | 
|   | Compares two hashed strings.  
  | 
|   | 
| template<typename Char>  | 
| constexpr bool  | operator!= (const basic_hashed_string< Char > &lhs, const basic_hashed_string< Char > &rhs) noexcept | 
|   | Compares two hashed strings.  
  | 
|   | 
| template<typename Char>  | 
| constexpr bool  | operator< (const basic_hashed_string< Char > &lhs, const basic_hashed_string< Char > &rhs) noexcept | 
|   | Compares two hashed strings.  
  | 
|   | 
| template<typename Char>  | 
| constexpr bool  | operator<= (const basic_hashed_string< Char > &lhs, const basic_hashed_string< Char > &rhs) noexcept | 
|   | Compares two hashed strings.  
  | 
|   | 
| template<typename Char>  | 
| constexpr bool  | operator> (const basic_hashed_string< Char > &lhs, const basic_hashed_string< Char > &rhs) noexcept | 
|   | Compares two hashed strings.  
  | 
|   | 
| template<typename Char>  | 
| constexpr bool  | operator>= (const basic_hashed_string< Char > &lhs, const basic_hashed_string< Char > &rhs) noexcept | 
|   | Compares two hashed strings.  
  | 
|   | 
| constexpr hashed_string  | operator""_hs (const char *str, std::size_t) noexcept | 
|   | User defined literal for hashed strings.  
  | 
|   | 
| constexpr hashed_wstring  | operator""_hws (const wchar_t *str, std::size_t) noexcept | 
|   | User defined literal for hashed wstrings.  
  | 
|   | 
| template<typename Type>  | 
| constexpr bool  | operator== (const iota_iterator< Type > &lhs, const iota_iterator< Type > &rhs) noexcept | 
|   | Comparison operator.  
  | 
|   | 
| template<typename Type>  | 
| constexpr bool  | operator!= (const iota_iterator< Type > &lhs, const iota_iterator< Type > &rhs) noexcept | 
|   | Comparison operator.  
  | 
|   | 
| template<typename Type>  | 
| constexpr auto  | to_address (Type &&ptr) noexcept | 
|   | Unwraps fancy pointers, does nothing otherwise (waiting for C++20).  
  | 
|   | 
| template<typename Allocator>  | 
| constexpr void  | propagate_on_container_copy_assignment (Allocator &lhs, Allocator &rhs) noexcept | 
|   | Utility function to design allocation-aware containers.  
  | 
|   | 
| template<typename Allocator>  | 
| constexpr void  | propagate_on_container_move_assignment (Allocator &lhs, Allocator &rhs) noexcept | 
|   | Utility function to design allocation-aware containers.  
  | 
|   | 
| template<typename Allocator>  | 
| constexpr void  | propagate_on_container_swap (Allocator &lhs, Allocator &rhs) noexcept | 
|   | Utility function to design allocation-aware containers.  
  | 
|   | 
| template<typename Type, typename Allocator, typename... Args>  | 
| constexpr auto  | allocate_unique (Allocator &allocator, Args &&...args) | 
|   | Allows std::unique_ptr to use allocators (waiting for C++20).  
  | 
|   | 
| template<typename Type, typename Allocator, typename... Args>  | 
| constexpr auto  | uses_allocator_construction_args (const Allocator &allocator, Args &&...args) noexcept | 
|   | Uses-allocator construction utility (waiting for C++20).  
  | 
|   | 
| template<typename Type, typename Allocator, typename... Args>  | 
| constexpr Type  | make_obj_using_allocator (const Allocator &allocator, Args &&...args) | 
|   | Uses-allocator construction utility (waiting for C++20).  
  | 
|   | 
| template<typename Type, typename Allocator, typename... Args>  | 
| constexpr Type *  | uninitialized_construct_using_allocator (Type *value, const Allocator &allocator, Args &&...args) | 
|   | Uses-allocator construction utility (waiting for C++20).  
  | 
|   | 
| template<typename Type>  | 
| constexpr decltype(auto)  | unwrap_tuple (Type &&value) noexcept | 
|   | Utility function to unwrap tuples of a single element.  
  | 
|   | 
| template<typename Func>  | 
|   | forward_apply (Func) -> forward_apply< std::remove_reference_t< std::remove_cv_t< Func > > > | 
|   | Deduction guide.  
  | 
|   | 
| constexpr bool  | operator== (const type_info &lhs, const type_info &rhs) noexcept | 
|   | Compares the contents of two type info objects.  
  | 
|   | 
| constexpr bool  | operator!= (const type_info &lhs, const type_info &rhs) noexcept | 
|   | Compares the contents of two type info objects.  
  | 
|   | 
| constexpr bool  | operator< (const type_info &lhs, const type_info &rhs) noexcept | 
|   | Compares two type info objects.  
  | 
|   | 
| constexpr bool  | operator<= (const type_info &lhs, const type_info &rhs) noexcept | 
|   | Compares two type info objects.  
  | 
|   | 
| constexpr bool  | operator> (const type_info &lhs, const type_info &rhs) noexcept | 
|   | Compares two type info objects.  
  | 
|   | 
| constexpr bool  | operator>= (const type_info &lhs, const type_info &rhs) noexcept | 
|   | Compares two type info objects.  
  | 
|   | 
| template<typename Type>  | 
| const type_info &  | type_id () noexcept | 
|   | Returns the type info object associated to a given type.  
  | 
|   | 
| template<typename Type>  | 
| const type_info &  | type_id (Type &&) noexcept | 
|   | Returns the type info object associated to a given type.     
  | 
|   | 
| template<typename... Type, typename... Other>  | 
| constexpr type_list< Type..., Other... >  | operator+ (type_list< Type... >, type_list< Other... >) | 
|   | Concatenates multiple type lists.  
  | 
|   | 
| template<auto... Value, auto... Other>  | 
| constexpr value_list< Value..., Other... >  | operator+ (value_list< Value... >, value_list< Other... >) | 
|   | Concatenates multiple value lists.  
  | 
|   | 
| template<typename Type, typename Class>  | 
| constexpr auto  | overload (Type Class::*member) noexcept | 
|   | Constant utility to disambiguate overloaded members of a class.  
  | 
|   | 
| template<typename Func>  | 
| constexpr auto  | overload (Func *func) noexcept | 
|   | Constant utility to disambiguate overloaded functions.  
  | 
|   | 
| template<typename... Func>  | 
|   | overloaded (Func...) -> overloaded< Func... > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename Entity>  | 
| constexpr entt_traits< Entity >::entity_type  | to_integral (const Entity value) noexcept | 
|   | Converts an entity to its underlying type.  
  | 
|   | 
| template<typename Entity>  | 
| constexpr entt_traits< Entity >::entity_type  | to_entity (const Entity value) noexcept | 
|   | Returns the entity part once converted to the underlying type.  
  | 
|   | 
| template<typename Entity>  | 
| constexpr entt_traits< Entity >::version_type  | to_version (const Entity value) noexcept | 
|   | Returns the version part once converted to the underlying type.  
  | 
|   | 
| template<typename Entity>  | 
| constexpr bool  | operator== (const Entity lhs, const null_t rhs) noexcept | 
|   | Compares a null object and an identifier of any type.  
  | 
|   | 
| template<typename Entity>  | 
| constexpr bool  | operator!= (const Entity lhs, const null_t rhs) noexcept | 
|   | Compares a null object and an identifier of any type.  
  | 
|   | 
| template<typename Entity>  | 
| constexpr bool  | operator== (const Entity lhs, const tombstone_t rhs) noexcept | 
|   | Compares a tombstone object and an identifier of any type.  
  | 
|   | 
| template<typename Entity>  | 
| constexpr bool  | operator!= (const Entity lhs, const tombstone_t rhs) noexcept | 
|   | Compares a tombstone object and an identifier of any type.  
  | 
|   | 
| template<typename... Args, typename... Other>  | 
| bool  | operator== (const basic_handle< Args... > &lhs, const basic_handle< Other... > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename... Args, typename... Other>  | 
| bool  | operator!= (const basic_handle< Args... > &lhs, const basic_handle< Other... > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename... Args>  | 
| constexpr bool  | operator== (const basic_handle< Args... > &lhs, const null_t rhs) noexcept | 
|   | Compares a handle with the null object.  
  | 
|   | 
| template<typename... Args>  | 
| constexpr bool  | operator== (const null_t lhs, const basic_handle< Args... > &rhs) noexcept | 
|   | Compares a handle with the null object.  
  | 
|   | 
| template<typename... Args>  | 
| constexpr bool  | operator!= (const basic_handle< Args... > &lhs, const null_t rhs) noexcept | 
|   | Compares a handle with the null object.  
  | 
|   | 
| template<typename... Args>  | 
| constexpr bool  | operator!= (const null_t lhs, const basic_handle< Args... > &rhs) noexcept | 
|   | Compares a handle with the null object.  
  | 
|   | 
| template<auto Member, typename Registry = std::decay_t<nth_argument_t<0u, decltype(Member)>>>  | 
| void  | invoke (Registry ®, const typename Registry::entity_type entt) | 
|   | Helper to create a listener that directly invokes a member function.  
  | 
|   | 
| template<typename... Args>  | 
| basic_storage< Args... >::entity_type  | to_entity (const basic_storage< Args... > &storage, const typename basic_storage< Args... >::value_type &instance) | 
|   | Returns the entity associated with a given element.  
  | 
|   | 
| template<typename Registry>  | 
|   | sigh_helper (Registry &) -> sigh_helper< Registry > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename... Type>  | 
|   | basic_view (Type &...storage) -> basic_view< get_t< Type... >, exclude_t<> > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename... Get, typename... Exclude>  | 
|   | basic_view (std::tuple< Get &... >, std::tuple< Exclude &... >={}) -> basic_view< get_t< Get... >, exclude_t< Exclude... > > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename Graph, typename Writer>  | 
| void  | dot (std::ostream &out, const Graph &graph, Writer writer) | 
|   | Outputs a graph in dot format.  
  | 
|   | 
| template<typename Graph>  | 
| void  | dot (std::ostream &out, const Graph &graph) | 
|   | Outputs a graph in dot format.  
  | 
|   | 
| template<typename Type>  | 
| decltype(auto)  | dereference_meta_pointer_like (const Type &value) | 
|   | ADL based lookup function for dereferencing meta pointer-like types.  
  | 
|   | 
| template<typename Type>  | 
| auto  | meta (meta_ctx &ctx) noexcept | 
|   | Utility function to use for reflection.  
  | 
|   | 
| template<typename Type>  | 
| auto  | meta () noexcept | 
|   | Utility function to use for reflection.  
  | 
|   | 
| void  | meta_reset (meta_ctx &ctx, const id_type id) noexcept | 
|   | Resets a type and all its parts.  
  | 
|   | 
| void  | meta_reset (const id_type id) noexcept | 
|   | Resets a type and all its parts.  
  | 
|   | 
| template<typename Type>  | 
| void  | meta_reset (meta_ctx &ctx) noexcept | 
|   | Resets a type and all its parts.  
  | 
|   | 
| template<typename Type>  | 
| void  | meta_reset () noexcept | 
|   | Resets a type and all its parts.  
  | 
|   | 
| void  | meta_reset (meta_ctx &ctx) noexcept | 
|   | Resets all meta types.  
  | 
|   | 
| void  | meta_reset () noexcept | 
|   | Resets all meta types.  
  | 
|   | 
| template<typename Type>  | 
| meta_any  | forward_as_meta (const meta_ctx &ctx, Type &&value) | 
|   | Forwards its argument and avoids copies for lvalue references.  
  | 
|   | 
| template<typename Type>  | 
| meta_any  | forward_as_meta (Type &&value) | 
|   | Forwards its argument and avoids copies for lvalue references.  
  | 
|   | 
| bool  | operator!= (const meta_data &lhs, const meta_data &rhs) noexcept | 
|   | Checks if two objects refer to the same type.  
  | 
|   | 
| bool  | operator!= (const meta_func &lhs, const meta_func &rhs) noexcept | 
|   | Checks if two objects refer to the same type.  
  | 
|   | 
| bool  | operator!= (const meta_type &lhs, const meta_type &rhs) noexcept | 
|   | Checks if two objects refer to the same type.  
  | 
|   | 
| template<typename Type>  | 
| meta_type  | resolve (const meta_ctx &ctx) noexcept | 
|   | Returns the meta type associated with a given type.  
  | 
|   | 
| template<typename Type>  | 
| meta_type  | resolve () noexcept | 
|   | Returns the meta type associated with a given type.  
  | 
|   | 
| meta_range< meta_type, typename decltype(internal::meta_context::value)::const_iterator >  | resolve (const meta_ctx &ctx) noexcept | 
|   | Returns a range to use to visit all meta types.  
  | 
|   | 
| meta_range< meta_type, typename decltype(internal::meta_context::value)::const_iterator >  | resolve () noexcept | 
|   | Returns a range to use to visit all meta types.  
  | 
|   | 
| meta_type  | resolve (const meta_ctx &ctx, const id_type id) noexcept | 
|   | Returns the meta type associated with a given identifier, if any.  
  | 
|   | 
| meta_type  | resolve (const id_type id) noexcept | 
|   | Returns the meta type associated with a given identifier, if any.  
  | 
|   | 
| meta_type  | resolve (const meta_ctx &ctx, const type_info &info) noexcept | 
|   | Returns the meta type associated with a given type info object.  
  | 
|   | 
| meta_type  | resolve (const type_info &info) noexcept | 
|   | Returns the meta type associated with a given type info object.  
  | 
|   | 
| template<typename Policy = as_is_t, typename Type>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_dispatch (const meta_ctx &ctx, Type &&value) | 
|   | Wraps a value depending on the given policy.  
  | 
|   | 
| template<typename Policy = as_is_t, typename Type>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_dispatch (Type &&value) | 
|   | Wraps a value depending on the given policy.  
  | 
|   | 
| template<typename Type, auto Data>  | 
| bool  | meta_setter (meta_handle instance, meta_any value) | 
|   | Sets the value of a given variable.  
  | 
|   | 
| template<typename Type, auto Data, typename Policy = as_is_t>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_getter (meta_handle instance) | 
|   | Gets the value of a given variable.  
  | 
|   | 
| template<typename Type, auto Data, typename Policy = as_is_t>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_getter (const meta_ctx &ctx, meta_handle instance) | 
|   | Gets the value of a given variable.  
  | 
|   | 
| template<typename Type, typename Policy = as_is_t, typename Candidate>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_invoke (meta_handle instance, Candidate &&candidate, meta_any *const args) | 
|   | Tries to invoke an object given a list of erased parameters.  
  | 
|   | 
| template<typename Type, typename Policy = as_is_t, typename Candidate>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_invoke (const meta_ctx &ctx, meta_handle instance, Candidate &&candidate, meta_any *const args) | 
|   | Tries to invoke an object given a list of erased parameters.  
  | 
|   | 
| template<typename Type, auto Candidate, typename Policy = as_is_t>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_invoke (meta_handle instance, meta_any *const args) | 
|   | Tries to invoke a function given a list of erased parameters.  
  | 
|   | 
| template<typename Type, auto Candidate, typename Policy = as_is_t>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_invoke (const meta_ctx &ctx, meta_handle instance, meta_any *const args) | 
|   | Tries to invoke a function given a list of erased parameters.  
  | 
|   | 
| template<typename Type, typename... Args>  | 
| meta_any  | meta_construct (const meta_ctx &ctx, meta_any *const args) | 
|   | Tries to construct an instance given a list of erased parameters.  
  | 
|   | 
| template<typename Type, typename... Args>  | 
| meta_any  | meta_construct (meta_any *const args) | 
|   | Tries to construct an instance given a list of erased parameters.  
  | 
|   | 
| template<typename Type, typename Policy = as_is_t, typename Candidate>  | 
| meta_any  | meta_construct (const meta_ctx &ctx, Candidate &&candidate, meta_any *const args) | 
|   | Tries to construct an instance given a list of erased parameters.  
  | 
|   | 
| template<typename Type, typename Policy = as_is_t, typename Candidate>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_construct (Candidate &&candidate, meta_any *const args) | 
|   | Tries to construct an instance given a list of erased parameters.  
  | 
|   | 
| template<typename Type, auto Candidate, typename Policy = as_is_t>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_construct (const meta_ctx &ctx, meta_any *const args) | 
|   | Tries to construct an instance given a list of erased parameters.  
  | 
|   | 
| template<typename Type, auto Candidate, typename Policy = as_is_t>  | 
| std::enable_if_t< is_meta_policy_v< Policy >, meta_any >  | meta_construct (meta_any *const args) | 
|   | Tries to construct an instance given a list of erased parameters.  
  | 
|   | 
| template<std::size_t Member, typename Poly, typename... Args>  | 
| decltype(auto)  | poly_call (Poly &&self, Args &&...args) | 
|   | Shortcut for calling poly_base<Type>::invoke.  
  | 
|   | 
| template<typename Lhs, typename Rhs>  | 
| bool  | operator== (const resource< Lhs > &lhs, const resource< Rhs > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename Lhs, typename Rhs>  | 
| bool  | operator!= (const resource< Lhs > &lhs, const resource< Rhs > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename Lhs, typename Rhs>  | 
| bool  | operator< (const resource< Lhs > &lhs, const resource< Rhs > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename Lhs, typename Rhs>  | 
| bool  | operator> (const resource< Lhs > &lhs, const resource< Rhs > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename Lhs, typename Rhs>  | 
| bool  | operator<= (const resource< Lhs > &lhs, const resource< Rhs > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename Lhs, typename Rhs>  | 
| bool  | operator>= (const resource< Lhs > &lhs, const resource< Rhs > &rhs) noexcept | 
|   | Compares two handles.  
  | 
|   | 
| template<typename Ret, typename... Args>  | 
| bool  | operator!= (const delegate< Ret(Args...)> &lhs, const delegate< Ret(Args...)> &rhs) noexcept | 
|   | Compares the contents of two delegates.  
  | 
|   | 
| template<auto Candidate>  | 
|   | delegate (connect_arg_t< Candidate >) -> delegate< std::remove_pointer_t< internal::function_pointer_t< decltype(Candidate)> > > | 
|   | Deduction guide.  
  | 
|   | 
| template<auto Candidate, typename Type>  | 
|   | delegate (connect_arg_t< Candidate >, Type &&) -> delegate< std::remove_pointer_t< internal::function_pointer_t< decltype(Candidate), Type > > > | 
|   | Deduction guide.  
  | 
|   | 
| template<typename Ret, typename... Args>  | 
|   | delegate (Ret(*)(const void *, Args...), const void *=nullptr) -> delegate< Ret(Args...)> | 
|   | Deduction guide.  
  | 
|   | 
| template<typename Ret, typename... Args, typename Allocator>  | 
|   | sink (sigh< Ret(Args...), Allocator > &) -> sink< sigh< Ret(Args...), Allocator > > | 
|   | Deduction guide.  
  | 
|   |