Mirror reflection library - Lagoon run-time layer 0.5.13
|
The Lagoon run-time layer built on Mirror is defined in this namespace. More...
Classes | |
struct | meta_meta_object |
The interface for reflecting Lagoon's meta-objects. More... | |
struct | meta_object |
The base interface for all Lagoon's meta-objects. More... | |
struct | meta_named_object |
struct | meta_scoped_object |
struct | meta_named_scoped_object |
struct | meta_scope |
struct | meta_unspecified_scope |
struct | meta_namespace |
struct | meta_global_scope |
struct | meta_type |
struct | meta_type_template |
struct | meta_typedef |
Interface for reflecting typedefined type. More... | |
struct | meta_templated_type |
struct | meta_inheritance |
struct | meta_class_member |
struct | meta_variable |
struct | meta_free_variable |
struct | meta_plain_free_variable |
struct | meta_member_variable |
struct | meta_parameter |
struct | meta_class |
struct | meta_templated_class |
struct | meta_enum |
struct | meta_overloaded_functions |
struct | meta_function |
struct | meta_constructor |
struct | meta_member_function |
struct | meta_conversion_operator |
struct | meta_locator |
struct | polymorph_factory_manager |
Interface for a polymorphic factory manager. More... | |
struct | polymorph_factory_composite |
Interface for a polymorphic factory composite or node. More... | |
struct | polymorph_factory_arrayer |
Interface for a polymorphic factory element arrayer. More... | |
struct | polymorph_factory_manufacturer |
Interface for a polymorphic factory manufacturer or leaf. More... | |
struct | polymorph_factory_suppliers |
Interface for polymorphic factory suppliers. More... | |
struct | polymorph_factory_enumerator |
Interface for a polymorphic factory enumerator leaf node. More... | |
struct | polymorph_factory_builder |
Interface for a polymorphic factory builder. More... | |
struct | polymorph_factory |
Abstract interface for polymorphic factories. More... | |
struct | specifier |
Common base interface for various specifiers. More... | |
class | shared |
The smart pointer-like wrapper for MetaObject(s) More... | |
class | range_base |
The base template for the implementation of ranges. More... | |
class | range |
The type of a range of managed pointers to the MetaObject. More... | |
struct | range_meta_object |
Trait class returning the meta-object type of a range. More... | |
Typedefs | |
typedef mirror::raw_ptr | raw_ptr |
typedef mirror::unique_raw_ptr | unique_raw_ptr |
typedef mirror::shared_raw_ptr | shared_raw_ptr |
typedef sql_fact_builder_templ < sql_fact_def_traits < libpq_fact_data >> | libpq_factory_builder |
typedef sdn_fact_builder_templ < mirror::sdn_fact_mijson_traits > | mijson_factory_builder |
typedef sdn_fact_builder_templ < mirror::sdn_fact_rapidxml_traits > | rapidxml_factory_builder |
typedef script_fact_builder_templ < script_fact_def_traits < std::string::const_iterator >> | script_factory_builder |
typedef script_fact_builder_templ < script_fact_def_traits < const char * >> | c_str_script_factory_builder |
typedef sql_fact_builder_templ < sql_fact_def_traits < soci_fact_data >> | soci_factory_builder |
typedef sdn_fact_builder_templ < mirror::sdn_fact_wxxml_traits > | wxxml_factory_builder |
typedef concrete_polymorph_factory_builder < my_factory_builder_base, my_factory_builder_unit > | my_factory_builder |
Functions | |
template<typename Type > | |
shared< meta_type > | reflected_type (void) |
Function for reflecting types. | |
template<typename Class > | |
shared< meta_class > | reflected_class (void) |
Function for reflecting classes. | |
shared< meta_namespace > | reflected_global_scope (void) |
Function reflecting the global scope. | |
template<typename ValueType , class... Ranges> | |
UnspecifiedRange< ValueType > | chain (const Ranges &...ranges) |
Chains the ranges into a single range with a common ValueType. | |
template<typename Interface , class... Ranges> | |
UnspecifiedRange< shared < Interface > > | chain_mo (const Ranges &...ranges) |
Chains the ranges into a single range with a common Interface. | |
template<class Range , typename Predicate > | |
bool | contains (Range range, Predicate predicate) |
Searches a range for an element satisfying a predicate. | |
template<class Interface , class Range > | |
UnspecifiedRange< Interface > | extract (const Range &metaobjects) |
Extracts only meta-objects with a particular interface. | |
template<class Range , typename Predicate > | |
Range | find_if (Range range, Predicate predicate) |
Searches a range for an element satisfying a predicate. | |
UnspecifiedRange< shared < meta_named_scoped_object > > | flatten (const shared< meta_scope > &scope) |
Get a range of all members of a scope including nested members. | |
UnspecifiedRange< shared < meta_named_scoped_object > > | flatten_in_order (const shared< meta_scope > &scope) |
Get a range of all members of a scope including nested members. | |
template<typename State , class Range , typename BinaryOp > | |
State | fold (Range range, State state, BinaryOp op) |
Accumulating the results of calling a binary functor on the elements. | |
template<typename State , class Range , typename BinaryOp > | |
State & | fold_ref (Range range, State &state_ref, BinaryOp op) |
Accumulating the results of calling a binary functor on the elements. | |
template<typename State , class Range , typename InitialOp , typename DefaultOp , typename FinalOp > | |
State & | fold_ref (Range range, State &state_ref, InitialOp initial, DefaultOp op, FinalOp final) |
Accumulating the results of calling a binary functor on the elements. | |
template<class Range , typename Functor > | |
Functor | for_each (Range range, Functor func) |
Executes an unary functor on each element of a range. | |
template<class Range > | |
UnspecifiedRange | limit (Range range, size_t count) |
Limits the range to contain maximum of n elements. | |
template<class Range > | |
UnspecifiedRange | link (const std::initializer_list< Range > &ranges) |
Links the homogenous ranges into a single range. | |
template<class Range > | |
Range | offset (Range range, size_t amount) |
Offsets the beginning of the range by N elements. | |
template<class Range , typename Predicate > | |
UnspecifiedRange | only_if (Range range, Predicate predicate) |
Adapts the range to contain only elements satisfying a predicate. | |
template<class Range , typename SortProc > | |
UnspecifiedRange | sort (Range range, SortProc sort_proc) |
Sorts the elements in the range by using a strict weak ordering proc. | |
template<class Range > | |
StdRange | make_std_range (Range range) |
Adapts a Lagoon's range to have a begin() and end() functions. | |
template<class Range , typename Transform > | |
UnspecifiedRange | transform (Range range, Transform transf) |
Transforms the elements in the range by a functor. | |
template<class Range , typename Predicate > | |
UnspecifiedRange | until (Range range, Predicate predicate) |
Adapts the range to end when a predicate is satisfied. | |
template<class Range > | |
home chochlik devel mirror lib src lagoon example class_layout_01 cpp void | print_range_info (Range r) |
template<class MetaClass > | |
void | print_info (MetaClass meta_X) |
template<class Range > | |
void | print_info (Range r) |
The Lagoon run-time layer built on Mirror is defined in this namespace.
The Lagoon is a run-time layer which is built on top of the compile-time meta-objects provided by Mirror.