1. c54a093 Store pre-multiplied IDs in SemistaticGraphInternalNodeId to save one instruction per edge at injection time. by Marco Poletti · 10 years ago
  2. 80c7bb4 Some performance optimizations in SemistaticGraph and InjectorStorage, saving ~10% of injection time. by Marco Poletti · 10 years ago
  3. 9e0c6de Inline the non-templated InjectorStorage::lazyGetPtr into the templated one. by Marco Poletti · 10 years ago
  4. 05e9b4c Improve the script and CMake targets for generating dependency graphs; now png are generated and the nodes have the filename as label. by Marco Poletti · 10 years ago
  5. 605ded5 Add Latex sources of the images used in the Server page of the tutorial. by Marco Poletti · 10 years ago
  6. d08991f Rewrite the server example for Fruit 1.0. by Marco Poletti · 10 years ago
  7. 6f1a28b Disable the compilation of tests in release mode for now (will fail with unused-variable warnings that are errors due to -Werror). Also fix a quoting issue in the script. by Marco Poletti · 10 years ago
  8. ad0a8c7 Add -DNDEBUG to the cxx flags in postsubmit.sh, in release mode. by Marco Poletti · 10 years ago
  9. a9c0403 Extract postsubmit script (executed using Travis CI) from .travis.yml, some improvements. by Marco Poletti · 10 years ago
  10. d1741a9 Don't pass --show-leak-kinds=all to valgrind in tests. The version of Valgrind used by Travis CI doesn't support this. by Marco Poletti · 10 years ago
  11. 42c92ba Use GCC 4.9 in the Travis config for now. The PPA for Ubuntu 10.04 has 4.8.1 and 4.9.2, and there's a compile warning with 4.8.1 due to a GCC bug fixed in 4.8.2. by Marco Poletti · 10 years ago
  12. a8b9731 Update Travis CI config to install Valgrind. It's used to run tests. by Marco Poletti · 10 years ago
  13. ab49a96 Revert "Fix a Clang warning in type_info.h (class vs struct)." by Marco Poletti · 10 years ago
  14. 070e983 Change Travis CI config to use GCC from ubuntu-toolchain-r/ppa instead of ubuntu-toolchain-r/test. by Marco Poletti · 10 years ago
  15. 1530c17 Fix Travis CI configuration, it had the wrong path for the tests directory. by Marco Poletti · 10 years ago
  16. 598a0b3 Fix a Clang warning in type_info.h (class vs struct). by Marco Poletti · 10 years ago
  17. 33aed1b Change Travis CI config to use GCC 4.8. by Marco Poletti · 10 years ago
  18. 5ed889a Changes to the way the component diagrams are generated (now generating png instead of svg), and minor changes to the Latex files that they are generated from. by Marco Poletti · 10 years ago
  19. 0843ee4 Add .travis.yml file with the Travis CI configuration. by Marco Poletti · 10 years ago
  20. 4250ef6 Include cstdlib in demangle_type_name.cpp. This fixes a compilation problem on OS X, see https://github.com/google/fruit/issues/3 . by Marco Poletti · 10 years ago
  21. 5d85307 Add latex sources for the diagrams used in the 'Reference documentation' page of the website. by Marco Poletti · 10 years ago
  22. b91b406 Fix compile errors with Clang that were not reported by GCC. by Marco Poletti · 10 years ago
  23. 91c10d2 Add a test for SemistaticGraph with an incomplete graph. by Marco Poletti · 10 years ago
  24. da1bc0c Remove a specialization of AutoRegisterFactoryHelper that is never used. by Marco Poletti · 10 years ago
  25. 753adb8 Add more tests for factory autobindings. by Marco Poletti · 10 years ago
  26. cffe663 Add test for FixedSizeAllocator's move constructor. by Marco Poletti · 10 years ago
  27. eddc549 Remove some unused (private) getPtr() methods of InjectorStorage. by Marco Poletti · 10 years ago
  28. 1a97c80 Remove SemistaticGraph::size(), it's never used. by Marco Poletti · 10 years ago
  29. 3d3b717 Add comments for methods/function that are covered by tests, but that don't show up as covered in the lcov report. by Marco Poletti · 10 years ago
  30. 9bb46a3 Remove {Normalized,}BindingData::operator<(), they're no longer used. by Marco Poletti · 10 years ago
  31. 0b4683e Improve test_coverage.sh: avoid filename collisions, pick up tests in subdirectories. by Marco Poletti · 10 years ago
  32. 0c56617 Fix compile error in hybrid_vector that only occurred in release mode. by Marco Poletti · 10 years ago
  33. 53f867e Remove unused constructor of NormalizedComponentStorage, inline the now-redundant init() method. by Marco Poletti · 10 years ago
  34. db902a6 Increase unit test coverage for SemistaticGraph, now also testing const methods and const_node_iterator. by Marco Poletti · 10 years ago
  35. 9b9f9b8 Add unit tests for type_info. by Marco Poletti · 10 years ago
  36. cbd708f Fix typo in comment in lambda_invoker.h. by Marco Poletti · 10 years ago
  37. 853205c Add unit tests for LambdaInvoker. by Marco Poletti · 10 years ago
  38. 7e3052d Add unit tests for HybridVector. by Marco Poletti · 10 years ago
  39. f106504 InjectorStorage: in the constructor from a Component, create a shallow copy instead of moving the SemistaticGraph. by Marco Poletti · 10 years ago
  40. 36e63ef Use the static_assert from injection_errors instead of writing the check inline. by Marco Poletti · 10 years ago
  41. 5c354a6 No longer consider fruit::Requirements<...> as one of the exposed types when determining what binding compressions to perform. Pass the list of exposed types as an std::vector instead of an std::initializer_list, allowing getTypeIdsForList to work. by Marco Poletti · 10 years ago
  42. c067655 Move some implementations of inline functions/methods to .defn.h files from .h files. by Marco Poletti · 10 years ago
  43. 4a2ac2e Add unit tests for FixedSizeAllocator. by Marco Poletti · 10 years ago
  44. 3d432f0 Add unit tests for FixedSizeVector. by Marco Poletti · 10 years ago
  45. e53b79e Add an addInstanceMultibindings() method to PartialComponent, allowing to add multibindings for a type whose number is only known at runtime (e.g. a list of plugins to load dynamically). by Marco Poletti · 10 years ago
  46. 9a65db6 Make the Op~=RealOp checks in component_functors.defn.h debug-only. by Marco Poletti · 10 years ago
  47. b438a1e AddProvidedType,AddRequirements now take a set of deps instead of taking a list of types and converting those to a set of deps themselves. by Marco Poletti · 10 years ago
  48. 7363e1c Remove dummy definition of ProcessRegisterConstructor, it's no longer needed due to deferred bindings. by Marco Poletti · 10 years ago
  49. b9f19bf Turn the component functors into standard metafunctions (the result struct changes from Op::apply<Comp> to Op::apply<Comp>::type). Use meta::Apply instead of ApplyFunctor. by Marco Poletti · 10 years ago
  50. 3ced78a Fix expected error message in the type_already_bound2 test. The reported error changed due to the now-deferred registerConstructor() binding. by Marco Poletti · 10 years ago
  51. d8943a8 Implement deferred binding processing for constructor/provider bindings so that binding compression is now used even if the corresponding bind<I,C>() was after the registerProvider()/registerConstructor() call. by Marco Poletti · 10 years ago
  52. f6335ae Rename AddToVector->PushFront, swap the order of the two arguments. by Marco Poletti · 10 years ago
  53. 956cb5b Merge RegisterConstructorAsPointerFactoryHelper into RegisterConstructorAsPointerFactory and add consistency check. by Marco Poletti · 10 years ago
  54. ca50c3a Major refactoring of Component->Component functors. Now each functor takes the Component afterwards and separately from other parameters. E.g. F<A, B>::apply<Comp> instead of F<Comp, A, B>. by Marco Poletti · 10 years ago
  55. 2edd866 Rename Binding->InterfaceBinding in the Component implementation, as Binding is used with a more general sense in e.g. BindingData, InjectorStorage. Also some other related renames. by Marco Poletti · 10 years ago
  56. 43af2da generate_benchmark: take the num_loops as a command line argument instead of stdin. by Marco Poletti · 10 years ago
  57. d83763e Rename fruit::impl::Vector to HybridVector, use it for ComponentStorage.compressed_bindings instead for std::vector. by Marco Poletti · 10 years ago
  58. 145223b Make the 'allocator' field of InjectorStoorage private, passing it as parameter to functions that need it instead. by Marco Poletti · 10 years ago
  59. 91d998d Remove unnecessary #include. by Marco Poletti · 10 years ago
  60. 215fc19 Use FixedSizeVector instead of std::vector in Semistatic{Map,Graph}. by Marco Poletti · 10 years ago
  61. 79f65cb Implement more methods of std::vector in FixedSizeVector. by Marco Poletti · 10 years ago
  62. 4ac469a Move FixedSize{Vector,Allocator} from storage/ to data_structures/. by Marco Poletti · 10 years ago
  63. 979c940 Add a FixedSizeVector class and use it in FixedSizeAllocator to keep track of allocations. Avoids 1 branch per injection for types that are not trivially destructible and not externally allocated. by Marco Poletti · 10 years ago
  64. a85fc03 Keep track of what bindings need an allocation, to reduce the space estimate for the fixed-size allocator. by Marco Poletti · 10 years ago
  65. 1b2a208 Refactor the allocator construction, making the interface more high-level and adding more checks when FRUIT_EXTRA_DEBUG is enabled. by Marco Poletti · 10 years ago
  66. b6ef0ad Improve the debug output, remove obsolete debug prints. by Marco Poletti · 10 years ago
  67. bb7442f Fix bug in binding compression in a corner case where the binding compression I->C must be undone when C is in the late bindings together with a non-I type depending on C. by Marco Poletti · 10 years ago
  68. 0c35fac Rename fruit::impl::meta::List to fruit::impl::meta::Vector. by Marco Poletti · 10 years ago
  69. 6070c7c Move fruit/impl/metaprogramming->fruit/impl/meta, and move all metaprogramming facilities into the fruit::impl::meta namespace. by Marco Poletti · 10 years ago
  70. 9754d5a Inline GetAssistedArg into the caller, rename GetAssistedArgHelper->GetAssistedArg. by Marco Poletti · 10 years ago
  71. 978c9f3 Replace InvokeAssistedFactory with a stateful lambda. by Marco Poletti · 10 years ago
  72. 1b51db8 Minor changes. by Marco Poletti · 10 years ago
  73. 4d39c58 Move the functors to manipulate PartialComponent objects from component.defn.h to a new component_functors.defn.h file. by Marco Poletti · 10 years ago
  74. ed4d62b Assisted injection is just a convenience feature, it can be implemented using registerProvider(). Do so, and move the assisted injection code out of InjectorStorage into component.defn.h. by Marco Poletti · 10 years ago
  75. a82a444 Minor cleanups. by Marco Poletti · 10 years ago
  76. 0bfbe05 Reorganize the code, notably move BindingDataNodeIter to InjectorStorage. by Marco Poletti · 10 years ago
  77. 2a1a581 Factor out a Vector class from ComponentStorage. by Marco Poletti · 10 years ago
  78. 433257c Remove the unused SemistaticGraph::getOrAllocateNodeId() method. by Marco Poletti · 10 years ago
  79. 9491d65 Switch to the lowercase_with_underscores style for variables and fields (before some used the lowerCamel case instead). by Marco Poletti · 10 years ago
  80. 6c13003 Rename createObjectVector->createMultibindingVector for clarity. by Marco Poletti · 10 years ago
  81. 7eab28b When a lambda used as provider returns a pointer to a derived class with virtual methods, let the compiler emit a warning if there's no virtual destructor. by Marco Poletti · 10 years ago
  82. 207597b Minor code simplifications in InjectorStorage. by Marco Poletti · 10 years ago
  83. 1cb7de4 Fix a bug that caused an assertion error when using addMultibinding(). by Marco Poletti · 10 years ago
  84. 9c80dbd Add test to ensure that objects in the injector are destroyed once (and only once). by Marco Poletti · 10 years ago
  85. 9a93cda Rename BindAssistedFactoryHelper->InvokeAssistedFactory, remove BindAssistedFactory. by Marco Poletti · 10 years ago
  86. b829323 Rename singleton->object throughout, plus other minor comment fixes. by Marco Poletti · 10 years ago
  87. 85aea00 Rename typeRegistry->bindings, typeRegistryForMultibindings->multibindings throughout. by Marco Poletti · 10 years ago
  88. eedc2a5 Remove the multibindingDeps vector from ComponentStorage. Each MultibindingData stores the deps anyway. by Marco Poletti · 10 years ago
  89. 93372ce Inline trivial methods of ComponentStorage into component.defn.h. by Marco Poletti · 10 years ago
  90. 224bd9c First part of the refactoring of ComponentStorage, mostly moving logic into InjectorStorage. by Marco Poletti · 10 years ago
  91. 4ac3c8e Factor common code in individual bindings in component_storage.defn.h into a new constructObject() method in InjectorStorage. Now the allocator can be private. by Marco Poletti · 10 years ago
  92. 5c913af Split out the allocator part of InjectorStorage into a separate FixedSizeAllocator class. by Marco Poletti · 10 years ago
  93. 1e3b61a Fix a bug in HasReverseBinding that produced a compile error in some cases. by Marco Poletti · 10 years ago
  94. d36df0f Bump version to 1.0.1. by Marco Poletti · 10 years ago
  95. 017b0a4 Change the compile-time benchmark to only run in Release mode. by Marco Poletti · 10 years ago
  96. eef01ad Make the new/delete benchmark more real-world by defining many classes instead of just allocating the single class many times. by Marco Poletti · 10 years ago
  97. 4a0072c Change the run-time benchmark to only do 1 NormalizedComponent creation per 100 injection loops (was 1 per 50 before). by Marco Poletti · 10 years ago
  98. e879261 Update the new/delete benchmark to use classes with virtual destructors. by Marco Poletti · 10 years ago
  99. 542ce42 Update documentation of unsafeGet() due to binding compression. by Marco Poletti · 10 years ago
  100. 94dd821 Change the signature of the 'create' operation of various bindings to only return the created object, and to set any deleter itself if needed instead of returning it. Saves ~20% of injection time. by Marco Poletti · 10 years ago