Represents a lexical scope, where variables, modules, and functions are resolved. It links symbol names with their declarations.

Constructors

Properties

functions: Map<string, FunctionDeclarationStmt> = ...
modules: Map<string, ModuleDeclarationStmt> = ...
parent: null | Scope = null
siblingScopes: Scope[] = []

References to other, 'include'd or 'use'd file scopes, filled by the solution manager. We can use those scopes to resolve types from those files.

variables: Map<string, AssignmentNode> = ...

Methods