Home | History | Annotate | Download | only in fruit

Lines Matching refs:INJECT

26  * A convenience macro to define the Inject typedef while declaring/defining the constructor that will be used for
34 * INJECT(MyClass(Foo* foo, Bar* bar)) {...}
41 * using Inject = MyClass(Foo*, Bar*);
50 * INJECT(MyClass(Foo* foo, ASSISTED(int) n) {...}
57 * using Inject = MyClass(Foo*, Assisted<int>);
66 * INJECT(MyClass(ANNOTATED(SomeAnnotation, Foo*) foo, Bar* bar)) {...}
69 * ASSISTED and ANNOTATED *can* be used together in the same INJECT() annotation, but they can't both be used for a
75 * In those cases, define the Inject annotation manually or use registerConstructor()/registerFactory() instead.
83 * NOTE: In addition to the public Inject typedef, two typedefs (FruitAssistedTypedef and FruitAnnotatedTypedef) will be
85 * INJECT macro (unlikely but possible) these typedefs are an implementation detail of Fruit and should not be used.
88 * MyClass (or MyClass factory) can be injected from any INJECT declaration.
90 #define INJECT(Signature) \
91 using Inject = Signature; \
106 * NOTE: don't use these directly, they're only used to implement the INJECT macro.