Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement trait implementation generator #13

Closed
pshirshov opened this issue Jan 17, 2018 · 0 comments
Closed

Implement trait implementation generator #13

pshirshov opened this issue Jan 17, 2018 · 0 comments

Comments

@pshirshov
Copy link
Member

No description provided.

neko-kai added a commit to neko-kai/izumi-r2 that referenced this issue Jan 18, 2018
neko-kai added a commit to neko-kai/izumi-r2 that referenced this issue Jan 18, 2018
neko-kai added a commit to neko-kai/izumi-r2 that referenced this issue Jan 19, 2018
neko-kai added a commit to neko-kai/izumi-r2 that referenced this issue Jan 23, 2018
pshirshov pushed a commit that referenced this issue Jan 24, 2018
* #13 very dirty trait macro prototype

* remove import in macro

* add auto-detect to magic macro
pshirshov added a commit that referenced this issue Jan 25, 2018
* basic di mocks

* basic di mocks

* sanity

* some improvements

* immutable logic

* cleanups

* working metasteps

* better stages

* NOPs and comments. Model revisited

* assisted injections/factories

* assisted injections/factories: dep fixes

* custom operation (reserved for future)

* circular deps planning

* todo

* circular dep checks

* circular dep checks

* decopypasted

* completeness check

* service locator for planner deps

* cutier injector api

* refactorings

* context hierarchies and lookup interceptors

* simple binding dsl

* instance bindings exposed

* compilation fixed

* all inheritance replaced with composition

* mirror dependency removed from the locator

* naming bindings support in dsl/locator

* multibindings

* sanity checks restored

* cleanups

* inherited members

* cleanups

* minor cleanups&improvements

* planner simplified

* decluttering

* more cleanups

* more cleanups

* WIP

* reliable equality checks

* ordering logic significantly simplified

* small cleanups

* rebased on top of develop

* Instantiate simple classes (#4)

Signed-off-by: Kaidax <kaidaxofficial@gmail.com>

address comments

Signed-off-by: Kaidax <kaidaxofficial@gmail.com>

* rebased on top of develop

* bootstrap support

* cleanups

* provisioner improved

* TODOs cleaned

* working providers PoC

* bit more safety

* better apis

* better apis

* better apis

* extended metainformation for factories

* tests fixed

* model cleanups

* cleanups

* cleanups

* reflection provider cleaned

* reflection provider cleaned

* bootstrap plan

* bootstrap simplified

* straightforward bootstrap

* dependency information delivered into provisioner

* circular deps fixed

* cleanups, formatting

* sanity checks

* proxy/factory context narrowing

* cglib-based proxy support

* named bindings

* set interpreter fixed

* basic plan rewriting with .flatMap

* cleanups, tests fixed

* abstract product support

* cleanups

* cglib-based trait instantiation

* trait instantiation cleaned

* cleanups

* cleanups & fixes

* working .toString for uninitialize CR proxies

* cleanups

* working trait initializers

* Feature/trait macro (#17)

* #13 very dirty trait macro prototype

* remove import in macro

* add auto-detect to magic macro

* better trait initialization

* TODO link

* factory strategy

* factory support for non-assisted cases

* cleanups

* Refactor Binding .setTarget to implicit .withTarget

* note on universe polymorphism

* assisted factory tests commented out

* formatting fixed

* all factory tests green

* cleanups

* coveralls

* coveralls

* cleanups

* field support

* get rid of initializing enhancer

* cleanups
pshirshov pushed a commit that referenced this issue Apr 28, 2018
* Rename RuntimeUniverse -> RuntimeDIUniverse, MacroUniverse -> StaticDIUniverse

DSL changes

WIP

New Binding DSL

Module with cats instances & Full support for @ids in lambdas and in traits/factories methods/types

* rebase

* move type dsl to static

* #35 #103 #14 #13 add more tests for @ids and providers, fix broken

* allow diwrappedfunction on vals

* rebase

* rebase

* remove factory executor printlns

* use macro logger

* rebase
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants