##// END OF EJS Templates
working on fluent configuration
working on fluent configuration

File last commit:

r132:0866c6259285 ioc ts support
r132:0866c6259285 ioc ts support
Show More
Annotations.ts
30 lines | 903 B | video/mp2t | TypeScriptLexer
/ src / main / ts / di / Annotations.ts
cin
fluent configuration interfaces
r127 import { TypeRegistration } from "./Configuration";
import { ExtractDependency } from "./fluent/interfaces";
cin
working on fluent configuration
r132 import { RegistrationBuilder } from "./fluent/RegistrationBuilder";
cin
working on di decorators
r109
cin
fluent configuration interfaces
r127 export class AnnotaionBuilder<T, S extends object> {
wire<P extends any[]>(...args: P) {
cin
Working on IoC container configuration
r111 return <C extends new (...args: ExtractDependency<P, S>) => T>(constructor: C) => {
cin
improved interfaces and more tight type checking
r120
cin
dependency builder proposal
r108 };
}
cin
configuration interfaces moved to di/Configuration module...
r118 inject<P extends any[]>(...args: P) {
return <X extends { [m in M]: (...args: any) => any }, M extends keyof (T | X)>(
target: X,
memberName: M,
cin
fluent configuration interfaces
r127 descriptor: TypedPropertyDescriptor< T[M] extends ((...args: ExtractDependency<P, S>) => any) ? any : never >
cin
configuration interfaces moved to di/Configuration module...
r118 ) => {
cin
dependency builder proposal
r108
};
}
cin
sync
r121 getDescriptor(): TypeRegistration<new () => T, S> {
cin
configuration interfaces moved to di/Configuration module...
r118 throw new Error();
}
cin
working on fluent configuration
r132 getRegistrationBuilder(): RegistrationBuilder<T, S> {
throw new Error();
}
cin
configuration draft-1
r119 }