tinympl  0.2
mini MPL library for C++11
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
[detail level 123]
 Ntinympl
 Nvariadic
 CaccumulateAlias for left_fold
 Call_ofDetermines whether every element in the sequence satisfies the given predicate
 Cany_ofDetermines whether any of the elements in the sequence satisfy the given predicate
 CapplyReturn the result type of the metafunction class F called with arguments Args.,,
 Cas_sequenceProvide a customization points by allowing the user to specialize this class
 Cas_sequence< basic_string< T, ts...> >Customization point to allow basic_string to work as a tinympl sequence
 Cas_sequence< Seq< Args...> >Customization point to allow any variadic template type to work with tinympl
 Cas_sequence< vector< Args...> >Customization point to allow vector to work as a tinympl sequence
 CatGet the i-th element of a sequence
 Cbasic_stringA vector of values of type T
 CbindProduce a template type by binding the given arguments on the passed template template
 CcopyCopy the elements from the input sequence to the output sequence
 Ccopy_ifCopy the elements of a given input sequence which satisfy a given predicate - the ordering is preserved
 Ccopy_nCopy the first N elements from the input sequence
 CcountCounts the number of elements in a sequence equal to a given one
 Ccount_ifCounts the number of elements which satisfy a given predicate
 CdividesComputes A/B where A and B are compile time constants
 Cequal_toDetermines whether the types A and B are equal
 CeraseRemove a range in a given sequence
 Cfill_nFills an output sequence with N equal elements
 CfindCompute the index of the first element in the sequence which is equal to the given type T
 Cfind_if
 Cgenerate_nGenerate N elements using a given generator metafunction
 CgreaterDetermines whether A is greater than B
 Cgreater_equalDetermines whether A is greater than or equal to B
 CidentityReturns the argument passed
 Cif_Returns A if C::value is true, otherwise B
 CinheritConstruct a type inherited from the arguments
 CinsertInsert a subsequence into a given sequence at a given position
 Cis_bind_expressionDetermine whether a type is a bind expression
 Cis_pairDetermine whether a type is an std::pair
 Cis_placeholderDetermine whether a type is a placeholder. is_placeholder<T>::value is 0 if T is not a placeholder, otherwise is the index of the placeholder
 Cis_sequenceMetafunction to determine if a given type is a sequence
 Cis_uniqueDetermines whether the input sequence contains only unique elements
 CjoinMerge two sequences
 Cleft_foldCollapses a sequence starting from left using a functor
 ClessDetermines whether A is less than B
 Cless_equalDetermines whether A is less than or equal to B
 Clexicographical_compareCompares two sequences using the given comparator
 Clogical_andComputes the logical and of all its arguments
 Clogical_notNegate the argument
 Clogical_orComputes the logical or of all its arguments
 Cmake_basic_stringConstruct a basic_string from a constexpr pointer to a null-terminated string
 CmapA compile time map from a type to another This class represents a compile time mapping between types. The mapping is specified using std::pair, that is every parameter of map must be an std::pair<KeyType,ValueType>
 Cmax_elementCompute the index of the largest element in a sequence
 Cmin_elementCompute the index of the smallest element in a sequence
 CminusComputes A-B where A and B are compile time type constants
 CmodulusComputes A%B where A and B are compile time constants
 CmultipliesMultiplies its arguments
 CnegateReturns the opposite of the compile time constant A
 Cnone_ofDetermines whether none of the elements in the sequence satisfy the given predicate
 Cnot_equal_toDetermines whether the types A and B are not equal
 CplusSums its arguments
 CremoveRemove all the elements equal to T from the input sequence
 Cremove_ifRemove the elements from the input sequence if they satisfy a given predicate
 CreplaceReplace all the elements in the input sequence equal to Old with New*
 Creplace_ifReplace all the elements in the input sequence which satisfy a given predicate with a given type T
 CreverseReverse the input sequence
 Cright_foldCollapses a sequence starting from right using a functor
 CsequenceThe main sequence type
 Cset_differenceComputes the difference between two sets
 Cset_intersectionComputes the intersection between two sets
 Cset_unionComputes the union of two sets
 CsizeGet the number of elements of a sequence
 Csizeof_Returns an std::integral_constant<std::size_t,V> where V is the compile time size of the input type
 CsortSort the input sequence according to a given comparison function
 CtransformTransform an input sequence using a transform function
 Ctransform2Transform two input sequences using a function
 Ctransform_manyTransform many input sequences using a function
 CtransposeTranspose a sequence of sequences
 CuniqueProduces a sequence of unique elements from the input sequence, preserving the ordering
 Cunordered_equalDetermines whether it is possible to reorder the sequence A to match exactly the sequence B
 Cvalue_mapA compile time map from a compile-time value to another This class represents a compile time mapping between values. The first two parameters are respectively the type of the key and of the values. The mapping is specified using std::pair, that is every parameter of map must be an std::pair< std::integral_constant<KeyType,key>,std::integral_constant<ValueType,value> >
 CvectorA compile time vector of types Vector is the simplest tinympl sequence type. It provides standard modifiers and random access to its elements
 CzipConstruct a single sequence by zipping together multiple sequences