MCPcopy
hub / github.com/yume-chan/ya-webadb / AutoDisposable

Class AutoDisposable

libraries/event/src/disposable.ts:5–24  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3}
4
5export class AutoDisposable implements Disposable {
6 #disposables: Disposable[] = [];
7
8 constructor() {
9 this.dispose = this.dispose.bind(this);
10 }
11
12 protected addDisposable<T extends Disposable>(disposable: T): T {
13 this.#disposables.push(disposable);
14 return disposable;
15 }
16
17 dispose() {
18 for (const disposable of this.#disposables) {
19 disposable.dispose();
20 }
21
22 this.#disposables = [];
23 }
24}
25
26export class DisposableList extends AutoDisposable {
27 add<T extends Disposable>(disposable: T): T {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected