LLVM API Documentation

Classes | Public Types | Static Public Member Functions
llvm::ValueMapConfig< KeyT, MutexT > Struct Template Reference

#include <ValueMap.h>

Inheritance diagram for llvm::ValueMapConfig< KeyT, MutexT >:
Inheritance graph
[legend]

List of all members.

Classes

struct  ExtraData

Public Types

enum  { FollowRAUW = true }
typedef MutexT mutex_type

Static Public Member Functions

template<typename ExtraDataT >
static void onRAUW (const ExtraDataT &, KeyT, KeyT)
template<typename ExtraDataT >
static void onDelete (const ExtraDataT &, KeyT)
template<typename ExtraDataT >
static mutex_typegetMutex (const ExtraDataT &)

Detailed Description

template<typename KeyT, typename MutexT = sys::Mutex>
struct llvm::ValueMapConfig< KeyT, MutexT >

This class defines the default behavior for configurable aspects of ValueMap<>. User Configs should inherit from this class to be as compatible as possible with future versions of ValueMap.

Definition at line 50 of file ValueMap.h.


Member Typedef Documentation

template<typename KeyT, typename MutexT = sys::Mutex>
typedef MutexT llvm::ValueMapConfig< KeyT, MutexT >::mutex_type

Definition at line 51 of file ValueMap.h.


Member Enumeration Documentation

template<typename KeyT, typename MutexT = sys::Mutex>
anonymous enum

If FollowRAUW is true, the ValueMap will update mappings on RAUW. If it's false, the ValueMap will leave the original mapping in place.

Enumerator:
FollowRAUW 

Definition at line 55 of file ValueMap.h.


Member Function Documentation

template<typename KeyT, typename MutexT = sys::Mutex>
template<typename ExtraDataT >
static mutex_type* llvm::ValueMapConfig< KeyT, MutexT >::getMutex ( const ExtraDataT &  ) [inline, static]

Returns a mutex that should be acquired around any changes to the map. This is only acquired from the CallbackVH (and held around calls to onRAUW and onDelete) and not inside other ValueMap methods. NULL means that no mutex is necessary.

Definition at line 73 of file ValueMap.h.

template<typename KeyT, typename MutexT = sys::Mutex>
template<typename ExtraDataT >
static void llvm::ValueMapConfig< KeyT, MutexT >::onDelete ( const ExtraDataT &  ,
KeyT   
) [inline, static]

Definition at line 66 of file ValueMap.h.

template<typename KeyT, typename MutexT = sys::Mutex>
template<typename ExtraDataT >
static void llvm::ValueMapConfig< KeyT, MutexT >::onRAUW ( const ExtraDataT &  ,
KeyT  ,
KeyT   
) [inline, static]

Definition at line 64 of file ValueMap.h.


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