Commit graph

157 commits

Author SHA1 Message Date
Mike Bierlee 426b1774b8 Update copyrights 2024-02-17 15:08:59 +03:00
Mike Bierlee a129e6c3f1 Prefer the use of @Inject in examples, docs and tests 2023-03-07 03:31:23 +03:00
Mike Bierlee 3fa4e15d6f Add support for JSR330 @Inject attribute 2023-03-07 03:14:58 +03:00
Mike Bierlee 733c2aa236 Move some tests to proper location 2023-03-07 03:06:57 +03:00
Mike Bierlee 9b05aa3af9 Reformat code to use otbs brace style
It's more compact and more common in the coding world these days.
2023-03-07 01:24:28 +03:00
Mike Bierlee b8caa00be1 Autoformat code 2023-03-07 00:46:07 +03:00
Mike Bierlee dfac28102e Fix deprecation warnings when resolving post-constructors and pre-destructors (fix #43) 2023-03-07 00:45:44 +03:00
Mike Bierlee d4ce13f8b1 Rename modules to match convention 2023-03-06 23:21:08 +03:00
Mike Bierlee fd9d63a6ec Update copyrights 2023-01-11 02:01:51 +03:00
Mike Bierlee c5e458f75a Update copyrights 2022-02-18 00:45:03 +03:00
Mike Bierlee 4faf7f2e47 Fix chained registration scopes getting rid of initializedBy's factory method 2021-08-24 23:17:26 +03:00
Mike Bierlee 70b4c9e9dd Remove helpful compilation warning in favor of supporting more edge-cases out of the box 2021-07-03 18:38:21 +03:00
Mike Bierlee 0127c0a80c Add unittest for fix in #37 2021-06-15 23:34:50 +03:00
Mike Bierlee dcaa4d77be Autoformat code according to The D Style 2021-05-01 22:16:44 +03:00
Mike Bierlee eaac0eb7ce Add initializedOnceBy() to create singleton instances via injection initializer 2021-04-29 01:45:08 +03:00
Mike Bierlee 8f4a64cf4c Move injection initializer to registration scope 2021-04-29 01:45:08 +03:00
Mike Bierlee 3f6636109e Update copyrights 2021-01-04 02:04:20 +03:00
Mike Bierlee 81de14a1ee Update copyrights 2020-03-11 23:38:54 +03:00
Mike Bierlee 343dd65fdf Update copyrights 2019-07-14 12:40:16 +03:00
Mike Bierlee dc48c87948 Prevent registration, resolving and constructor injection selection of structs
Fixes #25
2018-06-11 18:45:27 +03:00
Mike Bierlee a5079dc8a6 Remove unnecessary import 2018-04-15 11:28:13 +03:00
Carlin St Pierre d52d2d963e Support types that have recursive template arguments with createImportsString 2018-04-14 14:00:30 +10:00
Mike Bierlee 4410206ec4 Update copyrigths
And convert tabs to spaces
2018-01-01 15:56:47 +01:00
Mike Bierlee 4c25b91c63 Import modules of argument types of registration type's template before calling post-constructor 2017-08-13 17:49:40 +02:00
Mike Bierlee e90306ef57 Update copyrights 2017-02-13 20:20:35 +01:00
Mike Bierlee 10d24eb9fb Remove workaround 2016-12-26 18:17:51 +01:00
Mike Bierlee 898dfd8943 Remove deprecated getInstance() 2016-12-26 18:17:51 +01:00
Mike Bierlee a7b4549799 Add test verifying for pre-destruction on container destruction 2016-12-18 03:56:10 +01:00
Mike Bierlee 6a1fa7e2c1 Move test classes to separate module 2016-12-17 23:33:29 +01:00
Mike Bierlee b6dea95c0d Add pre-destruction 2016-12-17 23:09:56 +01:00
Mike Bierlee fbef764b48 Add post construction 2016-12-17 21:14:16 +01:00
Mike Bierlee 7ba8e545f6 Move context registration related method out of container
Should be still usable as before because of UFCS
2016-12-14 22:04:13 +01:00
Mike Bierlee cc314324a7 Use empty main instead of relying on main generation by compilers
GDC doesn't seem to do this
2016-12-13 22:28:12 +01:00
Mike Bierlee 2f5ffd5da5 Add test for value injection within injectors and their dependencies 2016-12-12 22:51:26 +01:00
Mike Bierlee 7c718ec159 Add tests verifying that dependency injection is performed for value injectors 2016-12-12 22:51:26 +01:00
Mike Bierlee 86fb525066 Add mandatory injection of values 2016-12-11 01:31:09 +01:00
Mike Bierlee 52dcecef9a Add optional value injection when values cannot be injected by injectors 2016-12-11 01:15:30 +01:00
Mike Bierlee 9eb3a89695 Make it clear when a value injector is missing 2016-12-11 00:53:21 +01:00
Mike Bierlee 4954979574 Move value injection test to its own test file 2016-12-10 22:46:32 +01:00
Mike Bierlee d3ed3e91b9 Add value injector 2016-12-09 02:15:59 +01:00
Mike Bierlee e1f0cca5c5 Fix injection of dependencies from foreign modules
Fixes issue #12
2016-09-05 19:37:53 +02:00
Mike Bierlee 9cc320aa93 Add test of prevention of transitive dependencies 2016-09-03 18:40:01 +02:00
Mike Bierlee 95e30477c6 Prevent creation of circular dependencies in constructors 2016-09-03 16:57:38 +02:00
Mike Bierlee c0553967c9 Add extra testcase 2016-08-23 21:20:54 +02:00
Mike Bierlee ab765e0092 Add constructor injection 2016-08-23 00:11:29 +02:00
Mike Bierlee 81c6faed16 Pass factory through constructor to prevent nullpointer exceptions 2016-08-17 23:01:22 +02:00
Mike Bierlee 6b3b23a376 Move factory parameters to parameter object 2016-08-17 22:28:47 +02:00
Mike Bierlee 44e77aff9c Move factory stuff to own module 2016-08-17 20:44:36 +02:00
Mike Bierlee b6ccc9d4a9 Pull keeping track of originating containmer up to Registration class 2016-08-08 23:06:05 +02:00
Mike Bierlee 9e5a27d046 Deprecate singleton factory method
The factory method encourages misuse of dependency injection (by using it as a service locator). Removing the factory method forces the user to make this choice deliberately.
2016-08-08 22:17:17 +02:00