• Home
  • Raw
  • Download

Lines Matching +full:allocator +full:-

2  * Copyright (c) 2024-2025 Huawei Device Co., Ltd.
7 * http://www.apache.org/licenses/LICENSE-2.0
23 static ir::Identifier *GenAnnoQualifiedLeft(ArenaAllocator *allocator) in GenAnnoQualifiedLeft() argument
25 …return UAlloc::ForceSetParent<ir::Identifier>(allocator, Signatures::DEFAULT_ANNO_QUALIFIED_LEFT, in GenAnnoQualifiedLeft()
28 static ir::Identifier *GenDefaultAnnoId(ArenaAllocator *allocator) in GenDefaultAnnoId() argument
30 …return UAlloc::ForceSetParent<ir::Identifier>(allocator, Signatures::DEFAULT_ANNO_FOR_FUNC, alloca… in GenDefaultAnnoId()
33 static ir::Identifier *GenDefaultPropId(ArenaAllocator *allocator, util::StringView const name) in GenDefaultPropId() argument
35 return UAlloc::ForceSetParent<ir::Identifier>(allocator, name, allocator); in GenDefaultPropId()
38 static ir::ETSTypeReference *GenDefaultAnnoNameRef(ArenaAllocator *allocator) in GenDefaultAnnoNameRef() argument
41 allocator, GenAnnoQualifiedLeft(allocator), GenDefaultAnnoId(allocator), allocator); in GenDefaultAnnoNameRef()
42 …auto defaultRefPart = UAlloc::ForceSetParent<ir::ETSTypeReferencePart>(allocator, defaultQualified… in GenDefaultAnnoNameRef()
43 nullptr, allocator); in GenDefaultAnnoNameRef()
45 …to defaultRef = UAlloc::ForceSetParent<ir::ETSTypeReference>(allocator, defaultRefPart, allocator); in GenDefaultAnnoNameRef()
49 static ir::AstNode *GenMinArgCountItem(ArenaAllocator *allocator, const int32_t requiredArgs) in GenMinArgCountItem() argument
51 auto *minArgsCountId = GenDefaultPropId(allocator, Signatures::MIN_ARGSCOUNT_OF_FUNC); in GenMinArgCountItem()
52 …auto *minArgsCountValue = UAlloc::ForceSetParent<ir::NumberLiteral>(allocator, lexer::Number(requi… in GenMinArgCountItem()
54allocator, minArgsCountId, minArgsCountValue, nullptr, ir::ModifierFlags::ANNOTATION_USAGE, alloca… in GenMinArgCountItem()
60 auto allocator = ctx->allocator; in CreateDefaultAnnotationUsageForFunction() local
65 for (auto const param : func->Params()) { in CreateDefaultAnnotationUsageForFunction()
66 if (!param->IsETSParameterExpression()) { in CreateDefaultAnnotationUsageForFunction()
67 ES2PANDA_ASSERT(param->IsIdentifier() && param->AsIdentifier()->IsErrorPlaceHolder()); in CreateDefaultAnnotationUsageForFunction()
71 …if (param->AsETSParameterExpression()->IsOptional() || param->AsETSParameterExpression()->IsRestPa… in CreateDefaultAnnotationUsageForFunction()
72 needInsert = param->AsETSParameterExpression()->IsOptional(); in CreateDefaultAnnotationUsageForFunction()
83 ir::ETSTypeReference *defaultRef = GenDefaultAnnoNameRef(allocator); in CreateDefaultAnnotationUsageForFunction()
84 auto *minArgsCount = GenMinArgCountItem(allocator, requiredArgsCnt); in CreateDefaultAnnotationUsageForFunction()
85 ArenaVector<ir::AstNode *> properties(allocator->Adapter()); in CreateDefaultAnnotationUsageForFunction()
87 …return util::NodeAllocator::ForceSetParent<ir::AnnotationUsage>(allocator, defaultRef, std::move(p… in CreateDefaultAnnotationUsageForFunction()
92 if (!node->IsMethodDefinition()) { in TryInsertDefaultAnnotation()
96 auto methodDef = node->AsMethodDefinition(); in TryInsertDefaultAnnotation()
97 … if (!methodDef->IsConstructor() && !methodDef->IsAbstract() && methodDef->Function() != nullptr) { in TryInsertDefaultAnnotation()
98 auto methodFunc = methodDef->Function(); in TryInsertDefaultAnnotation()
101 methodFunc->Annotations().emplace_back(defaultAnno->AsAnnotationUsage()); in TryInsertDefaultAnnotation()
102 defaultAnno->SetParent(methodFunc); in TryInsertDefaultAnnotation()
110 if (program->Extension() != ScriptExtension::ETS) { in PerformForModule()
114 if (program->GetFlag(parser::ProgramFlags::AST_HAS_OPTIONAL_PARAMETER_ANNOTATION)) { in PerformForModule()
118 program->Ast()->IterateRecursivelyPostorder( in PerformForModule()
119 [ctx](ir::AstNode *node) -> void { TryInsertDefaultAnnotation(ctx, node); }); in PerformForModule()
121 program->SetFlag(parser::ProgramFlags::AST_HAS_OPTIONAL_PARAMETER_ANNOTATION); in PerformForModule()