clang API Documentation
Implementation class used to describe either a set of overloaded template names or an already-substituted template template parameter pack. More...
#include <TemplateName.h>
Classes | |
struct | BitsTag |
Public Member Functions | |
unsigned | size () const |
OverloadedTemplateStorage * | getAsOverloadedStorage () |
SubstTemplateTemplateParmStorage * | getAsSubstTemplateTemplateParm () |
SubstTemplateTemplateParmPackStorage * | getAsSubstTemplateTemplateParmPack () |
Protected Types | |
enum | Kind { Overloaded, SubstTemplateTemplateParm, SubstTemplateTemplateParmPack } |
Protected Member Functions | |
UncommonTemplateNameStorage (Kind kind, unsigned size) | |
Protected Attributes | |
union { | |
struct BitsTag Bits | |
void * PointerAlignment | |
}; |
Implementation class used to describe either a set of overloaded template names or an already-substituted template template parameter pack.
Definition at line 41 of file TemplateName.h.
enum clang::UncommonTemplateNameStorage::Kind [protected] |
Definition at line 43 of file TemplateName.h.
clang::UncommonTemplateNameStorage::UncommonTemplateNameStorage | ( | Kind | kind, |
unsigned | size | ||
) | [inline, protected] |
Definition at line 63 of file TemplateName.h.
References Bits, clang::UncommonTemplateNameStorage::BitsTag::Kind, clang::UncommonTemplateNameStorage::BitsTag::Size, and size().
Definition at line 71 of file TemplateName.h.
References Bits, clang::UncommonTemplateNameStorage::BitsTag::Kind, and Overloaded.
Referenced by clang::TemplateName::getAsOverloadedTemplate(), and clang::TemplateName::getKind().
SubstTemplateTemplateParmStorage* clang::UncommonTemplateNameStorage::getAsSubstTemplateTemplateParm | ( | ) | [inline] |
Definition at line 77 of file TemplateName.h.
References Bits, clang::UncommonTemplateNameStorage::BitsTag::Kind, and SubstTemplateTemplateParm.
Referenced by clang::TemplateName::getAsSubstTemplateTemplateParm(), and clang::TemplateName::getKind().
SubstTemplateTemplateParmPackStorage* clang::UncommonTemplateNameStorage::getAsSubstTemplateTemplateParmPack | ( | ) | [inline] |
Definition at line 83 of file TemplateName.h.
References Bits, clang::UncommonTemplateNameStorage::BitsTag::Kind, and SubstTemplateTemplateParmPack.
Referenced by clang::TemplateName::getAsSubstTemplateTemplateParmPack().
unsigned clang::UncommonTemplateNameStorage::size | ( | ) | const [inline] |
Definition at line 69 of file TemplateName.h.
References Bits, and clang::UncommonTemplateNameStorage::BitsTag::Size.
Referenced by clang::ASTWriter::AddTemplateName(), clang::OverloadedTemplateStorage::end(), and UncommonTemplateNameStorage().
union { ... } [protected] |
Definition at line 59 of file TemplateName.h.
Referenced by getAsOverloadedStorage(), getAsSubstTemplateTemplateParm(), getAsSubstTemplateTemplateParmPack(), size(), and UncommonTemplateNameStorage().
Definition at line 60 of file TemplateName.h.