Lines Matching refs:parent
305 for (const auto *parent = node->Parent(); parent != nullptr; parent = parent->Parent()) {
306 if (parent->IsClassDefinition()) {
307 ASSERT(parent->AsClassDefinition()->Ctor() != nullptr);
308 return parent->AsClassDefinition()->Ctor()->Function();
317 for (const auto *parent = node->Parent(); parent != nullptr; parent = parent->Parent()) {
318 if (parent->IsScriptFunction()) {
319 return parent->AsScriptFunction();
504 static util::StringView FunctionNameFromParent(const ir::AstNode *parent, ArenaAllocator *allocator)
506 switch (parent->Type()) {
508 const ir::VariableDeclarator *varDecl = parent->AsVariableDeclarator();
517 const ir::MethodDefinition *methodDef = parent->AsMethodDefinition();
533 const ir::AssignmentExpression *assignment = parent->AsAssignmentExpression();
542 const ir::AssignmentExpression *assignment = parent->AsAssignmentPattern();
551 const ir::Property *prop = parent->AsProperty();
577 const ir::AstNode *parent = func->Parent()->Parent();
580 parent = parent->Parent();
581 if (parent->AsClassDefinition()->Ident() != nullptr) {
582 return parent->AsClassDefinition()->Ident()->Name();
585 parent = parent->Parent()->Parent();
588 return FunctionNameFromParent(parent, allocator);