-
- Downloads
[DependencyManager] Reworked inheritance handling and allow circular dependencies
- Allow recursive dependencies in separate files - Allow circular dependencies by allowing incomplete types: - Use type erasure instead of `dynamic_cast` - Use type name in the dependency map instead of `typeid` - Introduce `IntectableBase` for linear inheritance of `Injectable` types - Use SFINAE instead of static assertions to improve IDE errors
Showing
- src/shared/utils/DependencyManager/DependencyManager.cpp 39 additions, 42 deletionssrc/shared/utils/DependencyManager/DependencyManager.cpp
- src/shared/utils/DependencyManager/DependencyManager.h 99 additions, 26 deletionssrc/shared/utils/DependencyManager/DependencyManager.h
- src/shared/utils/DependencyManager/TypeName.h 80 additions, 0 deletionssrc/shared/utils/DependencyManager/TypeName.h
- src/tests/catch/test-dependencymanager.cpp 107 additions, 14 deletionssrc/tests/catch/test-dependencymanager.cpp
Loading
Please register or sign in to comment