LLVM API Documentation

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Static Public Member Functions | List of all members
llvm::ImutKeyValueInfo< T, S > Struct Template Reference

#include <ImmutableMap.h>

Public Types

typedef const std::pair< T, S > value_type
 
typedef const value_typevalue_type_ref
 
typedef const T key_type
 
typedef const Tkey_type_ref
 
typedef const S data_type
 
typedef const S & data_type_ref
 

Static Public Member Functions

static key_type_ref KeyOfValue (value_type_ref V)
 
static data_type_ref DataOfValue (value_type_ref V)
 
static bool isEqual (key_type_ref L, key_type_ref R)
 
static bool isLess (key_type_ref L, key_type_ref R)
 
static bool isDataEqual (data_type_ref L, data_type_ref R)
 
static void Profile (FoldingSetNodeID &ID, value_type_ref V)
 

Detailed Description

template<typename T, typename S>
struct llvm::ImutKeyValueInfo< T, S >

ImutKeyValueInfo -Traits class used by ImmutableMap. While both the first and second elements in a pair are used to generate profile information, only the first element (the key) is used by isEqual and isLess.

Definition at line 25 of file ImmutableMap.h.

Member Typedef Documentation

template<typename T , typename S >
typedef const S llvm::ImutKeyValueInfo< T, S >::data_type

Definition at line 30 of file ImmutableMap.h.

template<typename T , typename S >
typedef const S& llvm::ImutKeyValueInfo< T, S >::data_type_ref

Definition at line 31 of file ImmutableMap.h.

template<typename T , typename S >
typedef const T llvm::ImutKeyValueInfo< T, S >::key_type

Definition at line 28 of file ImmutableMap.h.

template<typename T , typename S >
typedef const T& llvm::ImutKeyValueInfo< T, S >::key_type_ref

Definition at line 29 of file ImmutableMap.h.

template<typename T , typename S >
typedef const std::pair<T,S> llvm::ImutKeyValueInfo< T, S >::value_type

Definition at line 26 of file ImmutableMap.h.

template<typename T , typename S >
typedef const value_type& llvm::ImutKeyValueInfo< T, S >::value_type_ref

Definition at line 27 of file ImmutableMap.h.

Member Function Documentation

template<typename T , typename S >
static data_type_ref llvm::ImutKeyValueInfo< T, S >::DataOfValue ( value_type_ref  V)
inlinestatic

Definition at line 37 of file ImmutableMap.h.

template<typename T , typename S >
static bool llvm::ImutKeyValueInfo< T, S >::isDataEqual ( data_type_ref  L,
data_type_ref  R 
)
inlinestatic

Definition at line 48 of file ImmutableMap.h.

References llvm::ImutContainerInfo< T >::isEqual().

template<typename T , typename S >
static bool llvm::ImutKeyValueInfo< T, S >::isEqual ( key_type_ref  L,
key_type_ref  R 
)
inlinestatic

Definition at line 41 of file ImmutableMap.h.

References llvm::ImutContainerInfo< T >::isEqual().

template<typename T , typename S >
static bool llvm::ImutKeyValueInfo< T, S >::isLess ( key_type_ref  L,
key_type_ref  R 
)
inlinestatic

Definition at line 44 of file ImmutableMap.h.

References llvm::ImutContainerInfo< T >::isLess().

template<typename T , typename S >
static key_type_ref llvm::ImutKeyValueInfo< T, S >::KeyOfValue ( value_type_ref  V)
inlinestatic

Definition at line 33 of file ImmutableMap.h.

template<typename T , typename S >
static void llvm::ImutKeyValueInfo< T, S >::Profile ( FoldingSetNodeID ID,
value_type_ref  V 
)
inlinestatic

Definition at line 52 of file ImmutableMap.h.

References llvm::ImutProfileInfo< T >::Profile().


The documentation for this struct was generated from the following file: