class SyntheticTemplateParamName

Declaration

class SyntheticTemplateParamName : public Node { /* full declaration omitted */ };

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 <lambda -sig> for a lambda with explicit template arguments, which might be referenced in the parameter types appearing later in the <lambda -sig>.

Declared at: llvm/include/llvm/Demangle/ItaniumDemangle.h:1124

Inherits from: Node

Member Variables

private llvm::itanium_demangle::TemplateParamKind Kind
private unsigned int Index

Inherited from Node:

public RHSComponentCache
public ArrayCache
public FunctionCache

Method Overview

  • public SyntheticTemplateParamName(llvm::itanium_demangle::TemplateParamKind Kind_, unsigned int Index_)
  • public template <typename Fn>void match(Fn F) const
  • public void printLeft(llvm::itanium_demangle::OutputBuffer & OB) const

Inherited from Node:

Methods

SyntheticTemplateParamName(
    llvm::itanium_demangle::TemplateParamKind
        Kind_,
    unsigned int Index_)

Declared at: llvm/include/llvm/Demangle/ItaniumDemangle.h:1129

Parameters

llvm::itanium_demangle::TemplateParamKind Kind_
unsigned int Index_

template <typename Fn>
void match(Fn F) const

Declared at: llvm/include/llvm/Demangle/ItaniumDemangle.h:1132

Templates

Fn

Parameters

Fn F

void printLeft(
    llvm::itanium_demangle::OutputBuffer& OB)
    const

Declared at: llvm/include/llvm/Demangle/ItaniumDemangle.h:1134

Parameters

llvm::itanium_demangle::OutputBuffer& OB