Quick Links:

bal | bbl | bdl | bsl

Classes | Typedefs | Functions

bslmf Namespace Reference
[Component bdlbb_blobComponent bslh_siphashalgorithmComponent bslmf_addconstComponent bslmf_addpointerComponent bslmf_addreferenceComponent bslmf_addvolatileComponent bslmf_arraytopointerComponent bslmf_assertComponent bslmf_detectnestedtraitComponent bslmf_forwardingreftypeComponent bslmf_forwardingtypeComponent bslmf_functionpointertraitsComponent bslmf_haspointersemanticsComponent bslmf_ifComponent bslmf_integralconstantComponent bslmf_invokeresultComponent bslmf_isaccessiblebaseofComponent bslmf_isbitwiseequalitycomparableComponent bslmf_isbitwisemoveableComponent bslmf_isclassComponent bslmf_isconvertibletoanyComponent bslmf_isfundamentalComponent bslmf_ispairComponent bslmf_ispolymorphicComponent bslmf_isreferencewrapperComponent bslmf_istransparentpredicateComponent bslmf_matchanytypeComponent bslmf_matcharithmetictypeComponent bslmf_memberfunctionpointertraitsComponent bslmf_memberpointertraitsComponent bslmf_metaintComponent bslmf_movablerefComponent bslmf_nestedtraitdeclarationComponent bslmf_nilComponent bslmf_nthparameterComponent bslmf_removecvqComponent bslmf_removepointerComponent bslmf_resulttypeComponent bslmf_switchComponent bslmf_tagComponent bslmf_typelistComponent bslmf_usesallocatorComponent bslmf_usesallocatorargtComponent bslmf_utilComponent bslmf_voidtypeComponent bslstl_bidirectionalnodepool]

Classes

struct  IsBitwiseMoveable< BloombergLP::bdlbb::BlobBuffer >
struct  IsBitwiseMoveable< BloombergLP::bdlbb::Blob >
struct  IsBitwiseMoveable< bslh::SipHashAlgorithm >
struct  AddConst_Imp
struct  AddConst_Imp< t_TYPE, false >
struct  AddPointer_Compute
struct  AddPointer_Impl
struct  AddPointer_Impl< t_TYPE, 1u >
struct  AddReference
struct  AddVolatile_Imp
struct  AddVolatile_Imp< t_TYPE, false >
struct  ArrayToPointer
struct  ArrayToPointer< t_TYPE & >
struct  ArrayToConstPointer
struct  ArrayToConstPointer< t_TYPE & >
struct  ArrayToPointer_Imp
struct  ArrayToPointer_Imp< t_TYPE[t_NUM_ELEMENTS], t_UNUSED >
struct  ArrayToPointer_Imp< t_TYPE[], t_UNUSED >
struct  AssertTest
struct  DetectNestedTrait_Imp
struct  DetectNestedTrait_Imp< t_TYPE, t_TRAIT, BSLMF_VOIDTYPE(int t_TYPE::*)>
struct  DetectNestedTrait
struct  DetectNestedTrait< const t_TYPE, t_TRAIT >
struct  DetectNestedTrait< volatile t_TYPE, t_TRAIT >
struct  DetectNestedTrait< const volatile t_TYPE, t_TRAIT >
struct  EnableIf
struct  EnableIf< false, t_TYPE >
struct  ForwardingRefType_Category
class  ForwardingRefType_Dispatch
class  ForwardingRefType
class  ForwardingRefTypeUtil
struct  ForwardingType_Category
class  ForwardingType_Dispatch
class  ForwardingType
class  ForwardingTypeUtil
struct  ConstForwardingType
struct  FunctionPointerCPlusPlusLinkage
struct  FunctionPointerCLinkage
struct  FunctionPointerTraits
struct  IsFunctionPointer
struct  FunctionPointerTraits< t_BSLMF_RETURN(*)(t_ARGS...)>
struct  FunctionPointerTraits< t_BSLMF_RETURN(*)(t_ARGS...,...)>
struct  FunctionPointerTraits< t_PROTOTYPE *const >
struct  FunctionPointerTraits< t_PROTOTYPE *volatile >
struct  FunctionPointerTraits< t_PROTOTYPE *const volatile >
struct  HasPointerSemantics
struct  If
struct  InvokeResultDeductionFailed
struct  InvokeResult_BaseCalcUtil
struct  InvokeResult_VoidChecker
struct  InvokeResult_Index
struct  InvokeResult_Type< InvokeResult_Index::e_VOID >
struct  InvokeResult_Type< InvokeResult_Index::e_BOOL >
struct  InvokeResult_Type< InvokeResult_Index::e_CHAR >
struct  InvokeResult_Type< InvokeResult_Index::e_SCHAR >
struct  InvokeResult_Type< InvokeResult_Index::e_UCHAR >
struct  InvokeResult_Type< InvokeResult_Index::e_WCHAR_T >
struct  InvokeResult_Type< InvokeResult_Index::e_SHORT >
struct  InvokeResult_Type< InvokeResult_Index::e_USHORT >
struct  InvokeResult_Type< InvokeResult_Index::e_INT >
struct  InvokeResult_Type< InvokeResult_Index::e_UNSIGNED >
struct  InvokeResult_Type< InvokeResult_Index::e_LONG >
struct  InvokeResult_Type< InvokeResult_Index::e_ULONG >
struct  InvokeResult_Type< InvokeResult_Index::e_LONG_LONG >
struct  InvokeResult_Type< InvokeResult_Index::e_ULONG_LONG >
struct  InvokeResult_Type< InvokeResult_Index::e_FLOAT >
struct  InvokeResult_Type< InvokeResult_Index::e_DOUBLE >
struct  InvokeResult_Type< InvokeResult_Index::e_LONG_DOUBLE >
struct  InvokeResult_Type< InvokeResult_Index::e_VOIDPTR >
struct  InvokeResult_Type< InvokeResult_Index::e_CONST_VOIDPTR >
struct  InvokeResult_Type< InvokeResult_Index::e_VOLATILE_VOIDPTR >
struct  InvokeResult_Type< InvokeResult_Index::e_CONST_VOLATILE_VOIDPTR >
struct  InvokeResult_Type< InvokeResult_Index::e_NULLPTR_T >
struct  InvokeResult_Type< InvokeResult_Index::e_POINTER >
struct  InvokeResult_Type< InvokeResult_Index::e_OTHER >
struct  InvokeResult_ImpUtils
struct  InvokeResult_AddCVRef
struct  InvokeResult_FunctorDeduction
struct  InvokeResult_FunctorDeduction< true, t_FN, t_ARGTYPES...>
struct  InvokeResult_MemPtrArgQualifiers
struct  InvokeResult_MemPtrArgQualifiers< t_MEMOF_CLASS, t_ARG_TYPE, false >
struct  InvokeResult_Imp
struct  InvokeResult_Imp< true, false, false, t_FN, t_ARGTYPES...>
struct  InvokeResult_Imp< false, true, false, t_FN, t_ARGTYPES...>
struct  InvokeResult_Imp< false, false, true, t_FN, t_ARGTYPES...>
struct  InvokeResult_FunctorImp
struct  InvokeResult_FuncPtrImp
struct  InvokeResult_MemFuncPtrImp< t_FN, t_ARGTYPES...>
struct  InvokeResult_MemObjPtrImp
struct  InvokeResult_MemObjPtrImp< t_RET t_CLASS::*, t_ARGTYPE >
class  IsAccessibleBaseOf
struct  IsArray
struct  IsBitwiseEqualityComparable_Imp
struct  IsBitwiseEqualityComparable_Imp< t_TYPE, BSLMF_VOIDTYPE(int t_TYPE::*)>
struct  IsBitwiseEqualityComparable
struct  IsBitwiseEqualityComparable< const t_TYPE >
struct  IsBitwiseEqualityComparable< volatile t_TYPE >
struct  IsBitwiseEqualityComparable< const volatile t_TYPE >
struct  IsBitwiseEqualityComparable< t_TYPE[t_LEN]>
struct  IsBitwiseEqualityComparable< const t_TYPE[t_LEN]>
struct  IsBitwiseEqualityComparable< volatile t_TYPE[t_LEN]>
struct  IsBitwiseEqualityComparable< const volatile t_TYPE[t_LEN]>
struct  IsBitwiseEqualityComparable< t_TYPE[]>
struct  IsBitwiseEqualityComparable< const t_TYPE[]>
struct  IsBitwiseEqualityComparable< volatile t_TYPE[]>
struct  IsBitwiseEqualityComparable< const volatile t_TYPE[]>
struct  IsBitwiseEqualityComparable< void >
struct  IsBitwiseEqualityComparable< float >
struct  IsBitwiseEqualityComparable< double >
struct  IsBitwiseEqualityComparable< long double >
struct  IsBitwiseMoveable_Imp
struct  IsBitwiseMoveable_Imp< t_TYPE, false >
struct  IsBitwiseMoveable
struct  IsBitwiseMoveable< void >
struct  IsBitwiseMoveable< const t_TYPE >
struct  IsBitwiseMoveable< volatile t_TYPE >
struct  IsBitwiseMoveable< const volatile t_TYPE >
struct  IsBitwiseMoveable< t_TYPE[t_LEN]>
struct  IsBitwiseMoveable< const t_TYPE[t_LEN]>
struct  IsBitwiseMoveable< volatile t_TYPE[t_LEN]>
struct  IsBitwiseMoveable< const volatile t_TYPE[t_LEN]>
struct  IsClass_Imp
struct  IsClass_Imp< t_TYPE, BSLMF_VOIDTYPE(int t_TYPE::*)>
struct  IsClass
struct  IsConvertible_CheckComplete
struct  IsConvertible_CheckComplete< t_TYPE &, false >
struct  IsConvertible_CheckComplete< t_TYPE, true >
struct  IsConvertible_CheckComplete< t_TYPE[], false >
struct  IsConvertible_Match
struct  IsConvertible_Imp
struct  IsConvertible_LazyTrait
struct  IsConvertible_IsNeverConvertible
struct  IsConvertible_FilterNeverConvertible
struct  IsConvertible_Conditional
struct  IsConvertible
class  IsConvertibleToAny_Imp
struct  IsConvertibleToAny
struct  IsCopyConstructible_Imp
struct  IsCopyConstructible_Imp< void >
struct  IsCopyConstructible_Imp< volatile void >
struct  IsCopyConstructible_Imp< t_TYPE *volatile >
struct  IsEnum
struct  IsEnum_AnyArithmeticType
struct  IsEnum_TestConversions
struct  IsFundamental_Imp
struct  IsFundamental_Imp< bool >
struct  IsFundamental_Imp< char >
struct  IsFundamental_Imp< signed char >
struct  IsFundamental_Imp< unsigned char >
struct  IsFundamental_Imp< wchar_t >
struct  IsFundamental_Imp< short >
struct  IsFundamental_Imp< unsigned short >
struct  IsFundamental_Imp< int >
struct  IsFundamental_Imp< unsigned int >
struct  IsFundamental_Imp< long >
struct  IsFundamental_Imp< unsigned long >
struct  IsFundamental_Imp< long long >
struct  IsFundamental_Imp< unsigned long long >
struct  IsFundamental_Imp< float >
struct  IsFundamental_Imp< double >
struct  IsFundamental_Imp< long double >
struct  IsFundamental_Imp< void >
struct  IsFundamental
struct  IsFundamental< t_TYPE & >
struct  IsNothrowMoveConstructible_Impl
struct  IsNothrowMoveConstructible_Impl< t_TYPE, BSLMF_VOIDTYPE(intt_TYPE::*)>
struct  IsNothrowMoveConstructible_Impl< const t_TYPE, BSLMF_VOIDTYPE(intt_TYPE::*)>
struct  IsNothrowMoveConstructible_Impl< volatile t_TYPE, BSLMF_VOIDTYPE(intt_TYPE::*)>
struct  IsNothrowMoveConstructible_Impl< const volatile t_TYPE, BSLMF_VOIDTYPE(intt_TYPE::*)>
struct  IsNothrowMoveConstructible_Impl< t_TYPE & >
struct  IsNothrowMoveConstructible_Impl< t_TYPE[]>
struct  IsNothrowMoveConstructible_Impl< const t_TYPE[]>
struct  IsNothrowMoveConstructible_Impl< volatile t_TYPE[]>
struct  IsNothrowMoveConstructible_Impl< const volatile t_TYPE[]>
struct  IsNothrowMoveConstructible_Impl< t_TYPE[t_LEN]>
struct  IsNothrowMoveConstructible_Impl< const t_TYPE[t_LEN]>
struct  IsNothrowMoveConstructible_Impl< volatile t_TYPE[t_LEN]>
struct  IsNothrowMoveConstructible_Impl< const volatile t_TYPE[t_LEN]>
struct  IsPair
struct  IsPointer
struct  IsPolymorphic_Imp
struct  IsPolymorphic_Imp< t_TYPE, true >
struct  IsPolymorphic
struct  IsReferenceWrapper
struct  IsSame
struct  IsTransparentPredicate
struct  IsTransparentPredicate< t_COMPARATOR, t_KEY, BSLMF_VOIDTYPE(typename t_COMPARATOR::is_transparent)>
struct  IsTriviallyCopyable_DetectTrait
struct  IsTriviallyCopyable_DetectTrait< t_TYPE, true >
struct  IsTriviallyCopyable_Intrinsic
struct  IsTriviallyCopyable_Intrinsic< void >
struct  IsTriviallyDefaultConstructible_Imp
struct  IsTriviallyDefaultConstructible_Imp< void >
struct  IsVoid
struct  MatchAnyType
struct  TypeRep
struct  TypeRep< t_TYPE & >
class  MatchArithmeticType
struct  MemberFunctionPointerTraits
struct  IsMemberFunctionPointer
class  MemberFunctionPointerTraits_ClassType
struct  MemberFunctionPointerTraits_Imp
struct  MemberFunctionPointerTraits_Imp< t_PROTOTYPE, t_BSLMF_RETURN(t_TYPE::*)(t_ARGS...)>
struct  MemberFunctionPointerTraits_Imp< t_PROTOTYPE, t_BSLMF_RETURN(t_TYPE::*)(t_ARGS...) const >
struct  MemberFunctionPointerTraits_Imp< t_PROTOTYPE, t_BSLMF_RETURN(t_TYPE::*)(t_ARGS...) volatile >
struct  MemberFunctionPointerTraits_Imp< t_PROTOTYPE, t_BSLMF_RETURN(t_TYPE::*)(t_ARGS...) const volatile >
struct  MemberPointerTraits
struct  MemberPointerTraits_Imp
struct  MemberPointerTraits_Imp< t_MEMBER_TYPE t_CLASS_TYPE::* >
struct  MetaInt
struct  MetaInt< 0 >
struct  MetaInt< 1 >
class  MovableRef
struct  MovableRefUtil
class  NestedTraitDeclaration
struct  Nil
struct  IsNil
struct  IsNil< Nil >
struct  NthParameter
struct  NthParameter< 0, t_FIRST_PARAM, t_PARAMS...>
struct  NthParameter< 0, NthParameter_Sentinel >
struct  RemoveCvq
struct  RemovePointer_Imp
struct  RemovePointer_Imp< t_TYPE * >
struct  RemovePointer_Imp< t_TYPE *const >
struct  RemovePointer_Imp< t_TYPE *volatile >
struct  RemovePointer_Imp< t_TYPE *const volatile >
struct  RemoveReference
struct  ResultType
struct  ResultType< t_FUNC, t_FALLBACK, BSLMF_VOIDTYPE(typename t_FUNC::result_type)>
struct  Switch
struct  Switch< 0, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 1, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 2, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 3, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 4, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 5, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 6, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 7, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 8, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch< 9, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8, t_T9 >
struct  Switch2
struct  Switch2< 0, t_T0, t_T1 >
struct  Switch2< 1, t_T0, t_T1 >
struct  Switch3
struct  Switch3< 0, t_T0, t_T1, t_T2 >
struct  Switch3< 1, t_T0, t_T1, t_T2 >
struct  Switch3< 2, t_T0, t_T1, t_T2 >
struct  Switch4
struct  Switch4< 0, t_T0, t_T1, t_T2, t_T3 >
struct  Switch4< 1, t_T0, t_T1, t_T2, t_T3 >
struct  Switch4< 2, t_T0, t_T1, t_T2, t_T3 >
struct  Switch4< 3, t_T0, t_T1, t_T2, t_T3 >
struct  Switch5
struct  Switch5< 0, t_T0, t_T1, t_T2, t_T3, t_T4 >
struct  Switch5< 1, t_T0, t_T1, t_T2, t_T3, t_T4 >
struct  Switch5< 2, t_T0, t_T1, t_T2, t_T3, t_T4 >
struct  Switch5< 3, t_T0, t_T1, t_T2, t_T3, t_T4 >
struct  Switch5< 4, t_T0, t_T1, t_T2, t_T3, t_T4 >
struct  Switch6
struct  Switch6< 0, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5 >
struct  Switch6< 1, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5 >
struct  Switch6< 2, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5 >
struct  Switch6< 3, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5 >
struct  Switch6< 4, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5 >
struct  Switch6< 5, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5 >
struct  Switch7
struct  Switch7< 0, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6 >
struct  Switch7< 1, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6 >
struct  Switch7< 2, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6 >
struct  Switch7< 3, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6 >
struct  Switch7< 4, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6 >
struct  Switch7< 5, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6 >
struct  Switch7< 6, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6 >
struct  Switch8
struct  Switch8< 0, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch8< 1, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch8< 2, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch8< 3, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch8< 4, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch8< 5, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch8< 6, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch8< 7, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7 >
struct  Switch9
struct  Switch9< 0, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 1, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 2, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 3, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 4, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 5, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 6, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 7, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Switch9< 8, t_T0, t_T1, t_T2, t_T3, t_T4, t_T5, t_T6, t_T7, t_T8 >
struct  Tag
struct  TypeList
struct  TypeListTypeOf
struct  TypeList0
struct  TypeList1
struct  TypeList2
struct  TypeList3
struct  TypeList4
struct  TypeList5
struct  TypeList6
struct  TypeList7
struct  TypeList8
struct  TypeList9
struct  TypeList10
struct  TypeList11
struct  TypeList12
struct  TypeList13
struct  TypeList14
struct  TypeList15
struct  TypeList16
struct  TypeList17
struct  TypeList18
struct  TypeList19
struct  TypeList20
struct  TypeList< Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, Nil, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, t_A13, Nil, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, t_A13, t_A14, Nil, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, t_A13, t_A14, t_A15, Nil, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, t_A13, t_A14, t_A15, t_A16, Nil, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, t_A13, t_A14, t_A15, t_A16, t_A17, Nil, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, t_A13, t_A14, t_A15, t_A16, t_A17, t_A18, Nil, Nil >
struct  TypeList< t_A1, t_A2, t_A3, t_A4, t_A5, t_A6, t_A7, t_A8, t_A9, t_A10, t_A11, t_A12, t_A13, t_A14, t_A15, t_A16, t_A17, t_A18, t_A19, Nil >
struct  TypeListTypeOf< 1, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 2, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 3, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 4, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 5, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 6, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 7, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 8, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 9, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 10, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 11, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 12, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 13, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 14, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 15, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 16, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 17, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 18, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 19, t_LIST, t_DEFAULTTYPE, 1 >
struct  TypeListTypeOf< 20, t_LIST, t_DEFAULTTYPE, 1 >
struct  UsesAllocator_Imp
struct  UsesAllocator_Imp< t_TYPE, t_ALLOC, BSLMF_VOIDTYPE(typename t_TYPE::allocator_type)>
struct  UsesAllocatorArgT
struct  UsesAllocatorArgT< const t_TYPE >
struct  UsesAllocatorArgT< volatile t_TYPE >
struct  UsesAllocatorArgT< const volatile t_TYPE >
struct  Util
struct  VoidType
struct  VoidType_1
struct  VoidType_2
struct  IsBitwiseMoveable< bslstl::BidirectionalNodePool< VALUE, ALLOCATOR > >

Typedefs

typedef Nil TypeListNil

Functions

template<class t_TYPE >
bsl::enable_if<!bsl::is_void
< t_TYPE >::value, Tag< false >
>::type 
operator, (const t_TYPE &, InvokeResult_VoidChecker)

Typedef Documentation


Function Documentation

template<class t_TYPE >
bsl::enable_if<!bsl::is_void<t_TYPE>::value, Tag<false> >::type bslmf::operator, ( const t_TYPE &  ,
InvokeResult_VoidChecker   
)

Return InvokeResult_VoidChecker() if the left argument is of type cv-'void'; otherwise bslmf::Tag<false>(). This overload of the comma operator is declared but not defined, and is intended to be used in metafunctions in an unevaluated context to detect void expressions. For any non-void expression expr, (expr,InvokeResult_VoidChecker()), will match this overload and produce a result of type bslmf::Tag<false>. However, const t_TYPE& will not match void, so if expr is a void expression, the built-in comma operator is matched and the result will have type InvokeResult_VoidChecker (i.e., the second argument).

Note that Sun CC incorrectly matches this overload for a void expression, then fails hard. The enable_if prevents this match for Sun CC and any other compilers that may similarly match void and is harmless for compilers that don't.