Alexander Udalov
1bc7b4e363
Fix test data
2016-08-08 21:48:10 +03:00
Alexander Udalov
7f142253bf
Reflection: simplify KTypeProjection
2016-08-08 17:54:11 +03:00
Alexander Udalov
a7f4037206
Reflection: change order of arguments of inner generic type
...
As in KClassifier.createType and everywhere in the compiler, specify arguments
for the innermost type first. This is more convenient to use because generally
the construction/introspection of such type starts from the innermost class
anyway (i.e. something like generateSequence can be used, without the need to
call .reverse() in the end)
2016-08-08 17:54:11 +03:00
Alexander Udalov
89d69bc7eb
Reflection: add KClass.createInstance
2016-08-08 17:54:11 +03:00
Alexander Udalov
0525b1e6c1
Reflection: add KClass.declaredMembers
2016-08-08 17:54:11 +03:00
Alexander Udalov
30b7334e48
Reflection: add utilities to filter parameters by kind and name
2016-08-08 17:54:11 +03:00
Alexander Udalov
d78988a12a
Reflection: add KVisibility, KClass.visibility, KCallable.visibility
2016-08-08 17:54:11 +03:00
Alexander Udalov
7e317f7a7c
Reflection: add API for declaration modifiers
...
#KT-10447 Fixed
2016-08-08 17:54:11 +03:00
Alexander Udalov
ada81923dc
Reflection: add KClass.isInstance, KClass.cast, KClass.safeCast
...
#KT-11284 Fixed
2016-08-08 17:54:11 +03:00
Alexander Udalov
3702f4a7a7
Reflection: add KClass.{isSubclassOf,isSuperclassOf}, KType.{isSubtypeOf,isSupertypeOf}
...
The behavior in primitives.kt is likely to be reconsidered
#KT-8998 Fixed
2016-08-08 17:54:11 +03:00
Alexander Udalov
4cd252d9d5
Reflection: add KClass.{supertypes,superclasses,allSupertypes,allSuperclasses}
...
Some things are not implemented yet for allSupertypes, such as KType->Type
mapping of types and generic substitution of built-in types
2016-08-08 17:54:11 +03:00
Alexander Udalov
486ea62c72
Reflection: add KType.withNullability
2016-08-08 17:54:11 +03:00
Alexander Udalov
f958483e56
Reflection: deprecate KClass.defaultType
...
Its semantics were unclear and its javaType was implemented incorrectly (it
should have returned ParameterizedType with star projections for generic type)
2016-08-08 17:54:11 +03:00
Alexander Udalov
6b79782951
Reflection: add KClassifier.starProjectedType
...
#KT-8998 In Progress
2016-08-08 17:54:11 +03:00
Alexander Udalov
1edf3c7809
Reflection: add KClassifier.createType
...
#KT-8998 In Progress
2016-08-08 17:54:11 +03:00
Alexander Udalov
153e837a84
Reflection: add KType.jvmErasure
...
#KT-8998 In Progress
2016-08-08 17:54:11 +03:00
Alexander Udalov
e760b5ed53
Reflection: add KTypeParameter.toString
...
The test covers different type parameters with and without bounds, in case we
decide to also output upper bounds in toString
2016-08-08 17:54:11 +03:00
Alexander Udalov
170ea4dead
Reflection: add KVariance, KTypeParameter.{variance,upperBounds,equals,hashCode}
2016-08-08 17:54:11 +03:00
Alexander Udalov
127e7ab5b7
Reflection: add KClass.typeParameters, KCallable.typeParameters
...
Inheritance from KCallable is removed in kt9078.kt because it was irrelevant to
the test and because it gets in the way of modification of KCallable
2016-08-08 17:54:11 +03:00
Alexander Udalov
f69cc01f8e
Reflection: add KTypeProjection and KType.arguments
...
#KT-8998 In Progress
2016-08-08 17:54:11 +03:00
Alexander Udalov
c1dd831e65
Reflection: add KType.classifier
...
#KT-8998 In Progress
2016-08-08 17:54:11 +03:00
Mikhail Glukhikh
0c98231f53
Report UNINITIALIZED_VARIABLE also for qualified object property #KT-12809 Fixed
...
(cherry picked from commit 7b2857f)
2016-08-08 17:48:08 +03:00
Mikhail Glukhikh
35446037bb
UNINITIALIZED_ENUM_ENTRY compiler warning introduced #KT-2349 Fixed
...
(cherry picked from commit 76ac6d1)
2016-08-08 17:47:56 +03:00
Mikhail Glukhikh
b7ed68db05
CFA: No more UNRESOLVED_CALL for object / enum entry qualifiers
...
(cherry picked from commit 4b09de8)
2016-08-08 17:47:40 +03:00
Mikhail Glukhikh
962c2e5dd2
ControlFlowInformationProvider: convert to Kotlin
...
(cherry picked from commit a1394bc)
2016-08-08 17:45:52 +03:00
Mikhail Glukhikh
16cf6379c1
ControlFlowInformationProvider.java --> ControlFlowInformationProvider.kt
...
(cherry picked from commit 28bb9ea)
2016-08-08 17:45:41 +03:00
Alexander Udalov
de68d96236
Minor, add test for obsolete issue
...
#KT-12843 Obsolete
2016-08-08 15:42:52 +03:00
Nikolay Krasko
bfb4c48785
Minor: rename variables
2016-08-05 16:46:25 +03:00
Alexey Andreev
19cea48637
JS: add tests to show that #KT-12865 fixed as well
2016-08-05 16:32:27 +03:00
Michael Bogdanov
67808ef7fc
Disable kt13133 test on android
2016-08-05 14:11:00 +03:00
Nikolay Krasko
300e0acd27
Report RETURN_NOT_ALLOWED and RETURN_IN_FUNCTION_WITH_EXPRESSION_BODY only on the return with label (KT-13340)
...
#KT-13340 Fixed
2016-08-05 13:16:05 +03:00
Mikhail Zarechenskiy
95ea191442
Fix handling after ScriptTest execution: clean up temporary files on exit hooks
...
Test "testStandardScriptWithSaving" uses classloader and prevents from
deleting temporary files on windows
2016-08-04 15:19:15 +03:00
Mikhail Zarechenskiy
7679e49b25
Do not generate properties for script parameters if there is template definition
2016-08-04 15:19:15 +03:00
Natalia Ukhorskaya
6a04cd39b2
Debugger: allow to evaluate kotlin expressions in java files
...
#KT-7549 Fixed
If the context is inside PsiJavaFile, get list of all local variables available in current frame (this logic was removed in 29778311e8 01.12.2015 Drop unnecesary logic about additional context for lambda in debugger). For each variable create KtProperty inside top-level KtFunction in KtFile and set it as contextElement for KtCodeFragment. This file should have all imports from PsiJavaFile. We do not create properties on top-level because they will be highlighted as top-level vals/vars.
2016-08-03 17:51:49 +03:00
Pavel V. Talanov
30892e0154
KtLightClassForDecompiledDeclaration is now marked by KtLightClassMarker
...
Rename: KtJavaMirrorMarker -> KtLightClassMarker
Introduce code to be able to tell light classes from source and binaries apart in 'frontend.java'
2016-08-03 17:29:06 +03:00
Ilya Chernikov
1248230c69
Fix after review, add logging for scripting-specific behavior
2016-08-03 09:51:40 +02:00
Ilya Chernikov
f73b8e80be
Fixes after review
2016-08-03 09:51:40 +02:00
Ilya Chernikov
df64736192
Refactor script dependnecies template and resolver interfaces:
...
- get rid of obsolete interfaces and annotations
- rename actual resolver interface to ScriptDependenciesResolver
- make ScriptDependenciesResolverEx interface compatible with the one from 1.1-M01 to be able to support both on the provider side
- add possibility to override file patter in the script template provider
- construct resolver lazily, if possible
2016-08-03 09:51:40 +02:00
Ilya Chernikov
8024367915
Move KotlinScriptDefinitionFromTemplate to separate file...
...
leaving only interfaces in the scriptTemplate.kt. It could now be extracted into the separate lib if necessary.
2016-08-03 09:51:40 +02:00
Ilya Chernikov
c73ab6c0a1
Fix pathlist comparison - fixes too frequent caches updates
2016-08-03 09:51:40 +02:00
Ilya Chernikov
31d9da3d4f
Update resolver interface - make it return Future and add message reporter function +
...
plus minor fixes
2016-08-03 09:51:40 +02:00
Ilya Chernikov
5117ecb817
Collect annotations lazily
2016-08-03 09:51:40 +02:00
Ilya Chernikov
3b1e7494b8
Change dependencies resolver API - it gets message reporter and returns Future now
2016-08-03 09:51:40 +02:00
Pavel V. Talanov
500554e58c
Clarify API so that it's possible to get single KotlinScriptExternalDependencies per script file
2016-08-03 09:51:40 +02:00
Ilya Chernikov
59712d4bf8
Implement updatable dependencies index with usage API in the environment for using in REPL
2016-08-03 09:51:40 +02:00
Ilya Chernikov
210a37e08c
Support for multiparam dependency annotations (with reservations)
...
Due to missing feature (#KT-13106) it works either with single argument
or with all named arguments.
2016-08-03 09:51:40 +02:00
Ilya Chernikov
5900cad8b3
Add possibility to pass script dependency resolver directly rather than via definition annotation
...
This may help to reduce dependencies in certain situations
2016-08-03 09:51:40 +02:00
Nikolay Krasko
a9ee10a8b7
Ignore intervals that has no mapping for origin line (KT-12896)
2016-08-02 01:05:08 +03:00
Nikolay Krasko
64e034959f
Refactoring: introduce constants with strata names and reuse them in debugger
2016-08-02 01:02:07 +03:00
Mikhail Glukhikh
b7fd41844d
Wrap with safe let call handles qualified calls correctly #KT-13262 Fixed
...
(cherry picked from commit 7044348)
2016-08-01 12:24:38 +03:00