aosp12/external/google-fruit
hcl 7be3fd486c init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
..
cmake-modules init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
configuration init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
examples init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
extras init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
include/fruit init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
src init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
test_package init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
tests init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
.clang-format init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
.gitattributes init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
.gitignore init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
.travis.yml init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
Android.bp init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
BUILD init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
CMakeLists.txt init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
CONTRIBUTING.md init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
COPYING init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
LICENSE init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
METADATA init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
MODULE_LICENSE_APACHE2 init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
OWNERS init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
README.md init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
appveyor.yml init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00
conanfile.py init from android-12.1.0_r8 2023-01-09 17:11:35 +08:00

README.md

Build Status Build status Coverity Scan Status CII Best Practices

Fruit is a dependency injection framework for C++, loosely inspired by the Guice framework for Java. It uses C++ metaprogramming together with some 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 wiki for more information, including installation instructions, tutorials and reference documentation.