Lines Matching refs:varbinder
18 #include "varbinder/ETSBinder.h"
28 static ir::ClassProperty *CreateCapturedField(checker::ETSChecker *checker, const varbinder::Variable *capturedVar,
29 varbinder::ClassScope *scope, size_t &idx,
36 auto fieldCtx = varbinder::LexicalScope<varbinder::LocalScope>::Enter(varBinder, scope->InstanceFieldScope());
50 auto [decl, var] = varBinder->NewVarDecl<varbinder::LetDecl>(pos, fieldIdent->Name());
52 var->AddFlag(varbinder::VariableFlags::PROPERTY);
61 static ir::Statement *CreateCtorFieldInit(checker::ETSChecker *checker, util::StringView name, varbinder::Variable *var)
83 public_lib::Context *ctx, ir::ClassDefinition *classDef, ArenaSet<varbinder::Variable *> const &capturedVars,
84 ArenaMap<varbinder::Variable *, varbinder::Variable *> &variableMap,
85 ArenaMap<varbinder::Variable *, ir::ClassProperty *> &propertyMap)
91 ASSERT(classDef->Scope()->Type() == varbinder::ScopeType::CLASS);
92 auto *property = CreateCapturedField(checker, var, reinterpret_cast<varbinder::ClassScope *>(classDef->Scope()),
106 varbinder::FunctionParamScope *scope,
112 auto paramCtx = varbinder::LexicalScope<varbinder::FunctionParamScope>::Enter(checker->VarBinder(), scope, false);
121 public_lib::Context *ctx, ir::ClassDefinition *classDef, ArenaSet<varbinder::Variable *> const &capturedVars,
122 ArenaMap<varbinder::Variable *, varbinder::Variable *> &variableMap,
123 ArenaMap<varbinder::Variable *, varbinder::Variable *> ¶meterMap)
148 ASSERT(newParam->Variable()->Type() == varbinder::VariableType::LOCAL);
152 reinterpret_cast<varbinder::ETSBinder *>(checker->VarBinder())->BuildFunctionName(constructor);
180 ir::ClassDefinition *classDef, ArenaMap<varbinder::Variable *, varbinder::Variable *> &variableMap)
218 ArenaUnorderedMap<ir::ClassDefinition *, ArenaSet<varbinder::Variable *>> capturedVarsMap {allocator->Adapter()};
224 ArenaMap<varbinder::Variable *, varbinder::Variable *> variableMap(ctx->allocator->Adapter());
226 ArenaMap<varbinder::Variable *, ir::ClassProperty *> propertyMap(ctx->allocator->Adapter());
228 ArenaMap<varbinder::Variable *, varbinder::Variable *> parameterMap(ctx->allocator->Adapter());