Alexey Sedunov
b1f1360081
PSI: Make JetPostfixExpression.getBaseExpression() nullable
...
#KT-7761 Fixed
2015-05-21 19:29:49 +03:00
Pavel V. Talanov
cfdb1f4ec3
Refactor creation of ModuleDescriptor
...
Add storageManager to ModuleDescriptorImpl (to be used later)
Extract ModuleParameters to hold default imports and platform class map
Introduce MutableModuleContext to simplify module creation code
2015-05-20 19:45:50 +03:00
Alexander Udalov
189286efee
Support platformStatic members in companion object of enums
...
#KT-7777 Fixed
2015-05-19 18:47:00 +03:00
Nikolay Krasko
0108205367
Minor: log class of element in assert message
2015-05-19 13:04:57 +03:00
Mikhail Glukhikh
fdf0ea5546
Enum warnings fixed: deprecated delimiters, short super constructors, both in project and in libraries
2015-05-18 16:08:16 +03:00
Pavel V. Talanov
268d43d14a
Change ModuleContext#module type to ModuleDescriptor instead of ModuleDescriptorImpl
2015-05-17 18:24:50 +03:00
Pavel V. Talanov
01efbb1502
Introduce ModuleContext, ProjectContext and use it some of the APIs
2015-05-17 18:24:49 +03:00
Pavel V. Talanov
9d22a39924
Refactor: TopDownAnalysisParameters -> TopDownAnalysisMode
...
No longer implements TypeLazinessToken (was unused)
2015-05-17 18:24:49 +03:00
Pavel V. Talanov
d9c70b5927
Drop TopDownAnalysisParameters#isAnalyzingBootstrapLibrary()
2015-05-17 18:24:48 +03:00
Pavel V. Talanov
f9b6c25498
Refactor: TopDownAnalysisParameters doesn't implement GlobalContext
2015-05-17 18:24:47 +03:00
Natalia Ukhorskaya
f20e76c185
Improve assert message.
...
#KT-6625 In Progress
2015-05-14 14:08:16 +03:00
Dmitry Jemerov
9975bb8935
replace 'trait' keyword with 'interface' in user-visible messages and code generation tools
2015-05-12 11:49:37 +02:00
Dmitry Jemerov
cce1be3892
rename JetClass.isTrait() to isInterface(); rename ClassKind.TRAIT to INTERACE
2015-04-29 16:50:19 +02:00
Denis Zharkov
fc5236244b
Deprecate java.lang.Class as annotation parameter
2015-04-29 14:03:11 +03:00
Pavel V. Talanov
ac2cb9af74
Remove some usages of KotlinBuiltIns.getInstance()
...
Introduce DeclarationDescriptor.builtIns extension to get builtins where descriptors are available
Introduce various utilities in KotlinBuiltIns to check for primitive types and get fq names of builtins
2015-04-28 12:49:34 +03:00
Pavel V. Talanov
1a5efacbf3
Refactor frontend components
...
Make dependencies more explicit
Move components out of ExpressionTypingServices
Make ExpressionTypingUtils a true utility class, refactor stuff out
Extract new components: FakeCallResolver, MultiDeclarationResolver, ValueParameterResolver
2015-04-27 15:56:59 +03:00
Michael Bogdanov
39fabda611
New diagnostic for Java default method call via super in trait
2015-04-24 18:54:09 +03:00
Ilya Ryzhenkov
c2b3bcc95f
SymbolUsageValidator infrastructure
2015-04-24 15:44:28 +03:00
Alexander Udalov
43c11b2925
Merge CollectionClassMapping into JavaToKotlinClassMap
2015-04-24 02:09:05 +03:00
Alexander Udalov
a59fa5015e
Merge KotlinToJavaTypesMap into JavaToKotlinClassMap
...
Also use this new Kotlin->Java mapping in RuntimeTypeMapper instead of
inheriting directly from JavaToKotlinClassMapBuilder
2015-04-24 02:09:05 +03:00
Alexander Udalov
b956fb5eb0
Pull Java<->Kotlin primitive type mapping up to JavaToKotlinClassMapBuilder
2015-04-24 02:09:04 +03:00
Alexander Udalov
4b07ec11ea
Change Class<?> parameter to ClassId in JavaToKotlinClassMap implementations
2015-04-24 02:09:04 +03:00
Alexander Udalov
deff3968db
Simplify KotlinToJavaTypesMap, use only one map
2015-04-24 02:09:03 +03:00
Alexander Udalov
23a792aa44
Somewhat simplify mapping of JVM primitive types
2015-04-24 02:09:03 +03:00
Alexander Udalov
0a66c78449
Disperse primitive type mapping in JavaToKotlinClassMap
2015-04-24 02:09:02 +03:00
Nikolay Krasko
3e1c3e9dfe
Don't search for NonClasspathClassFinder classes and package during Kotlin resolve
2015-04-23 17:38:07 +03:00
Denis Zharkov
1b42e2fdcc
Deprecate calls of annotations' methods
2015-04-23 08:27:43 +03:00
Mikhail Glukhikh
e64dab0ae9
Review fixes after automatic code analysis
2015-04-21 15:29:34 +03:00
Mikhail Glukhikh
27625b04e1
Refactoring of JetTypeInfo / BindingContext. Loop data flow analysis corrected.
...
Now BindingContext includes expression type info instead of jump out possible, data flow info and expression type.
getType() was added into BindingContext, getType() and recordType() were added into BindingTrace.
JetTypeInfo now includes also jump possible flag and jump point data flow info.
Old TypeInfoWithJumpInfo deleted.
TypeInfoFactory introduced to create JetTypeInfo instances.
A pack of extra tests for break / continue in loops added.
2015-04-21 15:29:07 +03:00
Denis Zharkov
cc9322fbdd
Add quickfix for usages of javaClass<T>() in annotations loaded from Java
2015-04-17 18:52:17 +03:00
Denis Zharkov
f53baebf89
Show warning on usages of javaClass<T>() in annotations loaded from Java
2015-04-17 18:50:37 +03:00
Pavel V. Talanov
d76f293dc9
Speed up finding kotlin binaries and java files in CLI
...
Change VirtualFileFinder api to accept ClassId and adjust usages
Introduce KotlinCoreProjectEnvironment to create special KotlinCliJavaFileManager which shares cache with CliVirtualFileFinder
Truly distinguish between java source roots and binary roots: don't search for source files in classpath and vica versa
Implement JvmDependenciesIndex
2015-04-16 16:40:28 +03:00
Alexander Udalov
44e35cad29
Make 'sure' an inline function with a lazy parameter
...
Also replace some other non-lazy stdlib function usages with the new lazy
'sure'
2015-04-16 13:55:06 +03:00
Denis Zharkov
0abc63261d
Inject reflectionTypes into LazyJavaResolverContext
2015-04-16 10:40:20 +03:00
Denis Zharkov
f942f6ac8e
Move ReflectionTypes to builtins
2015-04-16 10:40:19 +03:00
Denis Zharkov
cc17f7d82d
JVM: Support using KClass as annotation parameter type
2015-04-16 10:40:19 +03:00
Denis Zharkov
1324667bc9
Prohibit use of positioned value arguments for java annotation
2015-04-07 19:31:30 +03:00
Dmitry Jemerov
7b507276ed
frontend diagnostics for kotlin.jvm.overloads
...
#KT-7203 Fixed
2015-04-02 20:30:36 +02:00
Nikolay Krasko
ad23e9159c
Refactoring: remove unnecessary subclassing PsiClass in marker interface
2015-04-01 02:01:53 +03:00
Denis Zharkov
a4018d9eae
Run "Add 'init' keyword in whole project" quickfix
2015-03-31 20:20:23 +03:00
Mikhail Glukhikh
9c1551bca9
Implementation of smart casts for public / protected immutable properties that are not open and used in the same module.
...
DataFlowValueFactory and its environment refactoring: containing declaration is added into factory functions
as an argument and used to determine identifier stability. A few minor fixes. #KT-5907 Fixed. #KT-4450 Fixed. #KT-4409 Fixed.
New tests for KT-4409, KT-4450, KT-5907 (public and protected value properties used from the same module or not,
open properties, variable properties, delegated properties, properties with non-default getter).
Public val test and KT-362 test changed accordingly.
2015-03-31 16:19:03 +03:00
Alexander Udalov
32c3bb8c7f
Extract module 'deserialization' out of 'serialization'
...
'deserialization' stays in core because it's needed both in compiler and
reflection, but 'serialization' is used only in the compiler
2015-03-30 19:44:17 +03:00
Alexander Udalov
085bc2197b
Merge module 'serialization.jvm' into 'descriptor.loader.java'
...
It was very small and there proved to be no point in separation of loading Java
classes and deserializing Kotlin classes
2015-03-30 17:22:06 +03:00
Natalia Ukhorskaya
785f7e749f
InlineCodegen: find virtual file using findVirtualFileWithHeader
2015-03-30 14:03:24 +03:00
Denis Zharkov
ce3bf423ad
Prohibit 'native' annotation on constructors
...
Currently doesn't work for primary ones
#KT-7000 Fixed
2015-03-27 16:09:41 +03:00
Pavel V. Talanov
ed218c473a
Get rid of 'class object' usages in code and builtins
...
Replace some comments and library usages as well
2015-03-25 18:28:00 +03:00
Alexander Udalov
9a041136f2
Make ClassId's relative class name FqName instead of FqNameUnsafe
...
It was FqNameUnsafe in times when there were classes without identifier names,
specifically class objects with names like '<class-object-for-...>'
2015-03-23 16:30:25 +03:00
Zalim Bashorov
8673f95dc5
AnnotationChecker -> DeclarationChecker
2015-03-20 21:23:30 +03:00
Pavel V. Talanov
06916d98c6
default -> companion: replace all mentions of default and default object
2015-03-17 15:47:39 +03:00
Pavel V. Talanov
2a6facaef6
default -> companion: default object -> class object in project code, builtins and libs code
2015-03-17 15:46:48 +03:00