Denis Zharkov
e2cd983d49
Add quickfix for replacing deprecated annotations
2015-05-07 22:36:17 +03:00
Denis Zharkov
e59a0dd0c6
Adjust KotlinSuppressIntentionAction to syntax with '@'
2015-05-07 22:36:16 +03:00
Denis Zharkov
849b8acbf8
Replace annotations with brackets in testData
...
Just in tests that changed after deprecation
2015-05-07 22:36:16 +03:00
Denis Zharkov
5bc7c9600f
Deprecate annotations in brackets
2015-05-07 22:36:16 +03:00
Denis Zharkov
1d77f50903
Refine highlighting of '@'
...
- Do not highlight '@' as separate token.
- Highlight '@' the same way as element where it's located: annotation, label or modifier.
- Extend text range when positioning unresolved reference in annotation with '@'.
Note that currently '@' is collapsed with modifiers tokens
2015-05-07 22:36:16 +03:00
Denis Zharkov
aa7bae213d
Introduce ++ operator into grammar
2015-05-07 22:36:16 +03:00
Denis Zharkov
b924f35ed3
Resolve annotations on multi-declaration for parameter
2015-05-07 22:36:16 +03:00
Denis Zharkov
3d810ffe61
Parse modifier list of multi-declaration and for parameters
2015-05-07 22:36:16 +03:00
Denis Zharkov
e236d04957
Minor, drop unused method createConstructorModifierList
2015-05-07 22:36:16 +03:00
Denis Zharkov
9e23698fe3
Unwrap annotated expression in deparenthesize
...
It's needed to complete resolved call with annotated function literal
2015-05-07 22:36:15 +03:00
Denis Zharkov
9101505eca
Rework deparenthesize-like methods
...
- Extract private `deparenthesizeOnce` and repeat it until get the same expression
- Drop redundant parameter `deparenthesizeRecursively`
- Drop some usages of `safeDeparenthesize` in `deparenthesize`
because even if `deparenthesize` returns null (i.e. something was not parsed)
there is no sense in working with such expressions
Note, that `deparenthesize` now unwraps nested labels' declaration (see changes in testData),
but it seems to be reasonable
2015-05-07 22:36:15 +03:00
Denis Zharkov
b72a3de86e
Parse annotations on lambda-argument
2015-05-07 22:36:15 +03:00
Denis Zharkov
c5af4b42b4
Extract common logic for annotation entries collection
...
Before this change annotation entries starting with '@' within expressions hadn't been resolved
Note that order of annotation entries in result may change according to order of children in PSI (see changed testData)
2015-05-07 22:36:15 +03:00
Denis Zharkov
7d8351abc6
Implement parsing annotations and modifiers starting with '@'
2015-05-07 22:36:15 +03:00
Denis Zharkov
b13e932c3c
Parse label reference with spaces before '@'
...
But still report error
2015-05-07 22:36:15 +03:00
Denis Zharkov
3528762e2d
Minor, drop constant parameters and rename method
2015-05-07 22:36:15 +03:00
Denis Zharkov
5ce1fc6fbb
Minor, rename AnnotationParsingMode's entries
2015-05-07 22:36:15 +03:00
Nikolay Krasko
0fa93d59c5
Get context for partial resolve if we have result for full analyze already
2015-05-07 20:14:12 +03:00
Natalia Ukhorskaya
9108d87a57
Add warning for division by zero:
...
#KT-5529 fixed
2015-05-07 15:41:37 +03:00
Nikolay Krasko
cb9c28e73f
Update to Idea 141.914.3 EAP
2015-05-07 15:12:02 +03:00
Natalia Ukhorskaya
16b17b9e94
Minor: rename
2015-05-07 13:23:59 +03:00
Natalia Ukhorskaya
d7a301d698
Evaluate Expression: support local functions
2015-05-07 13:23:15 +03:00
Natalia Ukhorskaya
8c99183970
Write local functions to localVariables table
2015-05-07 13:23:03 +03:00
Natalia Ukhorskaya
35f9cb5405
Extract function: capture only local functions, not from local declarations
2015-05-07 13:22:10 +03:00
Natalia Ukhorskaya
35bacb4ac7
Refactoring: extract FrameVisitor class
2015-05-07 13:22:08 +03:00
Natalia Ukhorskaya
4848af5ef6
Minor: fix warnings
2015-05-07 13:22:06 +03:00
Alexey Tsvetkov
68603d188b
JS: ExpressionDecomposer should always visit JsInvocation qualifier
2015-05-06 18:19:21 +03:00
Alexey Tsvetkov
8db104ef36
JS: decomposition should preserve 'this' context with invocations
...
#KT-7502 fixed
2015-05-06 18:19:21 +03:00
Nikolay Krasko
2d8dcaddd0
Compile modules with circular dependency as one module
2015-05-06 14:19:20 +03:00
Nikolay Krasko
3b18a44340
Allow to use Kotlin reflection in all modules with Kotlin
2015-05-06 14:18:27 +03:00
Nikolay Krasko
9d986d077c
Move kotlin runtime library to end of classpath and remove duplicates with 'util' package
2015-05-06 14:18:24 +03:00
Nikolay Krasko
62a8174072
Fix compatibility issue
2015-05-05 16:43:24 +03:00
Michael Bogdanov
49f063522c
Inline util functions renaming
2015-05-05 12:47:57 +03:00
Michael Bogdanov
fe23f23664
Support inlined functional expressions in debugger
2015-05-05 12:47:56 +03:00
Michael Bogdanov
e0aa64b8d2
Support functional expression in non-local returns
2015-05-05 12:47:56 +03:00
Valentin Kipyatkov
3a6e5ac78c
Corrected test data
2015-05-02 14:03:26 +03:00
Valentin Kipyatkov
73f764abd0
Minor changes on code review
2015-05-02 14:03:26 +03:00
Valentin Kipyatkov
d1afff1612
Renamed intention
2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
2de466970d
ReplaceWithInfixFunctionCallIntention - refactored
2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
9dd67cfc4d
InfixCallToOrdinaryIntention - smaller range + minor code improvements
2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
1b7ac6bb02
Renamed intention to more clear name
2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
7d6145e105
J2K converter applies IfNullToElvisIntention automatically
2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
38f735dcac
IfNullToElvisIntention - better behavior for var's + slightly refactored utility functions
2015-05-02 14:03:25 +03:00
Valentin Kipyatkov
186dd5454d
Added inspection based on IfNullToElvisIntention + moved intention based inspections into one file
2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
8d887f8780
In progress: KT-7442 Inspection + intention to replace "if (xxx == null) return ..' with elvis
2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
c52f69538d
Fixed test data
2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
1daf12cf70
ReplaceItWithExplicitFunctionLiteralParamIntention - better caret position
2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
01a8ff0860
Refactored ReplaceItWithExplicitFunctionLiteralParamIntention
2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
c7937f181b
Refactored ReplaceExplicitFunctionLiteralParamWithItIntention
2015-05-02 14:03:24 +03:00
Valentin Kipyatkov
65d59467a8
Renamed intention
2015-05-02 14:03:23 +03:00