1. f289510 Add configure-time checks on compiler and STL features, and use the results of those in macros in Fruit code, instead of checking for specific compilers and/or versions. by Marco Poletti · 9 years ago
  2. d83763e Rename fruit::impl::Vector to HybridVector, use it for ComponentStorage.compressed_bindings instead for std::vector. by Marco Poletti · 10 years ago
  3. 2a1a581 Factor out a Vector class from ComponentStorage. by Marco Poletti · 10 years ago
  4. 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
  5. 85aea00 Rename typeRegistry->bindings, typeRegistryForMultibindings->multibindings throughout. by Marco Poletti · 10 years ago
  6. eedc2a5 Remove the multibindingDeps vector from ComponentStorage. Each MultibindingData stores the deps anyway. by Marco Poletti · 10 years ago
  7. 93372ce Inline trivial methods of ComponentStorage into component.defn.h. by Marco Poletti · 10 years ago
  8. 224bd9c First part of the refactoring of ComponentStorage, mostly moving logic into InjectorStorage. by Marco Poletti · 10 years ago
  9. 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
  10. 58e2ec2 First implementation of binding compression; reduces injection time by ~35% when using virtual destructors. by Marco Poletti · 10 years ago
  11. 757c78f Move code from semistatic_map.cpp to semistatic_map.templates.h. Add a IN_FRUIT_CPP_FILE to ensure that .templates.h files are only included by Fruit cpp files. by Marco Poletti · 10 years ago
  12. 7ad3862 Re-organize the files in include/fruit/impl into subdirectories. by Marco Poletti · 10 years ago
  13. 7f35b65 Re-organize the source code. Merge component.utils.h into component_impl.h. Now using .defn files for template/inline definitions. by Marco Poletti · 10 years ago
  14. bd971eb Rename BindingDataForMultibinding->MultibindingData, BindingDataVectorForMultibinding->NormalizedMultibindingData. by Marco Poletti · 10 years ago
  15. a49c9ad Store dependencies in BindingData, in preparation for the next optimization. by Marco Poletti · 10 years ago
  16. 2d81d25 Remove the BindingData-specific optimization from SemistaticMap (even though this decreases performance) in preparation for later optimizations. by Marco Poletti · 10 years ago
  17. 5bac985 Drop support for functions as providers (only lambdas are supported now). De-templatize SemistaticMap, store typeInfo + is_created + create/singleton in 2 machine words. Gives a ~10% reduction in injection time. by Marco Poletti · 10 years ago
  18. 943c382 Restructure/Rewrite the metaprogramming code. Now using None as an element in lists to speed up removals. by Marco Poletti · 10 years ago
  19. a25a1e7 Use exit(1) instead of abort() for runtime errors. by Marco Poletti · 10 years ago
  20. ac0fe96 Fix compilation warnings/issues with GCC 4.9.1. by Marco Poletti · 10 years ago
  21. 1fd2649 getMultibindings now returns a vector instead of a set. by Marco Poletti · 10 years ago
  22. d9d60db Reduce the preprocessed size of fruit.h by moving big includes to .cpp files. by Marco Poletti · 10 years ago
  23. 42a02a1 Add the notion of NormalizedComponent, add a two-argument constructor of Injector that takes a NormalizedComponent and a Component. by Marco Poletti · 10 years ago
  24. 9341b25 Remove ComponentStorage::check() and InjectorStorage::check(), replace with assertions or if statements as appropriate. by Marco Poletti · 10 years ago
  25. 130624a Fix performance bug that caused a copy in install() even when a temporary was passed. by Marco Poletti · 10 years ago
  26. b35bcb4 Change the representation of a BindingData, now occupies 2 pointers instead of 4. by Marco Poletti · 10 years ago
  27. d238be8 Use (unsorted) vectors in ComponentStorage instead of hash tables. by Marco Poletti · 10 years ago
  28. fdbfcbe Split InjectorStorage out of ComponentStorage. by Marco Poletti · 10 years ago
  29. 494514c Depend on the sparsehash lib to speed up hashing by ~25%. This dependency is optional and can be disabled with -DFRUIT_NO_SPARSE_HASH. by Marco Poletti · 10 years ago
  30. b5cadcf Add move constructors and store the ComponentStorage in a unique_ptr, to avoid copies and also keep the move cost low. by Marco Poletti · 10 years ago
  31. 09fa583 Optimize allocations by allocating a single chunk of memory in the injector. by Marco Poletti · 10 years ago
  32. 6449dae Make RTTI optional. by Marco Poletti · 10 years ago
  33. a88e1d1 Remove support for injection scopes. by Marco Poletti · 10 years ago
  34. ec857eb ComponentStorage: cache the set of multibindings (if not empty). by Marco Poletti · 10 years ago
  35. 6917d7e Fix a bug in ComponentStorage where multibindings were deleted after the bindings that they depended on. by Marco Poletti · 10 years ago
  36. 5d84929 Implement factory bindings. by Marco Poletti · 10 years ago
  37. be1d443 Eager injection no longer injects unreachable types. by Marco Poletti · 10 years ago
  38. 6c83bde Implement eager injection. by Marco Poletti · 10 years ago
  39. 65d8eb9 Implement multibindings. by Marco Poletti · 10 years ago
  40. 5c48390 Fix injection scopes: loop over all parents to determine the types to un-register in the child injector. Also remove useless comparisons of destroy operation. by Marco Poletti · 10 years ago
  41. d61b579 Implement injection scopes, plus some other changes: by Marco Poletti · 10 years ago
  42. c0db95e Rename Module->Component, UnsafeModule->ComponentStorage. by Marco Poletti · 10 years ago[Renamed (82%) from src/unsafe_module.cpp]
  43. cf798fa Initial commit. by Marco Poletti · 10 years ago