LLVM
8.0.1
|
A pointer union of four pointer types. More...
#include "llvm/ADT/PointerUnion.h"
Public Types | |
using | InnerUnion1 = PointerUnion< PT1, PT2 > |
using | InnerUnion2 = PointerUnion< PT3, PT4 > |
using | ValTy = PointerUnion< InnerUnion1, InnerUnion2 > |
Public Member Functions | |
PointerUnion4 ()=default | |
PointerUnion4 (PT1 V) | |
PointerUnion4 (PT2 V) | |
PointerUnion4 (PT3 V) | |
PointerUnion4 (PT4 V) | |
bool | isNull () const |
Test if the pointer held in the union is null, regardless of which type it is. More... | |
operator bool () const | |
template<typename T > | |
int | is () const |
Test if the Union currently holds the type matching T. More... | |
template<typename T > | |
T | get () const |
Returns the value of the specified pointer type. More... | |
template<typename T > | |
T | dyn_cast () const |
Returns the current pointer if it is of the specified pointer type, otherwises returns null. More... | |
const PointerUnion4 & | operator= (std::nullptr_t) |
Assignment from nullptr which just clears the union. More... | |
const PointerUnion4 & | operator= (const PT1 &RHS) |
Assignment operators - Allow assigning into this union from either pointer type, setting the discriminator to remember what it came from. More... | |
const PointerUnion4 & | operator= (const PT2 &RHS) |
const PointerUnion4 & | operator= (const PT3 &RHS) |
const PointerUnion4 & | operator= (const PT4 &RHS) |
void * | getOpaqueValue () const |
Static Public Member Functions | |
static PointerUnion4 | getFromOpaqueValue (void *VP) |
A pointer union of four pointer types.
See documentation for PointerUnion for usage.
Definition at line 358 of file PointerUnion.h.
using llvm::PointerUnion4< PT1, PT2, PT3, PT4 >::InnerUnion1 = PointerUnion<PT1, PT2> |
Definition at line 360 of file PointerUnion.h.
using llvm::PointerUnion4< PT1, PT2, PT3, PT4 >::InnerUnion2 = PointerUnion<PT3, PT4> |
Definition at line 361 of file PointerUnion.h.
using llvm::PointerUnion4< PT1, PT2, PT3, PT4 >::ValTy = PointerUnion<InnerUnion1, InnerUnion2> |
Definition at line 362 of file PointerUnion.h.
|
default |
|
inline |
Definition at line 369 of file PointerUnion.h.
|
inline |
Definition at line 370 of file PointerUnion.h.
|
inline |
Definition at line 371 of file PointerUnion.h.
|
inline |
Definition at line 372 of file PointerUnion.h.
|
inline |
Returns the current pointer if it is of the specified pointer type, otherwises returns null.
Definition at line 404 of file PointerUnion.h.
|
inline |
Returns the value of the specified pointer type.
If the specified pointer type is incorrect, assert.
Definition at line 392 of file PointerUnion.h.
|
inlinestatic |
Definition at line 436 of file PointerUnion.h.
Referenced by llvm::PointerLikeTypeTraits< PointerUnion4< PT1, PT2, PT3, PT4 > >::getFromVoidPointer().
|
inline |
Definition at line 435 of file PointerUnion.h.
Referenced by llvm::PointerLikeTypeTraits< PointerUnion4< PT1, PT2, PT3, PT4 > >::getAsVoidPointer().
|
inline |
Test if the Union currently holds the type matching T.
Definition at line 380 of file PointerUnion.h.
|
inline |
Test if the pointer held in the union is null, regardless of which type it is.
Definition at line 376 of file PointerUnion.h.
|
inlineexplicit |
Definition at line 377 of file PointerUnion.h.
|
inline |
Assignment from nullptr which just clears the union.
Definition at line 411 of file PointerUnion.h.
|
inline |
Assignment operators - Allow assigning into this union from either pointer type, setting the discriminator to remember what it came from.
Definition at line 418 of file PointerUnion.h.
|
inline |
Definition at line 422 of file PointerUnion.h.
|
inline |
Definition at line 426 of file PointerUnion.h.
|
inline |
Definition at line 430 of file PointerUnion.h.