Yan Zhulanow
91fcb15f3e
Kapt3: Set javac codepage to UTF-8 (KT-15232)
2016-12-14 20:53:34 +03:00
Stanislav Erokhin
59efedf610
Rename platform to header.
2016-12-13 18:00:00 +03:00
Roman Elizarov
8affb2726f
Pluggable Synthetic Objects
2016-12-12 18:43:26 +03:00
Yan Zhulanow
8afac55a90
Kapt3, Minor: Sort stubs output in tests
2016-12-09 20:53:48 +03:00
Yan Zhulanow
7644724cd3
Kapt3: Fix tests (parameter names are not provided for abstract methods in 1.1)
2016-12-09 20:48:24 +03:00
Yan Zhulanow
5061bab794
Kapt3: Add property annotation holder methods to Java stubs (KT-13767)
2016-12-09 20:40:35 +03:00
Yan Zhulanow
e3db014c27
Kapt3: Allow to use ':' in annotation processor option value (KT-15139)
2016-12-09 20:29:34 +03:00
Yan Zhulanow
3f8accc2bf
Kapt3: Fix '$' in function generic signatures (KT-15148)
2016-12-09 20:29:23 +03:00
Yan Zhulanow
40ef487129
Kapt3, Minor: Flush logs before throwing parse error exception
2016-12-09 20:29:14 +03:00
Yan Zhulanow
c0b772a896
Kapt3: Fix signature clash (return type is different) for non-generic methods
2016-12-09 20:28:57 +03:00
Yan Zhulanow
5f0d270e9e
Kapt3: Clear javac's boot classpath (KT-15001)
2016-12-09 20:28:52 +03:00
Yan Zhulanow
ada8bb63a4
Kapt3: Separate classpaths for compilation and for annotation processing
2016-12-09 20:28:46 +03:00
Yan Zhulanow
3c77242da2
Kapt3: Fix parameter names in JvmOverloads-generated methods (KT-15024)
2016-12-09 20:28:41 +03:00
Yan Zhulanow
77153f0926
Kapt3: Fix "Parameter names are clashing in inner class constructor" (KT-14998)
2016-12-09 20:28:36 +03:00
Yan Zhulanow
b9a0a4f3db
Kapt3: Ensure that field types and method return types are not anonymous (KT-14997)
2016-12-09 20:28:31 +03:00
Yan Zhulanow
01c76153c7
Kapt3: Allow function overloads based on return type (KT-14996). Fix wrong facade class name inside the default package
2016-12-09 20:28:25 +03:00
Yan Zhulanow
6217d21c24
Kapt3: Kapt3 fails on several top-level functions in one package (KT-14991)
2016-12-09 20:28:20 +03:00
Yan Zhulanow
34316d09bf
Kapt3: Close annotation processing ClassLoader (KT-9440)
2016-12-09 20:28:11 +03:00
Yan Zhulanow
cbef0250aa
Allow to turn the first parameter of a SAM-converted lambda into the receiver (KT-12848)
2016-12-09 20:01:21 +03:00
Yan Zhulanow
3b65cb1ef2
Check if modality is refined in "Redundant modifier" inspection
2016-12-09 20:01:18 +03:00
Yan Zhulanow
c705f0c437
NoArg: Add IDE integration
2016-12-09 20:01:14 +03:00
Yan Zhulanow
e626b121ad
NoArg: Add compiler plugin
2016-12-09 20:01:10 +03:00
Yan Zhulanow
6abde4223b
AllOpen: Add IDE integration
2016-12-09 20:01:07 +03:00
Yan Zhulanow
f57df272ac
Allopen: Handle allopen annotations on classes (KT-12149)
2016-12-09 20:00:56 +03:00
Yan Zhulanow
58f408e173
Allopen: Add allopen compiler plugin
2016-12-09 20:00:54 +03:00
Alexey Andreev
ba2443bcb3
Add external property to class and property descriptors
2016-12-08 15:41:38 +03:00
Yan Zhulanow
d246bd8cff
Kapt3: Fix literal expressions for byte and short
2016-12-05 19:57:59 +03:00
Yan Zhulanow
de0e4ac340
Kapt3: Add tests for primitive values and NonExistentClass
2016-12-05 19:57:57 +03:00
Yan Zhulanow
582f85f303
Kapt3: Generate stub for error.NonExistentClass to make javac happy
2016-12-05 19:57:56 +03:00
Yan Zhulanow
325245f996
Minor: Rebase to 1.0.6, re-generate tests
2016-12-05 19:57:55 +03:00
Yan Zhulanow
c2013c4d03
Kapt3: Add 'useLightAnalysis' option to compiler and Gradle plugins
2016-12-05 19:57:53 +03:00
Yan Zhulanow
75a8088f65
Kapt3: Minor: Changes on review
2016-12-05 19:57:51 +03:00
Yan Zhulanow
95d1210317
Kapt3: Extract annotation processing to its own task in Gradle. Now the kotlinCompile task should know nothing about kapt, for the main task it's just a regular Java source root.
2016-12-05 19:57:49 +03:00
Yan Zhulanow
0914a65234
Kapt3: Support processor arguments. Add integration tests.
2016-12-05 19:57:45 +03:00
Yan Zhulanow
b54df7a945
Kapt3: Do not resolve declaration bodies if possible in kapt
2016-12-05 19:57:44 +03:00
Yan Zhulanow
d884830700
Allow to avoid declaration body resolution for function and property initializers if the return type is explicitly specified. This significantly reduces the analysis time in kapt3.
2016-12-05 19:57:43 +03:00
Yan Zhulanow
90cbf172d2
Kapt3: Use annotation simple name if the annotation declaration is inside the same package as the current source file's package
2016-12-05 19:57:42 +03:00
Yan Zhulanow
1f1491f1ca
Kapt3: Fix a number of errors in ClassFileToSourceStubConverter:
...
1. Support strictfp modifier for methods.
2. Support Kotlin top-level methods and properties.
3. Fix visibility modifiers on enum methods.
2016-12-05 19:57:41 +03:00
Yan Zhulanow
e22ce14c36
Kapt3: Review fixes
2016-12-05 19:57:40 +03:00
Yan Zhulanow
86aa82da6c
Kapt3: Minor: Refactor kapt3 module (move/rename)
2016-12-05 19:57:38 +03:00
Yan Zhulanow
e61a7c7f2c
Kapt3: Minor: Annotation processor classes may be initialized only once, so SIMPLE_PROCESSOR became a factory method
2016-12-05 19:57:37 +03:00
Yan Zhulanow
03244123c9
Kapt3: Minor: Measure stub generation time
2016-12-05 19:57:36 +03:00
Yan Zhulanow
6b1fc6fc39
Kapt3: Output stubs to .java files in verbose mode
2016-12-05 19:57:35 +03:00
Yan Zhulanow
aa15e0ad67
Kapt3: Run Javac annotation processing in the kapt3 plugin.
...
There are two modes:
1. Run only annotation processing (like kapt1 with stubs + javac). Seems that it may be faster to process annotations once before Kotlin compilation than launching AP on each IC round.
2. Run AP, repeat analysis and compile Kotlin classes (like kapt2). This mode doesn't support IC for now.
2016-12-05 19:57:35 +03:00
Yan Zhulanow
64046f1e40
Kapt3: Add simple AP test with Kotlin
2016-12-05 19:57:33 +03:00
Yan Zhulanow
5b780ec56c
Kapt3: Parse generic signatures of methods and fields
2016-12-05 19:57:32 +03:00
Yan Zhulanow
efd25de13f
Kapt3: Parse generic signatures of classes.
...
Refactoring (move TreeMaker helper functions to KaptTreeMaker, mapValues() and others to utils.kt).
2016-12-05 19:57:31 +03:00
Yan Zhulanow
e4158a5571
Kapt3: Number of bugfixes in JCTreeConverter:
...
Convert Java primitive and array types properly.
Enums: ignore first two synthetic constructor parameters, do not generate super class constructor call, add ACC_ENUM flag to enum values, do not generate "values" and "valueOf" methods.
Provide a JavaFileObject for JCCompilationUnit.
Handle DefaultImpls, ignore empty DefaultImpls classes.
Use a name table from Javac Names.
2016-12-05 19:57:30 +03:00
Yan Zhulanow
e131763cb0
Kapt3: Put static modifiers on nested non-inner classes.
...
Do not initialize synthetic and static fields in constructor.
2016-12-05 19:57:29 +03:00
Yan Zhulanow
68c2e8d71d
Kapt3: Do not generate body for abstract methods.
...
Add java.lang.Override annotation for overrides.
Ignore java.lang.Synthetic annotation.
2016-12-05 19:57:28 +03:00