diff --git a/src/annotations.js b/src/annotations.js index a8a8302..37677bb 100644 --- a/src/annotations.js +++ b/src/annotations.js @@ -148,6 +148,42 @@ function readAnnotations(fn) { return collectedAnnotations; } +// Decorator versions of annotation classes +function inject(...tokens) { + return function(fn) { + annotate(fn, new Inject(...tokens)); + }; +} + +function inject(...tokens) { + return function(fn) { + annotate(fn, new Inject(...tokens)); + }; +} + +function injectPromise(...tokens) { + return function(fn) { + annotate(fn, new InjectPromise(...tokens)); + }; +} + +function injectLazy(...tokens) { + return function(fn) { + annotate(fn, new InjectLazy(...tokens)); + }; +} + +function provide(...tokens) { + return function(fn) { + annotate(fn, new Provide(...tokens)); + }; +} + +function providePromise(...tokens) { + return function(fn) { + annotate(fn, new ProvidePromise(...tokens)); + }; +} export { annotate, @@ -162,5 +198,11 @@ export { Provide, ProvidePromise, ClassProvider, - FactoryProvider + FactoryProvider, + + inject, + injectPromise, + injectLazy, + provide, + providePromise, }; diff --git a/src/index.js b/src/index.js index dd19076..37a3e11 100644 --- a/src/index.js +++ b/src/index.js @@ -11,5 +11,10 @@ export { SuperConstructor, TransientScope, ClassProvider, - FactoryProvider + FactoryProvider, + inject, + injectPromise, + injectLazy, + provide, + providePromise } from './annotations';