Commit Graph

33 Commits

Author SHA1 Message Date
Yan Zhulanow cde7cb1076 Kapt3: Write Intellij annotations (NotNull/Nullable) to stubs 2017-02-08 19:01:05 +03:00
Yan Zhulanow 1b337e1a48 Generate enum values with bodies properly (KT-15803) 2017-01-30 20:13:08 +03:00
Yan Zhulanow 3b4a8e0f33 Kapt3: Write qualified name of classes on error type conversion, handle declaration-site variance properly. 2017-01-27 01:20:01 +09:00
Yan Zhulanow 72bbf9697b Kapt3: As javac now reads stubs from Java files, not from AST, we should provide the valid names for all identifiers (at least names should not clash with Java keywords).
Rename identifiers if it clashes with Java keywords. (KT-15838)
2017-01-27 01:20:01 +09:00
Yan Zhulanow e28b4dfbc7 Kapt3: Do not check type for star projection, it causes the infinite recursion. Also limit recursion depth to 10. (KT-15841) 2017-01-27 01:20:00 +09:00
Yan Zhulanow ec291455fa Kapt3: Replace error/NonExistentClass with the actual type (from PSI) (KT-15421) 2017-01-15 22:11:11 +09:00
Yan Zhulanow 4667947315 Kapt3: Nested class inside an interface should always be public and static (KT-15145) 2016-12-28 22:18:06 +03:00
Yan Zhulanow 142496c00f Kapt: Parse generic signatures with inner class types correctly 2016-12-28 22:18:04 +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 3f8accc2bf Kapt3: Fix '$' in function generic signatures (KT-15148) 2016-12-09 20:29:23 +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 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 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 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 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
Yan Zhulanow 10cfde4ab9 Kapt3: Call super class constructor with some default parameters.
Allow interface, annotation, enum modifiers on class.
2016-12-05 19:57:27 +03:00
Yan Zhulanow edaadb0d48 Kapt3: Initialize final fields in class constructors 2016-12-05 19:57:27 +03:00
Yan Zhulanow 666a522fed Kapt3: Generate empty body for constructor and void methods 2016-12-05 19:57:26 +03:00
Yan Zhulanow 4305706c16 Kapt3: Filter only relevant modifiers 2016-12-05 19:57:25 +03:00
Yan Zhulanow 5f45b41d53 Kapt3: Initial implementation of JCTreeConverter 2016-12-05 19:57:24 +03:00