Mirror reflection library 0.5.13
|
Contains the meta-programming utilities. More...
Classes | |
struct | and_ |
Returns logical AND of the BooleanConstants type passed as arguments. More... | |
struct | append |
Returns a range having the passed item appended. More... | |
struct | apply_on_seq_pack_c |
Calls a nested meta-function with a pack <0,1,2, ... N-1> of ints. More... | |
struct | apply_on_seq_pack |
Calls a nested meta-function with a pack <0,1,2, ... N-1> of ints. More... | |
struct | as_a |
Tries to evaluate the MetaObjectExpression as a specific Concept type. More... | |
struct | before |
Returns a sub-range ending before the first occurence of the searched type. More... | |
struct | concat |
Returns a range which is concatenation of other ranges. More... | |
struct | contains |
Returns true if the range contains the searched type. More... | |
struct | find |
Returns a sub-range starting with the first occurence of the searched type. More... | |
struct | fold |
Returns the result of successive application of ForwardOp on the range. More... | |
struct | identity |
Meta-function returning T unchanged. More... | |
struct | if_ |
Returns the IfTrue or the IfFalse type based on the passed Boolean type. More... | |
struct | if_c |
Returns the IfTrue or the IfFalse type based on the passed boolean value. More... | |
struct | is_a |
Returns a boolean constant based on whether the MetaObject is the Concept. More... | |
struct | is_not_a |
Returns a boolean constant based on whether the MetaObject isn't the Concept. More... | |
struct | is_one_of |
Returns a boolean constant based on if the MetaObject is one of the Concepts. More... | |
struct | lacks |
Returns true if the range lacks the searched type. More... | |
struct | arg |
Meta-function class returning the Number -th of its arguments. More... | |
struct | apply |
Invokes a meta-function-class or placeholder lambda expression. More... | |
struct | use_arg |
Returns the N-th Param or the Expr expression. More... | |
struct | protect |
Protects the PlaceholderExpression from being expanded. More... | |
struct | make_int_seq |
Meta-function returning a range of integral constants from 0 to N-1. More... | |
struct | not_ |
Negates the BooleanConstant type passed as argument. More... | |
struct | only_if |
Returns a sub-range containing only elements satisfying a predicate. More... | |
struct | optional |
A single value container. More... | |
struct | nil |
Nil intrinsic meta-function for optionals. More... | |
struct | get |
Returns the element of the optional passed as argument. More... | |
struct | or_ |
Returns logical OR of the BooleanConstants type passed as arguments. More... | |
struct | prepend |
Returns a range having the passed item prepended. More... | |
struct | range |
Range of types supporting forward traversal. More... | |
struct | empty |
Empty intrinsic meta-function for ranges. More... | |
struct | size |
Size intrinsic meta-function for ranges. More... | |
struct | front |
Returns the front element of the range passed as argument. More... | |
struct | back |
Returns the last element of the range passed as argument. More... | |
struct | at_c |
Returns the element of the range passed as argument at the given Index. More... | |
struct | at |
Returns the element of the range passed as argument at the given Index. More... | |
struct | step_front |
Range front traversal meta-function. More... | |
struct | push_back |
Meta-function appending the Item to the Range. More... | |
struct | is_range |
This trait meta-function can be used to check if the passed type is a range. More... | |
struct | is_optional |
This trait meta-function can be used to check if the passed type is optional. More... | |
struct | transform |
Returns a range containing elements transformed by a unary function. More... | |
struct | unique |
Returns a range with the duplicities removed. More... | |
Typedefs | |
typedef optional< nil_t > | nil_optional |
Convenience typedef for NIL optional. | |
typedef range | empty_range |
Convenience typedef for empty range. | |
Functions | |
template<typename Range , typename ResultType , typename Functor , typename ValueType > | |
ResultType | accumulate (Functor func, ValueType initial) |
Call the unary functor on all elements of the range. | |
template<typename Range , typename ResultType , typename Functor , typename ValueType > | |
ResultType | accumulate_ii (Functor func, ValueType initial) |
Call the unary functor on all elements of the range with iteration info. | |
template<typename Range , typename Functor > | |
void | for_each (Functor func) |
Call the unary functor on all elements of the range. | |
template<typename Range , typename Functor > | |
void | for_each_ii (Functor func) |
Call the unary functor on all elements of the range with iteration info. |
Contains the meta-programming utilities.