class Node

Declaration

class Node { /* full declaration omitted */ };

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

Member Variables

public llvm::itanium_demangle::Node::Cache RHSComponentCache
Tracks if this node has a component on its right side, in which case we need to call printRight.
public llvm::itanium_demangle::Node::Cache ArrayCache
Track if this node is a (possibly qualified) array type. This can affect how we format the output string.
public llvm::itanium_demangle::Node::Cache FunctionCache
Track if this node is a (possibly qualified) function type. This can affect how we format the output string.

Method Overview

  • public Node(llvm::itanium_demangle::Node::Kind K_, llvm::itanium_demangle::Node::Cache RHSComponentCache_ = Cache::No, llvm::itanium_demangle::Node::Cache ArrayCache_ = Cache::No, llvm::itanium_demangle::Node::Cache FunctionCache_ = Cache::No)
  • public void dump() const
  • public virtual llvm::itanium_demangle::StringView getBaseName() const
  • public llvm::itanium_demangle::Node::Kind getKind() const
  • public virtual const llvm::itanium_demangle::Node * getSyntaxNode(llvm::itanium_demangle::OutputStream &) const
  • public bool hasArray(llvm::itanium_demangle::OutputStream & S) const
  • public virtual bool hasArraySlow(llvm::itanium_demangle::OutputStream &) const
  • public bool hasFunction(llvm::itanium_demangle::OutputStream & S) const
  • public virtual bool hasFunctionSlow(llvm::itanium_demangle::OutputStream &) const
  • public bool hasRHSComponent(llvm::itanium_demangle::OutputStream & S) const
  • public virtual bool hasRHSComponentSlow(llvm::itanium_demangle::OutputStream &) const
  • public void print(llvm::itanium_demangle::OutputStream & S) const
  • public virtual void printLeft(llvm::itanium_demangle::OutputStream &) const
  • public virtual void printRight(llvm::itanium_demangle::OutputStream &) const
  • public template <typename Fn>void visit(Fn F) const
  • public virtual ~Node()

Methods

Node(llvm::itanium_demangle::Node::Kind K_,
     llvm::itanium_demangle::Node::Cache
         RHSComponentCache_ = Cache::No,
     llvm::itanium_demangle::Node::Cache
         ArrayCache_ = Cache::No,
     llvm::itanium_demangle::Node::Cache
         FunctionCache_ = Cache::No)

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

Parameters

llvm::itanium_demangle::Node::Kind K_
llvm::itanium_demangle::Node::Cache RHSComponentCache_ = Cache::No
llvm::itanium_demangle::Node::Cache ArrayCache_ = Cache::No
llvm::itanium_demangle::Node::Cache FunctionCache_ = Cache::No

void dump() const

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

virtual llvm::itanium_demangle::StringView
getBaseName() const

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

llvm::itanium_demangle::Node::Kind getKind() const

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

virtual const llvm::itanium_demangle::Node*
getSyntaxNode(
    llvm::itanium_demangle::OutputStream&) const

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

Parameters

llvm::itanium_demangle::OutputStream&

bool hasArray(
    llvm::itanium_demangle::OutputStream& S) const

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

Parameters

llvm::itanium_demangle::OutputStream& S

virtual bool hasArraySlow(
    llvm::itanium_demangle::OutputStream&) const

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

Parameters

llvm::itanium_demangle::OutputStream&

bool hasFunction(
    llvm::itanium_demangle::OutputStream& S) const

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

Parameters

llvm::itanium_demangle::OutputStream& S

virtual bool hasFunctionSlow(
    llvm::itanium_demangle::OutputStream&) const

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

Parameters

llvm::itanium_demangle::OutputStream&

bool hasRHSComponent(
    llvm::itanium_demangle::OutputStream& S) const

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

Parameters

llvm::itanium_demangle::OutputStream& S

virtual bool hasRHSComponentSlow(
    llvm::itanium_demangle::OutputStream&) const

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

Parameters

llvm::itanium_demangle::OutputStream&

void print(
    llvm::itanium_demangle::OutputStream& S) const

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

Parameters

llvm::itanium_demangle::OutputStream& S

virtual void printLeft(
    llvm::itanium_demangle::OutputStream&) const

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

Parameters

llvm::itanium_demangle::OutputStream&

virtual void printRight(
    llvm::itanium_demangle::OutputStream&) const

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

Parameters

llvm::itanium_demangle::OutputStream&

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

Description

Visit the most-derived object corresponding to this object.

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

Templates

Fn

Parameters

Fn F

virtual ~Node()

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