LibreOffice Module onlineupdate (master) 1
Classes | Namespaces | Typedefs | Enumerations | Functions
TypeTraits.h File Reference
#include "Types.h"
#include <wchar.h>
Include dependency graph for TypeTraits.h:

Go to the source code of this file.

Classes

struct  mozilla::IntegralConstant< T, Value >
 Helper class used as a base for various type traits, exposed publicly because <type_traits> exposes it as well. More...
 
struct  mozilla::detail::IsVoidHelper< T >
 
struct  mozilla::detail::IsVoidHelper< void >
 
struct  mozilla::IsVoid< T >
 IsVoid determines whether a type is void. More...
 
struct  mozilla::detail::IsIntegralHelper< T >
 
struct  mozilla::detail::IsIntegralHelper< char >
 
struct  mozilla::detail::IsIntegralHelper< signed char >
 
struct  mozilla::detail::IsIntegralHelper< unsigned char >
 
struct  mozilla::detail::IsIntegralHelper< short >
 
struct  mozilla::detail::IsIntegralHelper< unsigned short >
 
struct  mozilla::detail::IsIntegralHelper< int >
 
struct  mozilla::detail::IsIntegralHelper< unsigned int >
 
struct  mozilla::detail::IsIntegralHelper< long >
 
struct  mozilla::detail::IsIntegralHelper< unsigned long >
 
struct  mozilla::detail::IsIntegralHelper< long long >
 
struct  mozilla::detail::IsIntegralHelper< unsigned long long >
 
struct  mozilla::detail::IsIntegralHelper< bool >
 
struct  mozilla::detail::IsIntegralHelper< wchar_t >
 
struct  mozilla::IsIntegral< T >
 IsIntegral determines whether a type is an integral type. More...
 
struct  mozilla::detail::IsFloatingPointHelper< T >
 
struct  mozilla::IsFloatingPoint< T >
 IsFloatingPoint determines whether a type is a floating point type (float, double, long double). More...
 
struct  mozilla::detail::IsArrayHelper< T >
 
struct  mozilla::detail::IsArrayHelper< T[N]>
 
struct  mozilla::detail::IsArrayHelper< T[]>
 
struct  mozilla::IsArray< T >
 IsArray determines whether a type is an array type, of known or unknown length. More...
 
struct  mozilla::detail::IsPointerHelper< T >
 
struct  mozilla::detail::IsPointerHelper< T * >
 
struct  mozilla::IsPointer< T >
 IsPointer determines whether a type is a possibly-CV-qualified pointer type (but not a pointer-to-member type). More...
 
struct  mozilla::IsLvalueReference< T >
 IsLvalueReference determines whether a type is an lvalue reference. More...
 
struct  mozilla::IsLvalueReference< T & >
 
struct  mozilla::IsRvalueReference< T >
 IsRvalueReference determines whether a type is an rvalue reference. More...
 
struct  mozilla::IsRvalueReference< T && >
 
struct  mozilla::detail::IsEnumHelper< T >
 
struct  mozilla::IsEnum< T >
 IsEnum determines whether a type is an enum type. More...
 
struct  mozilla::detail::IsClassHelper< T >
 
struct  mozilla::IsClass< T >
 IsClass determines whether a type is a class type (but not a union). More...
 
struct  mozilla::IsReference< T >
 IsReference determines whether a type is an lvalue or rvalue reference. More...
 
struct  mozilla::IsArithmetic< T >
 IsArithmetic determines whether a type is arithmetic. More...
 
struct  mozilla::IsConst< T >
 IsConst determines whether a type is const or not. More...
 
struct  mozilla::IsConst< const T >
 
struct  mozilla::IsVolatile< T >
 IsVolatile determines whether a type is volatile or not. More...
 
struct  mozilla::IsVolatile< volatile T >
 
struct  mozilla::IsPod< T >
 Traits class for identifying POD types. More...
 
struct  mozilla::IsPod< char >
 
struct  mozilla::IsPod< signed char >
 
struct  mozilla::IsPod< unsigned char >
 
struct  mozilla::IsPod< short >
 
struct  mozilla::IsPod< unsigned short >
 
struct  mozilla::IsPod< int >
 
struct  mozilla::IsPod< unsigned int >
 
struct  mozilla::IsPod< long >
 
struct  mozilla::IsPod< unsigned long >
 
struct  mozilla::IsPod< long long >
 
struct  mozilla::IsPod< unsigned long long >
 
struct  mozilla::IsPod< bool >
 
struct  mozilla::IsPod< float >
 
struct  mozilla::IsPod< double >
 
struct  mozilla::IsPod< wchar_t >
 
struct  mozilla::IsPod< T * >
 
struct  mozilla::detail::IsEmptyHelper< T >
 
struct  mozilla::IsEmpty< T >
 IsEmpty determines whether a type is a class (but not a union) that is empty. More...
 
struct  mozilla::detail::IsSignedHelper< T, true, false, NoCV >
 
struct  mozilla::detail::IsSignedHelper< T, false, true, NoCV >
 
struct  mozilla::detail::IsSignedHelper< T, false, false, NoCV >
 
struct  mozilla::IsSigned< T >
 IsSigned determines whether a type is a signed arithmetic type. More...
 
struct  mozilla::detail::IsUnsignedHelper< T, true, false, NoCV >
 
struct  mozilla::detail::IsUnsignedHelper< T, false, true, NoCV >
 
struct  mozilla::detail::IsUnsignedHelper< T, false, false, NoCV >
 
struct  mozilla::IsUnsigned< T >
 IsUnsigned determines whether a type is an unsigned arithmetic type. More...
 
struct  mozilla::IsSame< T, U >
 IsSame tests whether two types are the same type. More...
 
struct  mozilla::IsSame< T, T >
 
struct  mozilla::detail::BaseOfHelper< Base, Derived >
 
struct  mozilla::detail::BaseOfTester< Base, Derived >
 
struct  mozilla::detail::BaseOfTester< Base, const Derived >
 
struct  mozilla::detail::BaseOfTester< Base &, Derived & >
 
struct  mozilla::detail::BaseOfTester< Type, Type >
 
struct  mozilla::detail::BaseOfTester< Type, const Type >
 
struct  mozilla::IsBaseOf< Base, Derived >
 
struct  mozilla::detail::ConvertibleTester< From, To >
 
struct  mozilla::IsConvertible< From, To >
 IsConvertible determines whether a value of type From will implicitly convert to a value of type To. More...
 
struct  mozilla::IsConvertible< void, B >
 
struct  mozilla::IsConvertible< A, void >
 
struct  mozilla::IsConvertible< void, void >
 
struct  mozilla::RemoveConst< T >
 RemoveConst removes top-level const qualifications on a type. More...
 
struct  mozilla::RemoveConst< const T >
 
struct  mozilla::RemoveVolatile< T >
 RemoveVolatile removes top-level volatile qualifications on a type. More...
 
struct  mozilla::RemoveVolatile< volatile T >
 
struct  mozilla::RemoveCV< T >
 RemoveCV removes top-level const and volatile qualifications on a type. More...
 
struct  mozilla::RemoveReference< T >
 Converts reference types to the underlying types. More...
 
struct  mozilla::RemoveReference< T & >
 
struct  mozilla::RemoveReference< T && >
 
struct  mozilla::detail::AddLvalueReferenceHelper< T, TIsVoid >
 
struct  mozilla::detail::AddLvalueReferenceHelper< T, TIsNotVoid >
 
struct  mozilla::AddLvalueReference< T >
 AddLvalueReference adds an lvalue & reference to T if one isn't already present. More...
 
struct  mozilla::detail::AddRvalueReferenceHelper< T, TIsVoid >
 
struct  mozilla::detail::AddRvalueReferenceHelper< T, TIsNotVoid >
 
struct  mozilla::AddRvalueReference< T >
 AddRvalueReference adds an rvalue && reference to T if one isn't already present. More...
 
struct  mozilla::detail::WithC< MakeConst, T >
 
struct  mozilla::detail::WithV< MakeVolatile, T >
 
struct  mozilla::detail::WithCV< MakeConst, MakeVolatile, T >
 
struct  mozilla::detail::CorrespondingSigned< char >
 
struct  mozilla::detail::CorrespondingSigned< unsigned char >
 
struct  mozilla::detail::CorrespondingSigned< unsigned short >
 
struct  mozilla::detail::CorrespondingSigned< unsigned int >
 
struct  mozilla::detail::CorrespondingSigned< unsigned long >
 
struct  mozilla::detail::CorrespondingSigned< unsigned long long >
 
struct  mozilla::detail::MakeSigned< T, CVRemoved, true >
 
struct  mozilla::detail::MakeSigned< T, CVRemoved, false >
 
struct  mozilla::MakeSigned< T >
 MakeSigned produces the corresponding signed integer type for a given integral type T, with the const/volatile qualifiers of T. More...
 
struct  mozilla::detail::CorrespondingUnsigned< char >
 
struct  mozilla::detail::CorrespondingUnsigned< signed char >
 
struct  mozilla::detail::CorrespondingUnsigned< short >
 
struct  mozilla::detail::CorrespondingUnsigned< int >
 
struct  mozilla::detail::CorrespondingUnsigned< long >
 
struct  mozilla::detail::CorrespondingUnsigned< long long >
 
struct  mozilla::detail::MakeUnsigned< T, CVRemoved, true >
 
struct  mozilla::detail::MakeUnsigned< T, CVRemoved, false >
 
struct  mozilla::MakeUnsigned< T >
 MakeUnsigned produces the corresponding unsigned integer type for a given integral type T, with the const/volatile qualifiers of T. More...
 
struct  mozilla::RemoveExtent< T >
 RemoveExtent produces either the type of the elements of the array T, or T itself. More...
 
struct  mozilla::RemoveExtent< T[]>
 
struct  mozilla::RemoveExtent< T[N]>
 
struct  mozilla::detail::RemovePointerHelper< T, CVRemoved >
 
struct  mozilla::detail::RemovePointerHelper< T, Pointee * >
 
struct  mozilla::RemovePointer< T >
 Produces the pointed-to type if a pointer is provided, else returns the input type. More...
 
struct  mozilla::EnableIf< B, T >
 EnableIf is a struct containing a typedef of T if and only if B is true. More...
 
struct  mozilla::EnableIf< true, T >
 
struct  mozilla::Conditional< Condition, A, B >
 Conditional selects a class between two, depending on a given boolean value. More...
 
struct  mozilla::Conditional< false, A, B >
 

Namespaces

namespace  mozilla
 Compares two VersionParts.
 
namespace  mozilla::detail
 

Typedefs

typedef IntegralConstant< bool, true > mozilla::TrueType
 Convenient aliases. More...
 
typedef IntegralConstant< bool, false > mozilla::FalseType
 

Enumerations

enum  mozilla::detail::Voidness {
  mozilla::detail::TIsVoid ,
  mozilla::detail::TIsNotVoid
}
 

Functions

template<typename T >
AddRvalueReference< T >::Type mozilla::DeclVal ()
 DeclVal simplifies the definition of expressions which occur as unevaluated operands. More...