aboutsummaryrefslogtreecommitdiff
path: root/macros/src
AgeCommit message (Collapse)Author
2023-12-22refactor: mock Dependency struct impl instead of IDependencyHEADmasterHampusM
2023-12-22feat: add support for async constructorsHampusM
2023-10-04refactor!: remove factory & declare_default_factory macrosHampusM
BREAKING CHANGE: The factory and the declare_default_factory macros have been removed. They are no longer needed to use factories
2023-10-01refactor: remove impossible unwrap in injectable macroHampusM
This unwrap couldn't possibly be Err and can be removed by creating method call expressions by hand
2023-10-01refactor: make camel cased text snake cased without regexHampusM
2023-09-30fix: allow dependency interface types other than trait & pathHampusM
2023-09-30style: shorten lines exceeding 90 in width in injectable macroHampusM
2023-09-30test: import test util functions for injectable macro testsHampusM
2023-09-30refactor: remove unnecessary cloning of impl generics & self typeHampusM
2023-09-27fix: set injectable macro dummies directly after parsing inputHampusM
2023-09-27fix: make dummy Injectable & AsyncInjectable impls validHampusM
2023-09-27docs: clarify named macro documentationHampusM
2023-09-27refactor: remove unnecessary doc(cfg) attrs on private modulesHampusM
2023-09-26test: make unit tests not return ResultHampusM
2023-09-18refactor!: make the async DI container not inside a ArcHampusM
BREAKING CHANGE: The async DI container is no longer inside of a Arc. This affects AsyncBindingBuilder, AsyncBindingScopeConfigurator, AsyncBindingWhenConfigurator & AsyncInjectable
2023-09-18refactor: make threadsafe castable factory take DI container paramHampusM
2023-09-17refactor: move castable factory to directory moduleHampusM
2023-09-17refactor!: make the blocking DI container not inside a RcHampusM
BREAKING CHANGE: The blocking DI container is no longer inside of a Rc. This affects BindingBuilder, BindingScopeConfigurator, BindingWhenConfigurator & Injectable
2023-09-16refactor: make castable factory take DI container paramHampusM
2023-09-16refactor!: remove async DI container interfaceHampusM
BREAKING CHANGE: IAsyncDIContainer have been removed and multiple structs no longer take a DI container generic parameter
2023-09-14refactor!: remove blocking DI container interfaceHampusM
BREAKING CHANGE: IDIContainer have been removed and multiple structs no longer take a DI container generic parameter
2023-08-20feat: expose DI container get_bound methods to public APIHampusM
2023-08-18test: import proc_macro2 TokenStream in dependency testsHampusM
Fixes the dependency tests not working on Rust 1.62.1
2023-08-16chore!: remove the factory macro async flagHampusM
BREAKING CHANGE: The factory macro's async flag has been removed
2023-08-16docs: add missing TransientPtr import to factory macro exampleHampusM
2023-08-15fix!: make the factory macro not change its inputHampusM
BREAKING CHANGE: The factory macro no longer - Changes the return type to be inside of a TransientPtr - Adds Send + Sync bounds when the threadsafe or the async flag is set - Changes the return type be inside of a BoxFuture when the async flag is set
2023-08-13feat: add internal logging for macrosHampusM
2023-08-05refactor!: remove IDependencyHistoryHampusM
BREAKING CHANGE: IDependencyHistory has been removed as part of an effort to simplify the API. This affects IDIContainer, DIContainer, IAsyncDIContainer, AsyncDIContainer, Injectable, AsyncInjectable, BindingBuilder, AsyncBindingBuilder, BindingScopeConfigurator, BindingWhenConfigurator, AsyncBindingScopeConfigurator, AsyncBindingWhenConfigurator and DependencyHistory
2023-08-05fix: change terminology in injectable macro async flag errorHampusM
2023-08-05docs: improve injectable macro docsHampusM
2023-08-04refactor!: remove SomeThreadsafePtr & move variants to SomePtrHampusM
BREAKING CHANGE: SomeThreadsafePtr has been removed and it's variants have been moved to SomePtr
2023-08-04refactor!: rename the async flag of the declare_interface macroHampusM
BREAKING CHANGE: The flag 'async' of the declare_interface macro has been renamed to 'threadsafe_sharable'. The reason being that the name 'async' was an outright lie. The new name describes exactly what the flag enables
2023-08-03docs: remove panics sections from macrosHampusM
2023-08-03docs: move the injectable macro example sectionHampusM
2023-08-03test: add & improve MacroFlag unit testsHampusM
2023-08-03feat: add constructor name flag to injectable macroHampusM
2023-08-02test: clean up create_caster_fn_ident unit testHampusM
2023-08-02test: clean up DeclareDefaultFactoryMacroArgs unit testsHampusM
2023-08-02perf: reduce number of allocations in SynPathExt::to_stringHampusM
2023-08-01test: clean up FactoryMacroArgs unit testsHampusM
2023-08-01test: clean up DeclareInterfaceArgs unit testsHampusM
2023-08-01test: remove unused std::error::Error importHampusM
2023-08-01test: remove vec macro usages in IteratorExt unit testsHampusM
2023-08-01test: clean up InjectableMacroArgs unit testsHampusM
2023-08-01test: remove Result return value of can_build_dependenciesHampusM
2023-08-01test: fix create_single_get_dep_method_call unit testsHampusM
2023-01-31fix: remove unwrap from generated implementations of InjectableHampusM
2023-01-30fix: add missing dummy async injectable implHampusM
2023-01-30feat: improve macro error messagesHampusM
2023-01-13refactor: put syn_path_to_string in a extension traitHampusM