UNPKG

dipperts

Version:

Dependency injection library for typescript.

29 lines (23 loc) 696 B
import { IResolve, ResolverType } from "./IResolve"; import { IProvideResolve } from "./IProvideResolve"; /** * A class that provides a resolver which always delivers a new instance. * Does not track disposables. */ export class Transient<T> implements IProvideResolve<T> { constructor(private create: () => T) { } public resolve(): T { return this.create(); } public toResolver(): IResolve<T> { return Object.assign(() => this.resolve(), { toOrigin: () => this, resolverType: ResolverType.Transient }); } public reset(): void { } public dispose(): void { } }