HTDeclarationNamespace<T> class

A semantic namespace that holds symbol for resolving.

Inheritance
Mixed-in types
Implementers

Constructors

HTDeclarationNamespace({String? id, String? classId, HTDeclarationNamespace? closure, HTSource? source, required HTLexicon lexicon})

Properties

classId String?
finalinherited
closure HTDeclarationNamespace?
finalinherited
displayName String
no setterinherited
exports Set<String>
final
fullName String
The full closure path of this namespace
no setter
hashCode int
The hash code for this object.
no setterinherited
id String?
finalinherited
idRange SourceRange
finalinherited
importedSymbols Map<String, T>
final
imports Map<String, UnresolvedImportStatement>
final
isConst bool
Wether this declaration is a const value.
finalinherited
isExternal bool
Wether this declaration is from outside of the script.
finalinherited
isMember bool
Wether this declaration is a member of a class or struct.
no setterinherited
isMutable bool
Wether this declaration's value can be assigned to another value.
finalinherited
isPrivate bool
Wether this declaration is only accessible from the same namespace.
no setterinherited
isResolved bool
no setterinherited
isStatic bool
Wether this declaration is static in a class.
finalinherited
isTopLevel bool
Wether this declaration is defined on top level of a source.
finalinherited
lexicon HTLexicon
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
source HTSource?
finalinherited
sourceRange SourceRange
finalinherited
symbols Map<String, T>
final
value ↔ dynamic
getter/setter pairinherited
valueType HTType?
no setterinherited
willExportAll bool
getter/setter pair

Methods

clone() HTDeclarationNamespace<T>
Create a copy of this declaration, mainly used on class member inheritance and function arguments passing.
override
contains(String varName, {bool isPrivate = false, String? from, bool recursive = false}) bool
override
declareExport(String id) → void
declareImport(UnresolvedImportStatement decl) → void
define(String varName, T decl, {bool override = false, bool throws = true}) → void
define a declaration in this namespace, the defined id could be different from declaration's id
defineImport(String key, T decl) → void
delete(String varName, {bool throws = true}) → void
import(HTDeclarationNamespace other, {bool clone = false, bool export = false, Set<String> showList = const {}, bool idOnly = false}) → void
memberGet(String varName, {bool isPrivate = false, String? from, bool isRecursive = false, bool throws = true}) → dynamic
Fetch a value from this namespace, Return declaration rather than actual values. If not found and isRecursive is true, will continue search in super namespaces. If isRecursive is true, means this is not a 'memberget operator' search.
override
memberSet(String varName, dynamic varValue, {String? from}) → void
Assign a value to a member by the varName, in the form of
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
resolve() → void
inherited
subGet(dynamic varName, {String? from}) → dynamic
Fetch a member by the varName, in the form of
inherited
subSet(dynamic varName, dynamic varValue, {String? from}) → void
Assign a value to a member by the varName, in the form of
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited