BSD Ports

devel/fruit 3.7.1 FreeBSD

Dependency injection framework for C++

System
FreeBSD
Repository
FreeBSD ports
Maintainer
[email protected]
License
APACHE20
Categories
devel
Package size
126.7 KiB, 737.1 KiB installed

Description

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.

In the other systems

SystemPortVersion
FreeBSDdevel/fruit3.7.1
NetBSDgames/fruit2.1
DragonFlydevel/fruit3.7.1
HardenedBSDdevel/fruit3.7.1
GhostBSDdevel/fruit3.7.1

Install

Binary package:

pkg install fruit

From the ports tree:

cd /usr/ports/devel/fruit/ && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	fruit>0:devel/fruit
LIB_DEPENDS=	libfruit.so:devel/fruit

Packages

The version each package repository carries. “-” means the repository builds no package of it, “n/a” that there is no such repository.

Repositoryaarch64amd64armv6armv7i386
FreeBSD:14:latest3.7.13.7.1-3.7.13.7.1
FreeBSD:14:quarterly3.7.13.7.1n/a3.7.13.7.1
FreeBSD:15:latest3.7.13.7.1n/a--
FreeBSD:15:quarterly3.7.13.7.1n/an/an/a
FreeBSD:16:latest3.7.13.7.1n/an/an/a
FreeBSD:16:quarterlyn/an/an/an/an/a

Dependencies

The Makefile names none itself; they come from USES and USE_*.

The full lists below include those, and their dependencies in turn.

Build dependencies 15
Required by 1

Configuration

No options to configure.

USES
cmake compiler:c++11-lang
Service scripts
none

Files

pkg-plist 92
  • 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
  • lib/libfruit.so
distinfo 2
FileSizeSHA256
google-fruit-v3.7.1_GH0.tar.gz240459ed4c6b7ebfbf75e14a74e21eb74ce2703b8485bfc9e660b1c36fb7fe363172d0
dab5bdfe01eb9f90a2b688c7f3be177a9bd8d5c6.patch1607b6c7616f278b2792c9608fab507372c3f6e661ff9491344dfb05f31f8000c90d

Commit history 0

No commits in the history this site was built from.