LLVM API Documentation

Public Types | Static Public Member Functions
llvm::ImutKeyValueInfo< T, S > Struct Template Reference

#include <ImmutableMap.h>

List of all members.

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 constdata_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) [inline, static]

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 
) [inline, static]

Definition at line 48 of file ImmutableMap.h.

References llvm::ImutKeyValueInfo< T, S >::isEqual().

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

Definition at line 41 of file ImmutableMap.h.

Referenced by llvm::ImutKeyValueInfo< T, S >::isDataEqual().

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

Definition at line 44 of file ImmutableMap.h.

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

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 
) [inline, static]

Definition at line 52 of file ImmutableMap.h.


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