LLVM: SyntheticTemplateParamName Class Reference (original) (raw)
An invented name for a template parameter for which we don't have a corresponding template argument. More...
#include "[llvm/Demangle/ItaniumDemangle.h](ItaniumDemangle%5F8h%5Fsource.html)"
Inheritance diagram for SyntheticTemplateParamName:
Additional Inherited Members | |
---|---|
![]() |
|
enum | Kind : unsigned char |
enum class | Cache : unsigned char { Yes, No, Unknown } |
Three-way bool to track a cached value. More... | |
enum class | Prec { Primary, Postfix, Unary, Cast, PtrMem, Multiplicative, Additive, Shift, Spaceship, Relational, Equality, And, Xor, Ior, AndIf, OrIf, Conditional, Assign, Comma, Default } |
Operator precedence for expression nodes. More... | |
![]() |
|
Cache | RHSComponentCache: 2 |
Tracks if this node has a component on its right side, in which case we need to call printRight. | |
Cache | ArrayCache: 2 |
Track if this node is a (possibly qualified) array type. | |
Cache | FunctionCache: 2 |
Track if this node is a (possibly qualified) function type. | |
Detailed Description
An invented name for a template parameter for which we don't have a corresponding template argument.
This node is created when parsing the for a lambda with explicit template arguments, which might be referenced in the parameter types appearing later in the .
Definition at line 1235 of file ItaniumDemangle.h.
Constructor & Destructor Documentation
Member Function Documentation
◆ match()
template
void SyntheticTemplateParamName::match ( Fn F) const | inline |
---|
◆ printLeft()
void SyntheticTemplateParamName::printLeft ( OutputBuffer & OB) const | inlineoverridevirtual |
---|
The documentation for this class was generated from the following file:
- include/llvm/Demangle/ItaniumDemangle.h