Extensions
Defined in: src/Extension.ts:42
Per-system registry. Holds at most one instance per ExtensionId.key.
First .get(id) triggers id.createExtension(system) and caches the
result; subsequent calls return the same instance.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new Extensions(
system):Extensions
Defined in: src/Extension.ts:45
Parameters
Section titled “Parameters”system
Section titled “system”Returns
Section titled “Returns”Extensions
Methods
Section titled “Methods”get<
T>(id):T
Defined in: src/Extension.ts:48
Return the extension for id, creating it lazily if needed.
Type Parameters
Section titled “Type Parameters”T extends Extension
Parameters
Section titled “Parameters”ExtensionId<T>
Returns
Section titled “Returns”T
has<
T>(id):boolean
Defined in: src/Extension.ts:57
True if the extension has already been created.
Type Parameters
Section titled “Type Parameters”T extends Extension
Parameters
Section titled “Parameters”ExtensionId<T>
Returns
Section titled “Returns”boolean
loaded()
Section titled “loaded()”loaded():
string[]
Defined in: src/Extension.ts:72
Snapshot the names of currently-loaded extensions — diagnostic only.
Returns
Section titled “Returns”string[]
preload()
Section titled “preload()”preload(
ids):void
Defined in: src/Extension.ts:67
Eagerly initialise a batch of extensions (e.g. read from config).
Parameters
Section titled “Parameters”Returns
Section titled “Returns”void
put<
T>(id,instance):void
Defined in: src/Extension.ts:62
Register a pre-built instance — useful for tests that mock an extension.
Type Parameters
Section titled “Type Parameters”T extends Extension
Parameters
Section titled “Parameters”ExtensionId<T>
instance
Section titled “instance”T
Returns
Section titled “Returns”void