├── .gitattributes ├── .gitignore ├── LICENSE.txt ├── README.md ├── examples ├── build.gradle.kts └── src │ ├── main │ └── java │ │ └── example │ │ ├── PurchaseOrder.java │ │ └── PurchaseOrderExample.java │ └── test │ └── java │ ├── deoplice │ ├── DelegatedCollections.java │ └── KitchenSink.java │ └── example │ ├── DelegatedCollectionsTest.java │ ├── KitchenSinkTest.java │ ├── NestedRecursion.java │ └── Testie.java ├── images ├── autocomplete.gif └── deoplice-logo.JPG ├── notes.md ├── processor ├── build.gradle.kts └── src │ ├── main │ ├── java │ │ └── deoplice │ │ │ ├── annotation │ │ │ └── Updatable.java │ │ │ ├── lenses │ │ │ ├── API.java │ │ │ └── Lens.java │ │ │ └── processor │ │ │ ├── codegen │ │ │ ├── ClassReconciler.java │ │ │ ├── Controller.java │ │ │ ├── Generator.java │ │ │ ├── GrabBag.java │ │ │ ├── MethodGenerator.java │ │ │ ├── Parser.java │ │ │ ├── Renderer.java │ │ │ ├── extractor │ │ │ │ ├── BuilderStrategy.java │ │ │ │ └── WithStrategy.java │ │ │ └── methods │ │ │ │ ├── JavaCollections.java │ │ │ │ ├── Setter.java │ │ │ │ ├── Updater.java │ │ │ │ └── VavrCollections.java │ │ │ ├── processor │ │ │ ├── Extractor.java │ │ │ ├── FactoryFactoryFactoryFactoryFactory.java │ │ │ └── Processor.java │ │ │ └── types │ │ │ ├── AST.java │ │ │ ├── Config.java │ │ │ ├── Extractions.java │ │ │ └── LensBundle.java │ └── resources │ │ └── META-INF │ │ └── services │ │ └── javax.annotation.processing.Processor │ └── test │ └── java │ └── deoplice │ └── processor │ ├── codegen │ └── TestGrabBag.java │ └── processor │ ├── CharSequenceJavaFileObject.java │ ├── TestProcessor.java │ └── models │ ├── EmptyButAnnotationClass.java │ ├── KitchenSink.java │ ├── NestedUpdatable.java │ └── nested │ └── pkg │ └── AnotherClassFile.java ├── publishing.md └── settings.gradle.kts /.gitattributes: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/.gitattributes -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/README.md -------------------------------------------------------------------------------- /examples/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/build.gradle.kts -------------------------------------------------------------------------------- /examples/src/main/java/example/PurchaseOrder.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/main/java/example/PurchaseOrder.java -------------------------------------------------------------------------------- /examples/src/main/java/example/PurchaseOrderExample.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/main/java/example/PurchaseOrderExample.java -------------------------------------------------------------------------------- /examples/src/test/java/deoplice/DelegatedCollections.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/test/java/deoplice/DelegatedCollections.java -------------------------------------------------------------------------------- /examples/src/test/java/deoplice/KitchenSink.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/test/java/deoplice/KitchenSink.java -------------------------------------------------------------------------------- /examples/src/test/java/example/DelegatedCollectionsTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/test/java/example/DelegatedCollectionsTest.java -------------------------------------------------------------------------------- /examples/src/test/java/example/KitchenSinkTest.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/test/java/example/KitchenSinkTest.java -------------------------------------------------------------------------------- /examples/src/test/java/example/NestedRecursion.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/test/java/example/NestedRecursion.java -------------------------------------------------------------------------------- /examples/src/test/java/example/Testie.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/examples/src/test/java/example/Testie.java -------------------------------------------------------------------------------- /images/autocomplete.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/images/autocomplete.gif -------------------------------------------------------------------------------- /images/deoplice-logo.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/images/deoplice-logo.JPG -------------------------------------------------------------------------------- /notes.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/notes.md -------------------------------------------------------------------------------- /processor/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/build.gradle.kts -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/annotation/Updatable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/annotation/Updatable.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/lenses/API.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/lenses/API.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/lenses/Lens.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/lenses/Lens.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/ClassReconciler.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/ClassReconciler.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/Controller.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/Controller.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/Generator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/Generator.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/GrabBag.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/GrabBag.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/MethodGenerator.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/MethodGenerator.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/Parser.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/Parser.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/Renderer.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/Renderer.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/extractor/BuilderStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/extractor/BuilderStrategy.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/extractor/WithStrategy.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/extractor/WithStrategy.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/methods/JavaCollections.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/methods/JavaCollections.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/methods/Setter.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/methods/Setter.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/methods/Updater.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/methods/Updater.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/codegen/methods/VavrCollections.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/codegen/methods/VavrCollections.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/processor/Extractor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/processor/Extractor.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/processor/FactoryFactoryFactoryFactoryFactory.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/processor/FactoryFactoryFactoryFactoryFactory.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/processor/Processor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/processor/Processor.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/types/AST.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/types/AST.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/types/Config.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/types/Config.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/types/Extractions.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/types/Extractions.java -------------------------------------------------------------------------------- /processor/src/main/java/deoplice/processor/types/LensBundle.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/java/deoplice/processor/types/LensBundle.java -------------------------------------------------------------------------------- /processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/main/resources/META-INF/services/javax.annotation.processing.Processor -------------------------------------------------------------------------------- /processor/src/test/java/deoplice/processor/codegen/TestGrabBag.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/test/java/deoplice/processor/codegen/TestGrabBag.java -------------------------------------------------------------------------------- /processor/src/test/java/deoplice/processor/processor/CharSequenceJavaFileObject.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/test/java/deoplice/processor/processor/CharSequenceJavaFileObject.java -------------------------------------------------------------------------------- /processor/src/test/java/deoplice/processor/processor/TestProcessor.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/test/java/deoplice/processor/processor/TestProcessor.java -------------------------------------------------------------------------------- /processor/src/test/java/deoplice/processor/processor/models/EmptyButAnnotationClass.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/test/java/deoplice/processor/processor/models/EmptyButAnnotationClass.java -------------------------------------------------------------------------------- /processor/src/test/java/deoplice/processor/processor/models/KitchenSink.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/test/java/deoplice/processor/processor/models/KitchenSink.java -------------------------------------------------------------------------------- /processor/src/test/java/deoplice/processor/processor/models/NestedUpdatable.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/test/java/deoplice/processor/processor/models/NestedUpdatable.java -------------------------------------------------------------------------------- /processor/src/test/java/deoplice/processor/processor/models/nested/pkg/AnotherClassFile.java: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/processor/src/test/java/deoplice/processor/processor/models/nested/pkg/AnotherClassFile.java -------------------------------------------------------------------------------- /publishing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/publishing.md -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/chriskiehl/Deoplice/HEAD/settings.gradle.kts --------------------------------------------------------------------------------