- dc07ed5 Inline requests for bindings that were provided with a @BindInstance method, and enable SimpleMethodRequestFulfillment to operate on instance @Provides methods by ronshapiro · 8 years ago
- 0c1aa50 Don't call TypeName.get() directly when making a codeblock - JavaPoet will do it for us by ronshapiro · 8 years ago
- b5ae249 Remove subclasses of FrameworkInstanceBindingExpression because their behavior differed in easily parameterizable ways. by dpb · 8 years ago
- 68c77d8 Split HasBindingExpressions into GeneratedComponentModel and ComponentBindingExpressions. by dpb · 8 years ago
- a6ff6c1 Move getRequestFulfillmentWithPossibleRawtypeCast onto BindingExpression, renamed to getDependencyArgumentExpression. Add documentation. by dpb · 8 years ago
- 186d17a Remove unused framework fields by ronshapiro · 8 years ago
- 55cd392 Fix an issue with inlined members injection in components and by ronshapiro · 8 years ago
- e05f921 Inline members injection in components and factories. by ronshapiro · 8 years ago
- 4377417 Generate binding expression initialization code as a traversal during interface method implementation. by erichang · 8 years ago
- 7544b62 Remove all assert statements from dagger codegen by ronshapiro · 8 years ago
- c8c6c05 Add null-checking for non-nullable @Provides methods that are inlined or proxied. by dpb · 8 years ago
- cb725da Add ImmutableSet support to SetBindingRequestFulfillment by ronshapiro · 8 years ago
- 45e68e3 Refactor BindingExpression to implement RequestFulfillment. by dpb · 8 years ago
- 9dd6aed Refactor framework fields member selects into a type ComponentField that holds information about the field, including the field spec, initialization code, and the member select. by erichang · 8 years ago
- 5b3097d Use a RequestFulfillment for delegate (@Binds) factory initialization. by dpb · 8 years ago
- 210e715 Refactor component builder generation into its own class. by ronshapiro · 8 years ago
- fceb47e Add some convenience methods to retrieve a request fulfillment in AbstractComponentWriter. by ronshapiro · 8 years ago
- 3939e27 SubcomponentBuilderRequestFulfillment by ronshapiro · 9 years ago
- a6cc790 Remove a confusing switch and use an if block instead by ronshapiro · 9 years ago
- 2c9ec49 Move some MemberSelect logic out of AbstractComponentWriter and into MemberSelect by ronshapiro · 9 years ago
- df43ccb Use a raw framework class to avoid Java 7's poor type inference when scoping generic @Inject classes. by dpb · 9 years ago
- 3a179ec Move prod compiler code and guava/jdk Optional tests from their previous maven structure (src/{main,test}/) to the {java,javatest}/ model typical to bazel by ronshapiro · 9 years ago[Renamed from compiler/src/main/java/dagger/internal/codegen/AbstractComponentWriter.java]
- 1f9539e Use String.replace() instead of replaceAll() by ronshapiro · 9 years ago
- 0aab145 Use static classes for Provider<component dependency> by ronshapiro · 9 years ago
- 57f302c Make injection of core Android types easier. by ronshapiro · 9 years ago
- ed30daa Add RequestFulfillment.getSnippetForFrameworkDependency. Now, in addition to knowing how to fulfill an individual dependency request, RequestFulfillment knows how to fulfill requests at the framework level as well (including adapting providers to producers when necessary). by gak · 9 years ago
- 88a126e Use the builder method name as the variable name for ComponentRequirements that come from @BindsInstance methods. by beder · 9 years ago
- 645274e Fix the way that we name variables based on TypeElements so that we don't collide with keywords. by gak · 9 years ago
- ffd98f6 Use java.util.Optional. by dpb · 9 years ago
- 3a8d6ea Make module validation fail for modules whose binding methods or included modules have validation errors. Without this, a module with a bad binding method would not prevent processing the component, which might mean Dagger throws an exception because it assumes everything is valid when building a BindingGraph. by dpb · 9 years ago
- b50b8ae Add @BindsInstance, which can be used to add instance binding methods to component builders. by beder · 9 years ago
- c1d3e2c A handful of minor cleanups for MembersInjectionBinding and MembersInjectorGenerator. by gak · 9 years ago
- d804a30 Publish Releasable References to Github and add an android/pom.xml so we can start releasing an Android-specific artifact by ronshapiro · 9 years ago
- ee138b9 Update Dagger to use the latest versions of AutoValue and AutoCommon. In the process migrate to the new API for getLocalAndInheritedMethods and use @Memoized. by gak · 9 years ago
- 4d86019 Change enum factories to be classes with single instances. The guarantees given by an enum aren't strictly required and this cuts the number of classes in half. by gak · 9 years ago
- 86fe3c7 Add componentType() to BindingGraph to avoid Law-of-Demeter chaining. by dpb · 9 years ago
- 75b9b72 Rework dependencies. by gak · 9 years ago
- bfe7280 Create the RequestFulfillmentRegistry as a single entity responsible for providing the most appropriate RequestFulfillment for a given component. Then, use RFR in SimpleMethodRequestFulfillment so that we can directly invoke methods that have arguments as well. by gak · 9 years ago
- 3d228a0 Rework MapOfProducerProducer to use utility methods exclusively to collect Provider and Producer instances into the appropriate Map. by gak · 9 years ago
- eca5cd1 Do a quick pass over our factories to make sure that we don't wrap objects in cases where we don't have to. Particularly, this means that we implement more things in terms of InstanceFactory and make InstanceFactory implement Lazy. by gak · 9 years ago
- 5f21a80 MOE sync+squash by Ron Shapiro · 9 years ago
- aeccddf Use forEach and a method ref in addFrameworkFields. by gak · 9 years ago
- 185f1fa Support java.util.Optional for optional bindings. by dpb · 9 years ago
- 6624110 Java 8. Shit just got real. (redux) by gak · 9 years ago
- e0998bd Implement optional bindings for Dagger-Producers by dpb · 9 years ago
- 800c746 Implement TypedReleasableReferenceManagers. by dpb · 9 years ago
- 0322eb5 Use InstanceFactory for absent optional providers. by dpb · 9 years ago
- fbb6840 Add @Module.subcomponents as a way to add subcomponents to a component without needing to define a factory method. This allows Dagger to avoid generating a subcomponent implementation when a subcomponent goes unused. by ronshapiro · 9 years ago
- d8d950a Implement optional bindings by dpb · 9 years ago
- 8449ca3 "Framework class" meant 2 things. by gak · 9 years ago
- f370e19 Introduce RequestFulfillment as a way to model the operation that turns the logical concept of a binding into a CodeBlock suitable for preforming the operation requested by a DependencyRequest. by gak · 9 years ago
- 34e4ef7 Make DependencyRequest.requestElement optional, so that dependency requests that come from undeclared bindings don't have a fake request element. by dpb · 9 years ago
- e55f074 Update Dagger to use Google's new standard import order: by gak · 9 years ago
- 1b65b6a Add blank line above package declaration by dpb · 9 years ago
- dd27603 Make BindingDeclaration's bindingElement optional, so that undeclared bindings such as synthetic multibindings don't use an arbitrary request element. by dpb · 9 years ago
- 633c97b Automated g4 rollback of changelist 126801598. by gak · 9 years ago
- 7d2d3a5 Make BindingDeclaration's bindingElement optional, so that undeclared bindings such as synthetic multibindings don't use an arbitrary request element. by dpb · 9 years ago
- 5dde42d Clean up opensource repo; remove Dagger 1 references by ronshapiro · 9 years ago
- 7edcd4d Refactoring in preparation for releasable references feature. by dpb · 9 years ago
- d75b83c ✂️ dead code, fix some broken javadoc by ronshapiro · 9 years ago
- cea017c Remove the special case where we hold a local variable to invoke a Factory by instead explicitly specifying the generics. by gak · 9 years ago
- 698653f Add factories for SetType.from(Key) and MapType.from(Key) by ronshapiro · 9 years ago
- a360371 Fix map bindings with contributions from both @Produces and @Provides methods. by beder · 9 years ago
- 846fd94 Implement @Binds @IntoSet and @ElementsIntoSet by ronshapiro · 9 years ago
- 71714e6 Initialize deferred dependencies before delegates. by gak · 10 years ago
- 3d0d902 Optimizations to SetFactory.Builder. by ronshapiro · 10 years ago
- d42ce7c Store a binding's @MapKey annotation directly instead of deriving it from the binding element. by ronshapiro · 10 years ago
- e56af6a Add a SetFactory.Builder which doesn't require all Providers to be Provider<Set<T>>. Also create a builder for SetProducer and SetOfProducedProducer. by ronshapiro · 10 years ago
- 0fe3d92 Only call graph.componentRequirements() once per addBuilderMethods() invocation. by erikbodzsar · 10 years ago
- 4955ef9 Change interface HasSourceElement to base class BindingDeclaration (implementing HasKey), and delete SourceElement itself. by dpb · 10 years ago
- d289ddc Clean up FrameworkField a bit. Rename methods, remove code duplication. Pass an optional framework class name rather than an optional BindingType to forResolvedBindings. by dpb · 10 years ago
- c9bd6d8 Let people inject Provider<Lazy<Foo>>. by dpb · 10 years ago
- 26ece5b Rename SimpleLazilyInitializedProvider to SingleCheck (to match DoubleCheck) by ronshapiro · 10 years ago
- 50a10c8 Add fields for all producerFromProviders, so that we don't need to re-initialize them each time they're used. by beder · 10 years ago
- b9158d8 Use features added in JavaPoet 1.6.0 by ronshapiro · 10 years ago
- e1b68a2 Add @Bind for delegating bindings from one key to another. by gak · 10 years ago
- 5db92fe Remove the ability to set the production executor on a component builder. by beder · 10 years ago
- b232ea9 Merge DoubleCheckLazy and ScopedProvider into a DoubleCheck class. by dpb · 10 years ago
- 4cd56e8 Implement @Reusable. by dpb · 10 years ago
- b824a7e Allow for components to request subcomponent builders with the same simple names by ronshapiro · 10 years ago
- ea019be Add static utility methods into dagger internal for use in generated code: by gak · 10 years ago
- 6753917 Move Dagger processing options into CompilerOptions. by beder · 10 years ago
- 893f770 Add @Production, a qualifier that binds an Executor to provide the executor to production components and subcomponents. by beder · 10 years ago
- 0419e6a Add deprecation message to all @Deprecated Component.Builer methods. by ronshapiro · 10 years ago
- 6475f47 Remove JavaWriter from Dagger by ronshapiro · 10 years ago
- f22babc Convert AbstractComponentWriter to use JavaPoet instead of JavaWriter. by ronshapiro · 10 years ago
- db24072 Change the representation of multibindings in a binding graph. by dpb · 10 years ago
- f6be7d6 Extract FrameworkDependency to represent a combination of BindingKey and framework class that satisfies one or more dependency requests for a binding. It's used to represent the fields and constructor parameters of a factory or members injector implementation, both for generating the class and for generating calls to its constructor or factory method. by dpb · 10 years ago
- c2aea2b Implement requesting of Map<K, Produced<V>> for map bindings. by beder · 10 years ago
- 2d8e97d Don't write empty initialize() methods. Don't generate empty initialization snippets when "initializing" a framework type that needs no initialization because it's inherited or a static member-select. by dpb · 10 years ago
- 89f98e5 Implement producer map bindings. by beder · 10 years ago
- daee412 Refactor MemberSelect to be a more precise representation of which member is being selected. In doing so, make the individual member select responsible for checking accessibility in a sane, consistent way. by gak · 10 years ago
- 51bf8b4 Support empty multibinding declarations for sets and maps using @Multibindings on an interface in a @Module. by dpb · 10 years ago
- 5719880 Clarify and fix AbstractComponentWriter.getDependencyParameters (renamed to getDependencyParameterSnippets). by dpb · 10 years ago
- a262042 Extract some mixin types in preparation for a pending change supporting multibinding declarations. by dpb · 10 years ago
- bf29ab3 Change how synthetic bindings are resolved. by dpb · 10 years ago
- 553936b FrameworkField's frameworkClass() and bindingKey() properties were unused, even for equality semantics (they're both captured by the frameworkType() property), so remove them. That lets us remove Binding.bindingKey(). Move frameworkClassForResolvedBindings() to an instance method on ResolvedBindings, just like Binding has frameworkClass(). by dpb · 10 years ago
- 8d65f27 Tiny refactoring: Move bindingPackageFor to ResolvedBindings, and make it an instance method. by dpb · 10 years ago
- 0771bf0 Generate unique subcomponent implementation names. by ronshapiro · 10 years ago
- 05cdf1e Make ResolvedBindings more responsible for facts about the bindings it contains, instead of making callers call static methods on its contained bindings. by dpb · 10 years ago