VariableResolver
Defined in: packages/engine/src/variables/VariableResolver.ts:10
Resolves variable names by querying registered IVariableSource instances in priority order. Supports caching for repeated lookups.
Sources are sorted by priority (lowest first) on registration. When resolving a variable, sources are queried in order and the first non-undefined result wins.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new VariableResolver(): VariableResolver;Returns
Section titled “Returns”VariableResolver
Methods
Section titled “Methods”invalidate()
Section titled “invalidate()”invalidate(name): void;Defined in: packages/engine/src/variables/VariableResolver.ts:85
Invalidate a single variable in the cache, forcing re-resolution on next read.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
name | string |
Returns
Section titled “Returns”void
invalidateAll()
Section titled “invalidateAll()”invalidateAll(): void;Defined in: packages/engine/src/variables/VariableResolver.ts:90
Invalidate all cached variable lookups.
Returns
Section titled “Returns”void
registerSource()
Section titled “registerSource()”registerSource(source): void;Defined in: packages/engine/src/variables/VariableResolver.ts:21
Register a variable source with a given priority. Sources are sorted so lower-priority-number sources are queried first.
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
source | IVariableSource | The variable source to register |
Returns
Section titled “Returns”void
resolve()
Section titled “resolve()”resolve(name): Promise<string | number | undefined>;Defined in: packages/engine/src/variables/VariableResolver.ts:51
Resolve a variable name to its value.
Checks the cache first (if enabled), then queries registered sources in priority order. The first source returning a non-undefined value wins. Cached results are stored and returned on subsequent calls until invalidated.
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
name | string | The variable name to resolve |
Returns
Section titled “Returns”Promise<string | number | undefined>
The resolved value, or undefined if not found in any source
set(name, value): Promise<void>;Defined in: packages/engine/src/variables/VariableResolver.ts:77
Set a variable value across all registered sources. Also updates the local cache so subsequent reads return the new value.
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
name | string | The variable name |
value | string | number | The value to set |
Returns
Section titled “Returns”Promise<void>
setCacheEnabled()
Section titled “setCacheEnabled()”setCacheEnabled(enabled): void;Defined in: packages/engine/src/variables/VariableResolver.ts:95
Enable or disable the lookup cache. When disabled, every read queries sources directly.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
enabled | boolean |
Returns
Section titled “Returns”void
unregisterSource()
Section titled “unregisterSource()”unregisterSource(source): void;Defined in: packages/engine/src/variables/VariableResolver.ts:33
Remove a previously registered variable source (identity match). The lookup cache is cleared because resolution results may change once the source no longer participates.
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
source | IVariableSource | The exact source instance passed to registerSource. |
Returns
Section titled “Returns”void