Fix a bug that caused a compilation error when registering a factory of unique_ptr<C> when C was not copy-constructible.
Also add tests for the non-unique_ptr factory case now that those flows are no longer exercised by the unique_ptr factory tests.
Fixes #14.
26 files changed
tree: 14164d5519416f0f086f860d4234758b1fb925bd
  1. configuration/
  2. examples/
  3. extras/
  4. include/
  5. src/
  6. tests/
  7. .gitignore
  8. .travis.yml
  9. BUILD
  10. CMakeLists.txt
  11. COPYING
  12. README.md
  13. WORKSPACE
README.md

Build Status Coverity Scan Status

Fruit is a dependency injection framework for C++, loosely inspired by the Guice framework for Java. It uses C++ metaprogramming together with some new C++11 features to detect most injection problems at compile-time. It allows to split the implementation code in "components" (aka modules) that can be assembled to form other components. From a component with no requirements it's then possible to create an injector, that provides an instance of the interfaces exposed by the component.

See the Fruit website for more information, including installation instructions, tutorials and reference documentation.