Commit Graph

14472 Commits

Author SHA1 Message Date
Alexey Sedunov 8b0e8ed398 Keep original expression when attempting to bind reference to empty FqName 2014-03-07 19:24:37 +04:00
Alexey Sedunov ca65e27214 Minor refactoring 2014-03-07 19:24:36 +04:00
Alexey Sedunov 09574d72b8 Translate JetSimpleNameReference to Kotlin 2014-03-07 19:24:35 +04:00
Alexey Sedunov c9d10cfcd3 Do not postpone reference lengthening
Do not shorten references located in import/package directives
2014-03-07 19:24:34 +04:00
Alexey Sedunov 5327031300 Update references when moving Kotlin file
#KT-1696 Fixed
2014-03-07 19:24:33 +04:00
Alexey Sedunov e4df997ad0 Fix warnings 2014-03-07 19:24:31 +04:00
Alexey Sedunov 99b8c47276 Extract reference resolver from ShortenReferences 2014-03-07 19:24:30 +04:00
Natalia Ukhorskaya d9d045cbb2 Fix line separators for windows in tests 2014-03-07 18:05:12 +04:00
Mikhael Bogdanov 1fdd3bd615 Android test fix 2014-03-07 16:29:08 +04:00
Mikhael Bogdanov e54ece8d12 Field access chain update on lambda regeneration 2014-03-07 16:12:10 +04:00
Mikhael Bogdanov 632061b324 Support nested chain of non-inline lambdas inside inline one 2014-03-07 14:53:50 +04:00
Alexander Udalov 4937812414 Rewrite KotlinClassHeader to Kotlin 2014-03-07 03:43:41 +04:00
Alexander Udalov 39cd3b1e13 Add tests that there's no PSI for all kinds of synthetic classes 2014-03-07 03:43:28 +04:00
Alexander Udalov 0b2c832343 Write KotlinSyntheticClass to anonymous and local classes 2014-03-07 03:08:19 +04:00
Alexander Udalov cbfb626d50 Write KotlinSyntheticClass to generated classes for functions
That is SAM wrappers, callable reference wrappers, local functions and
anonymous functions
2014-03-07 03:08:18 +04:00
Alexander Udalov 8e71fe376f Minor, add toString() to OutputFile for debugging 2014-03-07 03:08:17 +04:00
Alexander Udalov 36936e0a6b Minor fix in tests for sources appearing in libraries 2014-03-07 03:08:16 +04:00
Alexander Udalov 64ac223895 Move DebugProtoBuf to module "compiler-tests"
To help debug serialization-related code in compiler tests
2014-03-07 03:08:16 +04:00
gavinkeusch 2f613638c2 KT-4562 New Intention: Add and Remove braces from control statements that have single line bodies 2014-03-06 23:45:45 +04:00
Nikolay Krasko b6a9772508 Configuration for Android Studio debug created 2014-03-06 20:03:15 +04:00
Pavel V. Talanov d05697d3ac Optimize Imports tests: add test for qualified expression with nested enum 2014-03-06 18:45:37 +04:00
Zalim Bashorov ad1642f802 Update to IDEA 134.1445 EAP 2014-03-06 16:13:06 +04:00
Pavel V. Talanov 6f9b3f1bae Optimize Imports: simplify code 2014-03-06 16:01:07 +04:00
Pavel V. Talanov 809be9b069 Optimize Imports: do not keep imports of unimportable entities 2014-03-06 16:01:06 +04:00
Pavel V. Talanov c87cc0dde1 Optimize Imports tests: Switch to generated approach
Move test and rename test data
Delete unused testdata
Rewrite OptimizeImportOnFlyTest
2014-03-06 16:01:05 +04:00
Pavel V. Talanov 3155a66319 Move, rewrite and rename JetImportOptimizer
Rewrite it to Kotlin and rename to KotlinImportOptimizer, move to imports package
Create ImportsUtils.kt
2014-03-06 16:01:04 +04:00
Pavel V. Talanov f5c8557ff7 Rewrite optimize imports using JetReference#resolveToDescriptors
#KT-4451 Fixed
2014-03-06 16:01:03 +04:00
Pavel V. Talanov 6f2ed9a5a9 Add JetMultiDeclarationReference
A reference to component* functions
2014-03-06 16:01:02 +04:00
Mikhael Bogdanov 00764d0ae1 Don't generated redundant class files 2014-03-06 13:02:32 +04:00
Nikolay Krasko ea5788f86c Assert with framework statements
Should work even if -ea is not enabled
2014-03-05 17:31:26 +04:00
Tuomas Tynkkynen 8ce0d43118 Add intention for converting an implicit 'it' parameter to an explicitly named parameter
Kotlin's function literals have a shortcut for one-argument literals:
the single argument doesn't need to be explicitly named, but can be
referred via the 'it' contextual keyword. Add an intention action for
converting an implicit 'it' parameter to an explicitly named one.

For example, 'array(1, 2, 3).filter { it % 2 == 0 }'
          -> 'array(1, 2, 3).filter { x -> x % 2 == 0 }'
2014-03-05 17:31:25 +04:00
Tuomas Tynkkynen c6d6a32314 Add intention for replacing explicit function literal parameter with 'it'
Kotlin's function literals have a shortcut for one-argument literals:
the single argument doesn't need to be explicitly named, but can be
referred via the 'it' contextual keyword.

For example, 'array(1, 2, 3).filter { x -> x % 2 == 0 }'
          -> 'array(1, 2, 3).filter { it % 2 == 0 }'

Add an intention action for this transformation.
2014-03-05 17:31:21 +04:00
Andrey Breslav 1dd57b5f6e Merge declarationsByLabel in chained scopes 2014-03-05 14:37:26 +04:00
Andrey Breslav 19bc996d1b Minor. Unused field removed 2014-03-05 14:37:26 +04:00
Andrey Breslav f752527e48 Test data fixed after adding a new intention 2014-03-05 12:02:14 +04:00
Pavel V. Talanov dab6716664 Minor: fix test data for PropertyMetadata completion test 2014-03-04 21:20:01 +04:00
Pavel V. Talanov bc79855cf5 Minor: additional logging when failing to read file in VirtualFileKotlinClass 2014-03-04 21:20:00 +04:00
Pavel V. Talanov 0cfac5f9c7 Decompiler: show java file with a comment when kotlin file has incompatible abi version
Introduce JetDecompilerForWrongAbiVersion
2014-03-04 21:19:59 +04:00
Pavel V. Talanov 825dacfd13 Migrate to newer API 2014-03-04 21:19:58 +04:00
Pavel V. Talanov 7db9d31a70 Decompiler: allow java decompiler to process trait impl classes 2014-03-04 21:19:57 +04:00
Pavel V. Talanov 50d59c789a Decompiler: do not create decompiled files for inner classes and anonymous functions
Rewrite DecompiledUtils to Kotlin
2014-03-04 21:19:56 +04:00
Pavel V. Talanov 80bc7b286a Test for reference to nested class in library 2014-03-04 21:19:55 +04:00
Pavel V. Talanov 733da8caec Test checking that no PSI is built for synthetic classes produced by compiler 2014-03-04 21:19:54 +04:00
Pavel V. Talanov 47a0715c8b Minor: Add assertion in DecompiledTextFactory 2014-03-04 21:19:53 +04:00
Pavel V. Talanov b5c119200f Decompiler: remove project from decompilation API
Remove JetDecompiledData, DecompiledText is enough
Move JetDecompiled to upper level, rename to JetClsFile
Move caches into JetClsFile and JetClassFileViewProvider
Rewrite JetClassFileViewProvider and JetClsFile to Kotlin
DecompiledDataFactory -> DecompiledTextFactory
2014-03-04 21:19:52 +04:00
Pavel V. Talanov 5bd9955785 Decompiler: switch to using non-project based decompiled text builder
Move ProjectBasedResolverForDecompiler to test root (since only used for validating)
2014-03-04 21:19:51 +04:00
Pavel V. Talanov 32ecdfede0 Decompiler: Test that checks consistency between project-based and non-project-based decompilers 2014-03-04 21:19:50 +04:00
Pavel V. Talanov b2b7e6996b Decompiler: Introduce DeserializerForDecompiler
Component which can "resolve" descriptors without project
It builds dummy descriptors for dependencies which are enough to build decompiled text
2014-03-04 21:19:50 +04:00
Pavel V. Talanov 2499e95d38 Refactor DecompiledDataFactory 2014-03-04 21:19:49 +04:00
Pavel V. Talanov 65a479e3ef Rewrite DecompiledDataFactory to Kotlin 2014-03-04 21:19:48 +04:00