LLVM  4.0.0
Public Types | List of all members
llvm::PointerSumTypeMember< N, PointerArgT, TraitsArgT > Struct Template Reference

A compile time pair of an integer tag and the pointer-like type which it indexes within a sum type. More...

#include <PointerSumType.h>

Public Types

enum  { Tag = N }
 
typedef PointerArgT PointerT
 
typedef TraitsArgT TraitsT
 

Detailed Description

template<uintptr_t N, typename PointerArgT, typename TraitsArgT = PointerLikeTypeTraits<PointerArgT>>
struct llvm::PointerSumTypeMember< N, PointerArgT, TraitsArgT >

A compile time pair of an integer tag and the pointer-like type which it indexes within a sum type.

Also allows the user to specify a particular traits class for pointer types with custom behavior such as over-aligned allocation.

Definition at line 25 of file PointerSumType.h.

Member Typedef Documentation

template<uintptr_t N, typename PointerArgT , typename TraitsArgT = PointerLikeTypeTraits<PointerArgT>>
typedef PointerArgT llvm::PointerSumTypeMember< N, PointerArgT, TraitsArgT >::PointerT

Definition at line 27 of file PointerSumType.h.

template<uintptr_t N, typename PointerArgT , typename TraitsArgT = PointerLikeTypeTraits<PointerArgT>>
typedef TraitsArgT llvm::PointerSumTypeMember< N, PointerArgT, TraitsArgT >::TraitsT

Definition at line 28 of file PointerSumType.h.

Member Enumeration Documentation

template<uintptr_t N, typename PointerArgT , typename TraitsArgT = PointerLikeTypeTraits<PointerArgT>>
anonymous enum
Enumerator
Tag 

Definition at line 26 of file PointerSumType.h.


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