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
| System | Port | Version |
|---|---|---|
| FreeBSD | devel/fruit | 3.7.1 |
| NetBSD | games/fruit | 2.1 |
| DragonFly | devel/fruit | 3.7.1 |
| HardenedBSD | devel/fruit | 3.7.1 |
| GhostBSD | devel/fruit | 3.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.
| Repository | aarch64 | amd64 | armv6 | armv7 | i386 |
|---|---|---|---|---|---|
| FreeBSD:14:latest | 3.7.1 | 3.7.1 | - | 3.7.1 | 3.7.1 |
| FreeBSD:14:quarterly | 3.7.1 | 3.7.1 | n/a | 3.7.1 | 3.7.1 |
| FreeBSD:15:latest | 3.7.1 | 3.7.1 | n/a | - | - |
| FreeBSD:15:quarterly | 3.7.1 | 3.7.1 | n/a | n/a | n/a |
| FreeBSD:16:latest | 3.7.1 | 3.7.1 | n/a | n/a | n/a |
| FreeBSD:16:quarterly | n/a | n/a | n/a | n/a | n/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
| File | Size | SHA256 |
|---|---|---|
| google-fruit-v3.7.1_GH0.tar.gz | 240459 | ed4c6b7ebfbf75e14a74e21eb74ce2703b8485bfc9e660b1c36fb7fe363172d0 |
| dab5bdfe01eb9f90a2b688c7f3be177a9bd8d5c6.patch | 1607 | b6c7616f278b2792c9608fab507372c3f6e661ff9491344dfb05f31f8000c90d |
Commit history 0
No commits in the history this site was built from.