/daggerinternals

Snippets from "Deep dive into Dagger generated code" blog post series

Primary LanguageKotlinApache License 2.0Apache-2.0

Deep dive into Dagger generated code

This repository contains code from blog post series "Deep dive into Dagger generated code".

Interactor example - simple component with one @Module with @Provides method (source, generated)

Repository example - class with empty @Inject constructor (source, generated)

Repository example - class with @Inject constructor with parameters (source, generated)

Network module example - stateful @Module class with @Provides method with parameters (source, generated)

Network module example - stateless @Module object with static @Provides method (source, generated)

Component dependencies (source)

Custom component builder (source)

Component factory (source)

@BindsInstance (source)

Component factory and component fields (source)

Activity - members-injection example (source, generated)

BaseActivity - super members-injection example (source, generated for BaseActivity, generated for ChildActivity)

Components methods (source)

@Binds module methods (source)

Qualifiers (source)

Qualifiers and Kotlin properties (source)

Multibindings (source)

SingletonRepository example @Singleton with @Inject constructor (source)

Custom scope annotation (source)

@Reusable scope (source)

Lazy vs scopes (source)

Breaking circular dependencies using Lazy (source)

Subcomponent (source)

Subcomponents in modules (source)