##// END OF EJS Templates
working on IoC container
working on IoC container

File last commit:

r38:d3813a6cdb36 di-typescript
r38:d3813a6cdb36 di-typescript
Show More
ModuleResolverBase.ts
22 lines | 621 B | video/mp2t | TypeScriptLexer
/ src / ts / di / ModuleResolverBase.ts
import { argumentNotEmptyString, get } from "../safe";
export abstract class ModuleResolverBase {
async resolve(typeName: string) {
argumentNotEmptyString(typeName, "typeName");
const [moduleName, localName] = typeName.split("#", 2);
const moduleObject = await this.loadModule(moduleName);
return localName ? get(localName, moduleObject) : moduleObject;
}
beginBatch() {
}
completeBatch() {
}
abstract loadModule(moduleName: string): PromiseLike<object>;
abstract createResolver(moduleName: string, opts?: object): PromiseLike<ModuleResolverBase>;
}