Lines Matching refs:Node
85 void print(const Node *N) { in print()
95 for (const Node *N : A) { in print()
176 void print(Node::Prec P) { in print()
178 case Node::Prec::Primary: in print()
180 case Node::Prec::Postfix: in print()
182 case Node::Prec::Unary: in print()
184 case Node::Prec::Cast: in print()
186 case Node::Prec::PtrMem: in print()
188 case Node::Prec::Multiplicative: in print()
190 case Node::Prec::Additive: in print()
192 case Node::Prec::Shift: in print()
194 case Node::Prec::Spaceship: in print()
196 case Node::Prec::Relational: in print()
198 case Node::Prec::Equality: in print()
200 case Node::Prec::And: in print()
202 case Node::Prec::Xor: in print()
204 case Node::Prec::Ior: in print()
206 case Node::Prec::AndIf: in print()
208 case Node::Prec::OrIf: in print()
210 case Node::Prec::Conditional: in print()
212 case Node::Prec::Assign: in print()
214 case Node::Prec::Comma: in print()
216 case Node::Prec::Default: in print()
257 template<typename NodeT> void operator()(const NodeT *Node) { in operator ()()
260 Node->match(CtorArgPrinter{*this}); in operator ()()
265 void operator()(const ForwardTemplateReference *Node) { in operator ()()
268 if (Node->Ref && !Node->Printing) { in operator ()()
269 Node->Printing = true; in operator ()()
270 CtorArgPrinter{*this}(Node->Ref); in operator ()()
271 Node->Printing = false; in operator ()()
273 CtorArgPrinter{*this}(Node->Index); in operator ()()
281 void itanium_demangle::Node::dump() const { in dump()
358 return Alloc.allocate(sizeof(Node *) * sz); in allocateNodeArray()
375 Node *AST = Parser.parse(ParseParams); in itaniumDemangle()
415 static char *printNode(const Node *RootNode, char *Buf, size_t *N) { in printNode()
428 const Node *Name = static_cast<const FunctionEncoding *>(RootNode)->getName(); in getFunctionBaseName()
432 case Node::KAbiTagAttr: in getFunctionBaseName()
435 case Node::KModuleEntity: in getFunctionBaseName()
438 case Node::KNestedName: in getFunctionBaseName()
441 case Node::KLocalName: in getFunctionBaseName()
444 case Node::KNameWithTemplateArgs: in getFunctionBaseName()
457 const Node *Name = static_cast<const FunctionEncoding *>(RootNode)->getName(); in getFunctionDeclContextName()
463 if (Name->getKind() == Node::KAbiTagAttr) { in getFunctionDeclContextName()
467 if (Name->getKind() == Node::KNameWithTemplateArgs) { in getFunctionDeclContextName()
474 if (Name->getKind() == Node::KModuleEntity) in getFunctionDeclContextName()
478 case Node::KNestedName: in getFunctionDeclContextName()
481 case Node::KLocalName: { in getFunctionDeclContextName()
528 if (const Node *Ret = in getFunctionReturnType()
540 return printNode(static_cast<Node *>(RootNode), Buf, N); in finishDemangle()
552 const Node *N = static_cast<const Node *>(RootNode); in isCtorOrDtor()
557 case Node::KCtorDtorName: in isCtorOrDtor()
560 case Node::KAbiTagAttr: in isCtorOrDtor()
563 case Node::KFunctionEncoding: in isCtorOrDtor()
566 case Node::KLocalName: in isCtorOrDtor()
569 case Node::KNameWithTemplateArgs: in isCtorOrDtor()
572 case Node::KNestedName: in isCtorOrDtor()
575 case Node::KModuleEntity: in isCtorOrDtor()
585 return static_cast<const Node *>(RootNode)->getKind() == in isFunction()
586 Node::KFunctionEncoding; in isFunction()
591 auto K = static_cast<const Node *>(RootNode)->getKind(); in isSpecialName()
592 return K == Node::KSpecialName || K == Node::KCtorVtableSpecialName; in isSpecialName()