Lines Matching refs:varbinder
17 #include "varbinder/variableFlags.h"
18 #include "varbinder/ETSBinder.h"
43 static ir::ClassDefinition *GetUnionFieldClass(checker::ETSChecker *checker, varbinder::VarBinder *varbinder)
47 varbinder::Variable *foundVar = nullptr;
49 varbinder::ResolveBindingOptions::BINDINGS)) != nullptr) {
53 auto [decl, var] = varbinder->NewVarDecl<varbinder::ClassDecl>(ident->Start(), ident->Name());
56 auto classCtx = varbinder::LexicalScope<varbinder::ClassScope>(varbinder);
67 varbinder->AsETSBinder()->BuildClassDefinition(classDef);
71 static varbinder::LocalVariable *CreateUnionFieldClassProperty(checker::ETSChecker *checker,
72 varbinder::VarBinder *varbinder,
77 auto *const dummyClass = GetUnionFieldClass(checker, varbinder);
81 auto fieldCtx = varbinder::LexicalScope<varbinder::LocalScope>::Enter(varbinder, classScope->InstanceFieldScope());
83 if (auto *var = classScope->FindLocal(propName, varbinder::ResolveBindingOptions::VARIABLES); var != nullptr) {
95 auto [decl, var] = varbinder->NewVarDecl<varbinder::LetDecl>(fieldIdent->Start(), fieldIdent->Name());
96 var->AddFlag(varbinder::VariableFlags::PROPERTY);
108 static void HandleUnionPropertyAccess(checker::ETSChecker *checker, varbinder::VarBinder *vbind,