LLVM API Documentation
#include <PointerUnion.h>
Classes | |
struct | IsInnerUnion |
struct | IsPT3 |
Public Types | |
typedef PointerUnion< PT1, PT2 > | InnerUnion |
typedef PointerUnion < InnerUnion, PT3 > | ValTy |
Public Member Functions | |
PointerUnion3 () | |
PointerUnion3 (PT1 V) | |
PointerUnion3 (PT2 V) | |
PointerUnion3 (PT3 V) | |
bool | isNull () const |
LLVM_EXPLICIT | operator bool () const |
template<typename T > | |
int | is () const |
is<T>() return true if the Union currently holds the type matching T. | |
template<typename T > | |
T | get () const |
template<typename T > | |
T | dyn_cast () const |
const PointerUnion3 & | operator= (std::nullptr_t) |
Assignment from nullptr which just clears the union. | |
const PointerUnion3 & | operator= (const PT1 &RHS) |
const PointerUnion3 & | operator= (const PT2 &RHS) |
const PointerUnion3 & | operator= (const PT3 &RHS) |
void * | getOpaqueValue () const |
Static Public Member Functions | |
static PointerUnion3 | getFromOpaqueValue (void *VP) |
PointerUnion3 - This is a pointer union of three pointer types. See documentation for PointerUnion for usage.
Definition at line 224 of file PointerUnion.h.
typedef PointerUnion<PT1, PT2> llvm::PointerUnion3< PT1, PT2, PT3 >::InnerUnion |
Definition at line 226 of file PointerUnion.h.
typedef PointerUnion<InnerUnion, PT3> llvm::PointerUnion3< PT1, PT2, PT3 >::ValTy |
Definition at line 227 of file PointerUnion.h.
llvm::PointerUnion3< PT1, PT2, PT3 >::PointerUnion3 | ( | ) | [inline] |
Definition at line 259 of file PointerUnion.h.
llvm::PointerUnion3< PT1, PT2, PT3 >::PointerUnion3 | ( | PT1 | V | ) | [inline] |
Definition at line 261 of file PointerUnion.h.
llvm::PointerUnion3< PT1, PT2, PT3 >::PointerUnion3 | ( | PT2 | V | ) | [inline] |
Definition at line 264 of file PointerUnion.h.
llvm::PointerUnion3< PT1, PT2, PT3 >::PointerUnion3 | ( | PT3 | V | ) | [inline] |
Definition at line 267 of file PointerUnion.h.
T llvm::PointerUnion3< PT1, PT2, PT3 >::dyn_cast | ( | ) | const [inline] |
dyn_cast<T>() - If the current value is of the specified pointer type, return it, otherwise return null.
Definition at line 303 of file PointerUnion.h.
References T.
T llvm::PointerUnion3< PT1, PT2, PT3 >::get | ( | ) | const [inline] |
get<T>() - Return the value of the specified pointer type. If the specified pointer type is incorrect, assert.
Definition at line 290 of file PointerUnion.h.
References llvm::GC::Return, and T.
static PointerUnion3 llvm::PointerUnion3< PT1, PT2, PT3 >::getFromOpaqueValue | ( | void * | VP | ) | [inline, static] |
Definition at line 330 of file PointerUnion.h.
References llvm::PointerUnion< InnerUnion, PT3 >::getFromOpaqueValue().
void* llvm::PointerUnion3< PT1, PT2, PT3 >::getOpaqueValue | ( | ) | const [inline] |
Definition at line 329 of file PointerUnion.h.
References llvm::PointerUnion< PT1, PT2 >::getOpaqueValue().
Referenced by llvm::PointerLikeTypeTraits< PointerUnion3< PT1, PT2, PT3 > >::getAsVoidPointer().
int llvm::PointerUnion3< PT1, PT2, PT3 >::is | ( | ) | const [inline] |
is<T>() return true if the Union currently holds the type matching T.
Definition at line 278 of file PointerUnion.h.
References llvm::GC::Return, and T.
bool llvm::PointerUnion3< PT1, PT2, PT3 >::isNull | ( | ) | const [inline] |
isNull - Return true if the pointer held in the union is null, regardless of which type it is.
Definition at line 273 of file PointerUnion.h.
References llvm::PointerUnion< PT1, PT2 >::isNull().
Referenced by llvm::PointerUnion3< PT1, PT2, PT3 >::operator bool().
LLVM_EXPLICIT llvm::PointerUnion3< PT1, PT2, PT3 >::operator bool | ( | ) | const [inline] |
Definition at line 274 of file PointerUnion.h.
References llvm::PointerUnion3< PT1, PT2, PT3 >::isNull().
const PointerUnion3& llvm::PointerUnion3< PT1, PT2, PT3 >::operator= | ( | std::nullptr_t | ) | [inline] |
Assignment from nullptr which just clears the union.
Definition at line 309 of file PointerUnion.h.
const PointerUnion3& llvm::PointerUnion3< PT1, PT2, PT3 >::operator= | ( | const PT1 & | RHS | ) | [inline] |
Assignment operators - Allow assigning into this union from either pointer type, setting the discriminator to remember what it came from.
Definition at line 316 of file PointerUnion.h.
const PointerUnion3& llvm::PointerUnion3< PT1, PT2, PT3 >::operator= | ( | const PT2 & | RHS | ) | [inline] |
Definition at line 320 of file PointerUnion.h.
const PointerUnion3& llvm::PointerUnion3< PT1, PT2, PT3 >::operator= | ( | const PT3 & | RHS | ) | [inline] |
Definition at line 324 of file PointerUnion.h.