/arkcompiler/ets_frontend/ets2panda/varbinder/ |
H A D | variable.h | 83 [[nodiscard]] VariableFlags Flags() const noexcept 116 void AddFlag(VariableFlags flag) noexcept 121 [[nodiscard]] bool HasFlag(VariableFlags flag) const noexcept 126 void RemoveFlag(VariableFlags flag) noexcept 131 void Reset(Decl *decl, VariableFlags flags) noexcept 139 return HasFlag(VariableFlags::LEXICAL_BOUND); 146 explicit Variable(Decl *decl, VariableFlags flags) : decl_(decl), flags_(flags) {} in Variable() 147 explicit Variable(VariableFlags flags) : flags_(flags) {} in Variable() 151 VariableFlags flags_ {}; 161 explicit LocalVariable(Decl *decl, VariableFlags flag [all...] |
H A D | scope.cpp | 258 IterateShadowedVariables(newDecl->Name(), [](const Variable *v) { return !v->HasFlag(VariableFlags::VAR); }); in AddLocalVar() 264 VariableFlags varFlags = VariableFlags::HOIST_VAR | VariableFlags::LEXICAL_VAR; in AddLocalVar() 275 VariableFlags flags = VariableFlags::LEXICAL; in AddLocal() 285 .insert({newDecl->Name(), allocator->New<LocalVariable>(newDecl, VariableFlags::ENUM_LITERAL)}) in AddLocal() 289 return bindings_.insert({newDecl->Name(), allocator->New<LocalVariable>(newDecl, VariableFlags::INTERFACE)}) in AddLocal() 293 return bindings_.insert({newDecl->Name(), allocator->New<LocalVariable>(newDecl, VariableFlags::CLASS)}) in AddLocal() 298 .insert({newDecl->Name(), allocator->New<LocalVariable>(newDecl, VariableFlags in AddLocal() [all...] |
H A D | variable.cpp | 25 LocalVariable::LocalVariable(Decl *decl, VariableFlags flags) : Variable(decl, flags) in LocalVariable() 28 flags_ |= VariableFlags::READONLY; in LocalVariable() 32 LocalVariable::LocalVariable(VariableFlags flags) : Variable(flags) {} in LocalVariable()
|
H A D | scope.h | 236 VariableType *AddDecl(ArenaAllocator *allocator, util::StringView name, VariableFlags flags); 239 static VariableType *CreateVar(ArenaAllocator *allocator, util::StringView name, VariableFlags flags, 410 Variable *AddTSBinding(ArenaAllocator *allocator, Variable *currentVariable, Decl *newDecl, VariableFlags flags); 446 Variable *AddParam(ArenaAllocator *allocator, Variable *currentVariable, Decl *newDecl, VariableFlags flags); 713 void SetFlagsType(VariableFlags flagsType) in SetFlagsType() 717 void SetBindingProps(VariableFlags flags, ir::Identifier *ident, LocalScope *targetScope) in SetBindingProps() 723 VariableFlags GetFlags() const in GetFlags() 737 VariableFlags flags_ = VariableFlags::NONE; 953 return InsertBinding(newDecl->Name(), allocator->New<T>(newDecl, VariableFlags in AddVar() [all...] |
H A D | varbinder.cpp | 172 (*scope)->AddDecl<ConstDecl, LocalVariable>(Allocator(), FUNCTION_ARGUMENTS, VariableFlags::INITIALIZED); in InstantiateArgumentsImpl() 232 if (!variable->HasFlag(VariableFlags::INITIALIZED)) { in InstantiatePrivateContext() 272 if (res.variable->Declaration()->IsLetOrConstDecl() && !res.variable->HasFlag(VariableFlags::INITIALIZED)) { in LookupIdentReference() 315 variable->AddFlag(VariableFlags::INITIALIZED); in BuildVarDeclaratorId() 384 res.variable->AddFlag(VariableFlags::INITIALIZED); in InitializeClassBinding() 393 res.variable->AddFlag(VariableFlags::INITIALIZED); in InitializeClassIdent() 409 variable->AddFlag(VariableFlags::INITIALIZED); in BuildClassDefinition() 649 auto *param = Allocator()->New<LocalVariable>(decl, VariableFlags::VAR); in AddMandatoryParam()
|
/arkcompiler/ets_frontend/es2panda/binder/ |
H A D | variable.h | 77 VariableFlags Flags() const in Flags() 92 void AddFlag(VariableFlags flag) in AddFlag() 97 bool HasFlag(VariableFlags flag) const in HasFlag() 102 void RemoveFlag(VariableFlags flag) in RemoveFlag() 107 void Reset(Decl *decl, VariableFlags flags) in Reset() 115 return HasFlag(VariableFlags::LEXICAL_BOUND); in LexicalBound() 120 return HasFlag(VariableFlags::IN_SENDABLE_ENV); in InSendableEnv() 127 explicit Variable(Decl *decl, VariableFlags flags) : decl_(decl), flags_(flags) {} in Variable() 130 VariableFlags flags_ {}; 136 explicit LocalVariable(Decl *decl, VariableFlags flag [all...] |
H A D | scope.cpp | 426 VariableFlags flags = VariableFlags::NONE; in AddLocal() 430 newDecl->Name(), [](const Variable *v) { return !v->HasFlag(VariableFlags::VAR); }); in AddLocal() 436 VariableFlags varFlags = VariableFlags::HOIST_VAR; in AddLocal() 447 newDecl->Name(), allocator->New<EnumLiteralVariable>(newDecl, VariableFlags::ENUM_LITERAL)); in AddLocal() 450 bindings_.insert({newDecl->Name(), allocator->New<LocalVariable>(newDecl, VariableFlags::INTERFACE)}); in AddLocal() 454 flags = VariableFlags::HOIST; in AddLocal() 472 bool ParamScope::AddParam(ArenaAllocator *allocator, Variable *currentVariable, Decl *newDecl, VariableFlags flags) in AddParam() 496 if (!AddParam(allocator, FindLocal(name), decl, VariableFlags in AddParamDecl() [all...] |
H A D | scope.h | 331 VariableType *AddDecl(ArenaAllocator *allocator, util::StringView name, VariableFlags flags); 334 static VariableType *CreateVar(ArenaAllocator *allocator, util::StringView name, VariableFlags flags, 592 inline VariableFlags DeclFlagToVariableFlag(DeclarationFlags declFlag); 605 bool AddTSBinding(ArenaAllocator *allocator, Variable *currentVariable, Decl *newDecl, VariableFlags flags); 608 bool AddTSBinding(ArenaAllocator *allocator, Decl *newDecl, VariableFlags flags); 655 bool AddParam(ArenaAllocator *allocator, Variable *currentVariable, Decl *newDecl, VariableFlags flags); 1206 inline VariableFlags VariableScope::DeclFlagToVariableFlag(DeclarationFlags declFlag) in DeclFlagToVariableFlag() 1208 VariableFlags varFlag = VariableFlags::NONE; in DeclFlagToVariableFlag() 1210 varFlag = VariableFlags in DeclFlagToVariableFlag() [all...] |
H A D | variable.cpp | 24 LocalVariable::LocalVariable(Decl *decl, VariableFlags flags) : Variable(decl, flags) in LocalVariable() 27 flags_ |= VariableFlags::READONLY; in LocalVariable() 68 AddFlag(VariableFlags::IN_SENDABLE_ENV); in SetLexical()
|
/arkcompiler/ets_frontend/ets2panda/checker/types/ts/ |
H A D | tupleType.cpp | 43 if ((*it)->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in ToString() 56 if ((*it)->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in ToString() 118 if (!targetProp->HasFlag(varbinder::VariableFlags::OPTIONAL) && in AssignmentTarget() 119 sourceProperties[i]->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in AssignmentTarget() 133 if (!targetProp->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in AssignmentTarget()
|
H A D | objectType.cpp | 138 if (found->HasFlag(varbinder::VariableFlags::OPTIONAL) && in AssignProperties() 139 !it->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in AssignProperties() 147 if (numberInfo != nullptr && it->HasFlag(varbinder::VariableFlags::NUMERIC_NAME) && in AssignProperties() 156 if (!it->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in AssignProperties() 199 if (assignNumberInfo && !it->HasFlag(varbinder::VariableFlags::NUMERIC_NAME)) { in AssignIndexInfo() 215 if (found != nullptr || (it->HasFlag(varbinder::VariableFlags::NUMERIC_NAME) && NumberIndexInfo() != nullptr) || in CheckExcessProperties()
|
H A D | objectLiteralType.cpp | 51 if (it->HasFlag(varbinder::VariableFlags::READONLY)) { in ToString() 56 if (it->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in ToString() 59 if (it->HasFlag(varbinder::VariableFlags::PROPERTY)) { in ToString()
|
/arkcompiler/ets_frontend/es2panda/typescript/types/ |
H A D | tupleType.cpp | 44 if ((*it)->HasFlag(binder::VariableFlags::OPTIONAL)) { in ToString() 57 if ((*it)->HasFlag(binder::VariableFlags::OPTIONAL)) { in ToString() 117 if (!targetProp->HasFlag(binder::VariableFlags::OPTIONAL) && in AssignmentTarget() 118 sourceProperties[i]->HasFlag(binder::VariableFlags::OPTIONAL)) { in AssignmentTarget() 132 if (!targetProp->HasFlag(binder::VariableFlags::OPTIONAL)) { in AssignmentTarget()
|
H A D | objectType.cpp | 142 if (found->HasFlag(binder::VariableFlags::OPTIONAL) && !it->HasFlag(binder::VariableFlags::OPTIONAL)) { in AssignProperties() 150 if (numberInfo && it->HasFlag(binder::VariableFlags::NUMERIC_NAME) && in AssignProperties() 159 if (!it->HasFlag(binder::VariableFlags::OPTIONAL)) { in AssignProperties() 202 if (assignNumberInfo && !it->HasFlag(binder::VariableFlags::NUMERIC_NAME)) { in AssignIndexInfo() 218 if (found || (it->HasFlag(binder::VariableFlags::NUMERIC_NAME) && NumberIndexInfo()) || StringIndexInfo()) { in checkExcessProperties()
|
H A D | objectLiteralType.cpp | 52 if (it->HasFlag(binder::VariableFlags::READONLY)) { in ToString() 57 if (it->HasFlag(binder::VariableFlags::OPTIONAL)) { in ToString() 60 if (it->HasFlag(binder::VariableFlags::PROPERTY)) { in ToString()
|
H A D | tupleType.h | 47 it->AddFlag(binder::VariableFlags::READONLY); in TupleType() 64 it->AddFlag(binder::VariableFlags::READONLY); in TupleType()
|
/arkcompiler/ets_frontend/ets2panda/compiler/core/ |
H A D | envScope.h | 81 CopyBindings(pg, scope, varbinder::VariableFlags::PER_ITERATION); in LoopEnvScope() 87 CopyBindings(pg, scope, varbinder::VariableFlags::PER_ITERATION); in LoopEnvScope() 93 CopyBindings(pg, scope, varbinder::VariableFlags::LOOP_DECL); 115 void CopyBindings(PandaGen *pg, varbinder::VariableScope *scope, varbinder::VariableFlags flag);
|
/arkcompiler/ets_frontend/ets2panda/checker/ets/ |
H A D | validateHelpers.cpp | 58 if (var->HasFlag(varbinder::VariableFlags::METHOD)) { in ValidatePropertyAccess() 62 if (var->HasFlag(varbinder::VariableFlags::PRIVATE) || var->HasFlag(varbinder::VariableFlags::PROTECTED)) { in ValidatePropertyAccess() 69 if (var->HasFlag(varbinder::VariableFlags::PROTECTED) && Context().ContainingClass()->IsDescendantOf(obj) && in ValidatePropertyAccess() 90 if (resolved->HasFlag(varbinder::VariableFlags::CLASS_OR_INTERFACE) && in ValidateCallExpressionIdentifier() 130 !resolved->HasFlag(varbinder::VariableFlags::CLASS_OR_INTERFACE)) { in ValidateNewClassInstanceIdentifier() 264 !variable->HasFlag(varbinder::VariableFlags::EXPLICIT_INIT_REQUIRED)) { in ValidateUnaryOperatorOperand()
|
/arkcompiler/ets_frontend/ets2panda/ast_verifier/ |
H A D | importExportAccessValid.cpp | 103 if (!var->HasFlag(varbinder::VariableFlags::LOCAL) && !var->HasFlag(varbinder::VariableFlags::VAR) && in InvariantImportExportVariable() 104 var->HasFlag(varbinder::VariableFlags::INITIALIZED) && var->Declaration() != nullptr && in InvariantImportExportVariable() 130 if (var->HasFlag(varbinder::VariableFlags::METHOD) && callExpr != nullptr) { in HandleImportExportIdentifier()
|
H A D | modifierAccessValid.cpp | 41 if (propVar != nullptr && propVar->HasFlag(varbinder::VariableFlags::PROPERTY) && in HandleMethodExpression() 59 if (propVarCallee != nullptr && propVarCallee->HasFlag(varbinder::VariableFlags::METHOD) && in HandleCallExpression()
|
/arkcompiler/ets_frontend/ets2panda/checker/ts/ |
H A D | object.cpp | 56 if (it->HasFlag(varbinder::VariableFlags::NUMERIC_NAME)) { in CheckIndexConstraints() 272 varbinder::VariableFlags propagateFlags) in GetPropertyOfType() 287 varbinder::VariableFlags propagateFlags) in GetPropertyOfUnionType() 294 varbinder::VariableFlags flags = varbinder::VariableFlags::PROPERTY; in GetPropertyOfUnionType() 328 if (prop->HasFlag(varbinder::VariableFlags::OPTIONAL)) { in GetPropertyOfUnionType() 329 flags |= varbinder::VariableFlags::OPTIONAL; in GetPropertyOfUnionType() 411 if (prop->HasFlag(varbinder::VariableFlags::READONLY)) { in GetPropertyTypeForIndexType() 531 if (prop->HasFlag(varbinder::VariableFlags::COMPUTED)) { in ValidateInterfaceMemberRedeclaration()
|
H A D | function.cpp | 131 paramVar->AddFlag(varbinder::VariableFlags::OPTIONAL); in CheckFunctionIdentifierParameter() 158 Allocator(), memberIndex, varbinder::VariableFlags::PROPERTY | varbinder::VariableFlags::OPTIONAL, nullptr); in CreateParameterTypeForArrayAssignmentPattern() 184 foundVar->AddFlag(varbinder::VariableFlags::OPTIONAL); in CreateParameterTypeForObjectAssignmentPattern() 195 varbinder::VariableFlags::PROPERTY | varbinder::VariableFlags::OPTIONAL, nullptr); in CreateParameterTypeForObjectAssignmentPattern() 221 paramVar->AddFlag(varbinder::VariableFlags::OPTIONAL); in CheckFunctionAssignmentPatternParameter() 248 varbinder::Scope::CreateVar(Allocator(), pn.View(), varbinder::VariableFlags::NONE, param); in CheckFunctionAssignmentPatternParameter() 250 patternVar->AddFlag(varbinder::VariableFlags::OPTIONAL); in CheckFunctionAssignmentPatternParameter() 311 varbinder::Scope::CreateVar(Allocator(), pn.View(), varbinder::VariableFlags in CheckFunctionArrayPatternParameter() [all...] |
/arkcompiler/ets_frontend/es2panda/typescript/core/ |
H A D | function.cpp | 133 paramVar->AddFlag(binder::VariableFlags::OPTIONAL); in CheckFunctionIdentifierParameter() 160 allocator_, memberIndex, binder::VariableFlags::PROPERTY | binder::VariableFlags::OPTIONAL, nullptr); in CreateParameterTypeForArrayAssignmentPattern() 188 foundVar->AddFlag(binder::VariableFlags::OPTIONAL); in CreateParameterTypeForObjectAssignmentPattern() 199 binder::VariableFlags::PROPERTY | binder::VariableFlags::OPTIONAL, nullptr); in CreateParameterTypeForObjectAssignmentPattern() 226 paramVar->AddFlag(binder::VariableFlags::OPTIONAL); in CheckFunctionAssignmentPatternParameter() 253 binder::Scope::CreateVar(allocator_, pn.View(), binder::VariableFlags::NONE, param); in CheckFunctionAssignmentPatternParameter() 255 patternVar->AddFlag(binder::VariableFlags::OPTIONAL); in CheckFunctionAssignmentPatternParameter() 332 binder::Scope::CreateVar(allocator_, pn.View(), binder::VariableFlags in CheckFunctionArrayPatternParameter() [all...] |
H A D | object.cpp | 58 if (it->HasFlag(binder::VariableFlags::NUMERIC_NAME)) { in CheckIndexConstraints() 278 binder::VariableFlags propagateFlags) in GetPropertyOfType() 293 binder::VariableFlags propagateFlags) in GetPropertyOfUnionType() 301 binder::VariableFlags flags = binder::VariableFlags::PROPERTY; in GetPropertyOfUnionType() 337 if (prop->HasFlag(binder::VariableFlags::OPTIONAL)) { in GetPropertyOfUnionType() 338 flags |= binder::VariableFlags::OPTIONAL; in GetPropertyOfUnionType() 424 if (prop->HasFlag(binder::VariableFlags::READONLY)) { in GetPropertyTypeForIndexType() 538 if (prop->HasFlag(binder::VariableFlags::COMPUTED)) { in ValidateInterfaceMemberRedeclaration()
|
/arkcompiler/ets_frontend/es2panda/ir/expressions/ |
H A D | objectExpression.cpp | 584 checker->Allocator(), prop->Key()->AsIdentifier()->Name(), binder::VariableFlags::PROPERTY, *it); in CheckPattern() 588 patternVar->AddFlag(binder::VariableFlags::OPTIONAL); in CheckPattern() 614 binder::VariableFlags GetFlagsForProperty(const ir::Property *prop) in GetFlagsForProperty() 617 return binder::VariableFlags::PROPERTY; in GetFlagsForProperty() 620 binder::VariableFlags propFlags = binder::VariableFlags::METHOD; in GetFlagsForProperty() 623 propFlags |= binder::VariableFlags::READONLY; in GetFlagsForProperty() 682 binder::VariableFlags flags = GetFlagsForProperty(prop); in Check() 688 memberVar->AddFlag(binder::VariableFlags::READONLY); in Check() 696 memberVar->AddFlag(binder::VariableFlags in Check() [all...] |