fruit/3.7.1

C++ dependency injection framework
Recipe info
2023-08-29

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
fruit/3.7.1

Using fruit

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
fruit/3.7.1
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("fruit/3.7.1")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): fruit
  • CMake target name(s): fruit::fruit
  • pkg-config file name(s): fruit.pc

A simple use case using the CMake file name and the global target:

# ...
find_package(fruit REQUIRED)
# ...
target_link_libraries(YOUR_TARGET fruit::fruit)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the fruit homepage listed above:

#include "fruit/component.h"
#include "fruit/component_function.h"
#include "fruit/fruit.h"
#include "fruit/fruit_forward_decls.h"
#include "fruit/impl/bindings.h"
#include "fruit/impl/component.defn.h"
#include "fruit/impl/component_function.defn.h"
#include "fruit/impl/component_functors.defn.h"
#include "fruit/impl/component_install_arg_checks.defn.h"
#include "fruit/impl/component_install_arg_checks.h"
#include "fruit/impl/component_storage/binding_deps.defn.h"
#include "fruit/impl/component_storage/binding_deps.h"
#include "fruit/impl/component_storage/component_storage.defn.h"
#include "fruit/impl/component_storage/component_storage.h"
#include "fruit/impl/component_storage/component_storage_entry.defn.h"
#include "fruit/impl/component_storage/component_storage_entry.h"
#include "fruit/impl/component_storage/partial_component_storage.defn.h"
#include "fruit/impl/component_storage/partial_component_storage.h"
#include "fruit/impl/data_structures/arena_allocator.defn.h"
#include "fruit/impl/data_structures/arena_allocator.h"
#include "fruit/impl/data_structures/fixed_size_allocator.defn.h"
#include "fruit/impl/data_structures/fixed_size_allocator.h"
#include "fruit/impl/data_structures/fixed_size_vector.defn.h"
#include "fruit/impl/data_structures/fixed_size_vector.h"
#include "fruit/impl/data_structures/fixed_size_vector.templates.h"
#include "fruit/impl/data_structures/memory_pool.defn.h"
#include "fruit/impl/data_structures/memory_pool.h"
#include "fruit/impl/data_structures/packed_pointer_and_bool.defn.h"
#include "fruit/impl/data_structures/packed_pointer_and_bool.h"
#include "fruit/impl/data_structures/semistatic_graph.defn.h"
#include "fruit/impl/data_structures/semistatic_graph.h"
#include "fruit/impl/data_structures/semistatic_graph.templates.h"
#include "fruit/impl/data_structures/semistatic_map.defn.h"
#include "fruit/impl/data_structures/semistatic_map.h"
#include "fruit/impl/data_structures/semistatic_map.templates.h"
#include "fruit/impl/fruit-config-base.h"
#include "fruit/impl/fruit-config.h"
#include "fruit/impl/fruit_assert.h"
#include "fruit/impl/fruit_internal_forward_decls.h"
#include "fruit/impl/injection_debug_errors.h"
#include "fruit/impl/injection_errors.h"
#include "fruit/impl/injector.defn.h"
#include "fruit/impl/injector/injector_accessor_for_tests.defn.h"
#include "fruit/impl/injector/injector_accessor_for_tests.h"
#include "fruit/impl/injector/injector_storage.defn.h"
#include "fruit/impl/injector/injector_storage.h"
#include "fruit/impl/meta/algos.h"
#include "fruit/impl/meta/basics.h"
#include "fruit/impl/meta/component.h"
#include "fruit/impl/meta/errors.h"
#include "fruit/impl/meta/eval.h"
#include "fruit/impl/meta/fold.h"
#include "fruit/impl/meta/graph.h"
#include "fruit/impl/meta/immutable_map.h"
#include "fruit/impl/meta/immutable_set.h"
#include "fruit/impl/meta/list.h"
#include "fruit/impl/meta/logical_operations.h"
#include "fruit/impl/meta/map.h"
#include "fruit/impl/meta/metaprogramming.h"
#include "fruit/impl/meta/numeric_operations.h"
#include "fruit/impl/meta/pair.h"
#include "fruit/impl/meta/proof_tree_comparison.h"
#include "fruit/impl/meta/proof_trees.h"
#include "fruit/impl/meta/set.h"
#include "fruit/impl/meta/signatures.h"
#include "fruit/impl/meta/triplet.h"
#include "fruit/impl/meta/vector.h"
#include "fruit/impl/meta/wrappers.h"
#include "fruit/impl/meta_operation_wrappers.h"
#include "fruit/impl/normalized_component.defn.h"
#include "fruit/impl/normalized_component_storage/binding_normalization.h"
#include "fruit/impl/normalized_component_storage/binding_normalization.templates.h"
#include "fruit/impl/normalized_component_storage/normalized_bindings.defn.h"
#include "fruit/impl/normalized_component_storage/normalized_bindings.h"
#include "fruit/impl/normalized_component_storage/normalized_component_storage.defn.h"
#include "fruit/impl/normalized_component_storage/normalized_component_storage.h"
#include "fruit/impl/normalized_component_storage/normalized_component_storage_holder.h"
#include "fruit/impl/provider.defn.h"
#include "fruit/impl/util/call_with_tuple.h"
#include "fruit/impl/util/demangle_type_name.h"
#include "fruit/impl/util/hash_codes.defn.h"
#include "fruit/impl/util/hash_codes.h"
#include "fruit/impl/util/hash_helpers.defn.h"
#include "fruit/impl/util/hash_helpers.h"
#include "fruit/impl/util/lambda_invoker.h"
#include "fruit/impl/util/type_info.defn.h"
#include "fruit/impl/util/type_info.h"
#include "fruit/injector.h"
#include "fruit/macro.h"
#include "fruit/normalized_component.h"
#include "fruit/provider.h"