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