|
Boost : |
From: Tobias Schwinger (tschwinger_at_[hidden])
Date: 2005-06-22 07:31:40
Synopsis:
---------
namespace boost
{
namespace function_type
{
// Result: bool, Concept: MPL-Integral Constant
template<typename T, typename QueryTag = undecorated>
struct is_function_;
// Result: bool, Concept: MPL-Integral Constant
template<typename T> struct is_function_pointer;
template<typename T> struct is_function_reference;
template<typename T> struct is_member_function_pointer_;
// Concept: Tag
template<typename T> struct kind_of<T>;
// Result: bool, Concept: MPL-Integral Constant
template<typename Tag1_or_Signature, typename QueryTag> struct represents;
// Result: bool, Concept: MPL-Integral Constant
template<typename T> struct arity<T>;
// Result: type, Concept: Metafunction
template<typename T, typename Index> struct parameter;
template<typename T, std::size_t Index> struct parameter_c;
// Result: type, Concept: Metafunction
template<typename T> struct class_of;
// Result: type, Concept: Metafunction
template<typename T> struct result;
// Result: type, Concept: Metafunction
template<typename T, typename Index> struct effective_parameter;
template<typename T, std::size_t Index> struct effective_parameter_c;
// Concept: MPL Random-Access Sequence
template<typename T> struct parameters;
// Concept: MPL Random-Access Sequence
template<typename T, typename ClassT = add_reference<_> >
struct effective_parameters;
// Concept: MPL Extensible/Random-Access Sequence
template<typename T, typename ClassT = add_reference<_> >
struct signature;
// Result: type, Concept: Metafunction
template<typename T_or_Signature_or_Seq
,typename Tag = undecorated, typename ClassT = add_reference<_> >
struct function_type;
// Concept: Tag
template<typename Tag1_or_Signature, typename Tag2 = ...
struct tag;
// Aspect tags
// - decoration aspect
typedef /.../ unspecified_decoration; // (*) (default)
typedef /.../ unbound; // (*) (matches the next three)
typedef /.../ undecorated;
typedef /.../ pointer;
typedef /.../ reference;
typedef /.../ member_pointer;
// (*) abstract - same as 'undecorated' when used for synthesis
// - variadic aspect
typedef /.../ unspecified_variadic; // (*) (default)
typedef /.../ non_variadic;
typedef /.../ variadic;
// (*) abstract - same as 'non_variadic' when used for synthesis
// - const aspect
typedef /.../ unspecified_constness; // (*) (default)
typedef /.../ const_;
typedef /.../ non_const;
// (*) abstract - same qualfication as the class type when used for synthesis
// - volatile aspect
typedef /.../ unspecified_volatility; // (*) (default)
typedef /.../ volatile_;
typedef /.../ non_volatile;
// (*) abstract - same qualfication as the class type when used for synthesis
// Calling convention aspect
typedef /.../ unspecified_call; // (*) (default)
typedef /.../ cdecl, stdcall, etc. (depends on configuration)
// (*) abstract - uses the default calling convention when used for synthesis
}
}
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk