Component<intAnnot> getComponent() { return createComponent() .registerConstructor<intAnnot()>() .registerConstructor<intAnnot()>(); }
Component<Required<std::string>, std::string> getComponent() { return createComponent(); }
Component<ScalerFactory> getScalerComponent() { return createComponent() .bind<Scaler, ScalerImpl>() .registerFactory<fruit::Annotated<Annotation, ScalerImpl>(Assisted<double>)>([](double) { return (ScalerImpl*)nullptr; }); }
Component<Required<X, X>> getComponent() { return createComponent(); }
Component<int> getComponent() { return createComponent() .registerConstructor<int()>() .install(getParentComponent()); }
Component<ScalerFactoryAnnot> getScalerComponent() { return createComponent() .bind<ScalerAnnot, fruit::Annotated<Annotation, ScalerImpl>>(); }