Commit Graph

1636 Commits

Author SHA1 Message Date
Pavel V. Talanov
9ecf95532e Replace 'class object' with default object in project code 2015-03-10 18:07:46 +03:00
Alexander Udalov
ed022f892b Drop JavaTypeParameter#getIndex 2015-03-07 02:32:14 +03:00
Andrey Breslav
bbb59773aa filesToAnalyzeCompletely removed 2015-03-06 21:59:05 +03:00
Andrey Breslav
7d1a826778 Rename. LazinessToken -> TypeLazinessToken 2015-03-06 21:59:04 +03:00
Pavel V. Talanov
afe8773e41 Minor: rename OVERRIDE_CANNOT_BE_STATIC and improve message 2015-03-05 13:06:00 +03:00
Pavel V. Talanov
350864b22f Drop some of explicit ClassKind.CLASS_OBJECT and OBJECT usages 2015-03-05 13:05:56 +03:00
Nikolay Krasko
05de376fc3 Don't spam warning when file was removed 2015-03-05 01:30:37 +03:00
Evgeny Gerashchenko
3aa5f5200b Incremental: fixed adding file to package and using it from Java 2015-03-04 18:59:21 +03:00
Pavel V. Talanov
48fbce9582 Refactor: process mentions of class object
Rename usages that refer to "default object" concept now
Test data file names are left as is
2015-03-03 20:57:08 +03:00
Yan Zhulanow
9aef9b2643 Rename jet to kotlin in plugin-api 2015-02-26 15:25:58 +03:00
Yan Zhulanow
c756cfef86 Codebase update 2015-02-26 15:25:57 +03:00
Yan Zhulanow
4f9aba2cdc Support multi-module configuration in Android plugin 2015-02-26 15:25:57 +03:00
Andrey Breslav
e10d8a6fe0 ExternalDeclarationsProvider introduced 2015-02-26 15:25:40 +03:00
Andrey Breslav
565ce5a781 frontend.android renamed to android-compiler-plugin 2015-02-26 15:25:39 +03:00
Mikhail Mutcianko
adbe9afd4a add android completion tests
- add android plugin test classes as test library
- add base android test cases for kotlin, setting up android facet and sdk
2015-02-26 15:25:32 +03:00
Mikhail Mutcianko
1b50b226ae move android rename handler out of kotlin property renamer, extract resource manager class 2015-02-26 15:25:25 +03:00
Mikhail Mutcianko
ab0c922f53 refactor XmlHandler, optimize imports, remove unused files 2015-02-26 15:25:20 +03:00
Mikhail Mutcianko
eb7534f369 add converter output caching
- add two level caching: per xml conversion result and complete resulting JetFile,
  so that only modified xmls are actually converted, and if no change has been
  made to any of those, last successfully built psi file is returned
- merge AndroidUIXmlPathProvider and AndroidUIXmlParser
- update tests
2015-02-26 15:25:19 +03:00
Mikhail Mutcianko
2c44f5c4b7 missing files handling in converter
- silently continue if no files were found to convert
2015-02-26 15:25:17 +03:00
Mikhail Mutcianko
155d2fa979 ide analyzer integration stub
- add android ui xml path providers/stubs
- add generated file injection during analysis
2015-02-26 15:25:17 +03:00
Alexander Udalov
b99b1883bc Drop unused parameter in JavaToKotlinClassMap and subclasses 2015-02-25 20:13:46 +03:00
Alexander Udalov
fca7a8c4a2 Drop PrimitiveTypesUtil, store desc in JvmPrimitiveType 2015-02-25 20:13:46 +03:00
Andrey Breslav
d70d2ca146 Nullability of error types is not known
#KT-6829 Fixed
2015-02-25 14:59:21 +03:00
Nikolay Krasko
377209f0c3 Do not report CONFLICTING_JVM_DECLARATIONS on delegated origin element 2015-02-24 21:33:55 +03:00
Pavel V. Talanov
d6a942a574 Remove all deprecated OBJECT$ usages from project code 2015-02-18 19:33:56 +03:00
Nikolay Krasko
07d58b55eb Synchronize KotlinJavaPsiFacade with JavaPsiFacadeImpl 2015-02-18 18:51:58 +03:00
Nikolay Krasko
5d3d446ea4 Now PsiElementFinderImpl is registered via extension but it hadn't been added to JavaCoreProjectEnvironment 2015-02-18 18:51:53 +03:00
Natalia Ukhorskaya
43249e928c Fix tests with annotations: enum constants are now resolved as constants in JavaConstantExpressionEvaluator 2015-02-18 18:51:52 +03:00
Andrey Breslav
ab93b530f1 Don't use annotations after nullability was forced upon a platform type
#KT-6762 Fixed
 #KT-6763 Fixed
2015-02-17 18:44:46 +03:00
Alexander Udalov
6ce8d6bd2e Serialize descriptors for local/anonymous classes on JVM
Reflection needs this information to work for local classes and anonymous
objects
2015-02-16 21:46:21 +03:00
Alexander Udalov
0d05fca838 Support serialization/deserialization of local classes
Most of these changes are aimed to support and correctly transform ClassId for
local classes, no actual bytes are written or read at the moment (see next
commits). See the comment on ClassId for clarification.

A hack in DescriptorSerializer which erased anonymous types to Any (which had
been breaking the consistency between descriptors resolved from sources and
from serialized information) is now gone
2015-02-16 20:19:54 +03:00
Alexander Udalov
17c930c84f Use abstract factory for reflection objects on JVM
Introduce an abstract factory class ReflectionFactory which is responsible for creating
reflection objects (KClass, KProperty, ...). The meaningful implementation is
located in "reflection.jvm" where KClassImpl/KPropertyImpl/... are accessible
and can be instantiated. The default implementation will be used in the lite
runtime with no reflection and will return nulls / throw exceptions there.

Put all functions, calls to which are generated by JVM back-end, in one place:
the class named Reflection which contains only static methods. Previously these
functions were scattered across different files in module "reflection.jvm".

The code using reflection may now be compiled against either runtime, but
reflection features will work if and only if reflection is accessible at
runtime
2015-02-16 20:19:13 +03:00
Nikolay Krasko
56c2870ac6 Refactoring: make parameters not-null 2015-02-13 20:28:50 +03:00
Alexander Udalov
29c501e813 Remove useless InjectorForLazyResolveWithJavaUtil, move methods to LazyResolveTestUtil 2015-02-11 18:37:13 +03:00
Alexander Udalov
25775ee516 Drop TraceBasedJavaResolverCache, inline into LazyResolveBasedCache 2015-02-11 18:37:12 +03:00
Alexander Udalov
021315f049 Minor, make ModuleDescriptor public in injectors
It's much more convenient to call injector.getModule() than
injector.getResolveSession().getModuleDescriptor()
2015-02-11 18:37:12 +03:00
Alexander Udalov
5dcf9df6ab Drop InjectorForJavaDescriptorResolver and dependencies
Use InjectorForLazyResolveWithJava instead, it does essentially the same
2015-02-11 18:37:11 +03:00
Alexander Udalov
745ac7355b Simplify ResolveSessionUtils and LazyResolveBasedCache 2015-02-11 18:37:11 +03:00
Alexander Udalov
1e8d8d0a99 Cleanup FqNamesUtil.kt
Delete unused, move some utilities to fqNameUtil.kt in IDE, rewrite comments
2015-02-11 18:37:11 +03:00
Alexander Udalov
e7a744b315 Make JetTypeMapper aware of SAM constructor arguments
This obsoletes 'replaceName' workaround that was present in ClosureCodegen but
missing in other crucial call sites of mapSignature, e.g. generation of
EnclosingMethod info

 #KT-6691 Fixed
2015-02-11 18:10:41 +03:00
Andrey Breslav
0b41136c7c Minor. Logic clarified 2015-02-10 06:55:49 +01:00
Andrey Breslav
fcb6055913 SenselessComparisonChecker used for @NotNull values from Java 2015-02-10 06:55:49 +01:00
Andrey Breslav
f36d6ce5b2 Reporting USELESS_ELVIS and UNNECESSARY_NOT_NULL_ASSERTION on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav
30f5c1b953 Reporting unnecessary safe calls on Java's @NotNull values 2015-02-10 06:55:48 +01:00
Andrey Breslav
fcac449c70 Nullability-related warnings for receivers
#KT-6723 In Progress
2015-02-10 06:55:47 +01:00
Andrey Breslav
5db6bb04e3 Basic Java nullability warnings implemented
#KT-6723 In Progress
2015-02-10 06:55:47 +01:00
Alexander Udalov
6763d61aae Minor, fix warning, don't create empty map 2015-02-09 21:14:03 +03:00
Alexander Udalov
4128655893 Report incomplete hierarchy error
This is the case when you reference a Java class in Kotlin whose superclass is
not resolved. Previously this fact was swallowed by LazyJavaClassDescriptor
leading to mysterious compilation errors

 #KT-5129 Fixed
2015-02-09 21:14:02 +03:00
Evgeny Gerashchenko
e5fd6bc067 Minor. Inlined trivial functions. 2015-02-06 17:44:42 +03:00
Evgeny Gerashchenko
5b89f88447 Minor. Simplified getObsoletePackageParts() and similar functions. 2015-02-06 17:44:40 +03:00