Denis Zharkov
e4f54b5d2e
Parsing: support '@[ann1 ann2]', '@file:ann' and '@file:[ann]' cases
2015-05-20 09:24:56 +03:00
Denis Zharkov
f6aadec7e2
Minor, rename tests onFile -> onFileObsolete
2015-05-20 09:24:56 +03:00
Denis Zharkov
083966389a
Minor, get rid of repeating parsing semantics
2015-05-20 09:24:55 +03:00
Denis Zharkov
805a811d91
Change parsing rules for primary constructor
...
- Parse 'constructor' keyword before value arguments
- Allow unescaped annotations
2015-05-20 09:24:54 +03:00
Denis Zharkov
d058a07ce2
Parsing: allow semicolon between declarations
2015-05-20 09:24:54 +03:00
Valentin Kipyatkov
617fe9b49d
No duplicate "Expecting ')'" when parsing accessor
2015-05-16 17:15:16 +03:00
Valentin Kipyatkov
00fbf41bd8
More correct recovery after '.' in user type
2015-05-16 17:15:15 +03:00
Valentin Kipyatkov
a05ffafc84
Added a test
2015-05-16 17:15:14 +03:00
Valentin Kipyatkov
c94dc6d5f7
Better parsing of block after missing "->" after "else" in when
2015-05-16 17:15:14 +03:00
Valentin Kipyatkov
60b0236101
Corrected parser: incomplete code should never cause brace disbalance
...
Fixed KT-7539 fq name inserted when completing nested traits name
#KT-7539
2015-05-16 17:15:12 +03:00
Mikhail Glukhikh
4e1a90ee61
Diagnostics for incorrect enum members order, when enum entry follows enum member. A few diagnostic tests.
...
Now incorrect enum members order is treated as a warning.
2015-05-15 16:13:46 +03:00
Mikhail Glukhikh
983339e1c9
Detection of semicolon between enum entries together with the correct delimiter quick fix for this case.
...
Error message reported directly on semicolon.
2015-05-15 16:13:41 +03:00
Mikhail Glukhikh
1a312140e9
New enum syntax: Short constructor syntax introduced for entries, optional commas between entries, semicolon after entries. #KT-7605 Fixed.
...
Grammar changed accordingly.
Semicolons prohibited after an entry except the last one.
Only one initializer is allowed per entry.
EnumReferenceExpression AST node introduced.
Some tests fixed, a pair of new tests written. Kotlin code inside project fixed.
Formatter and intendation tests fixed accordingly.
Stub version is incremented.
2015-05-15 16:13:32 +03:00
Mikhail Glukhikh
cf741cb868
Enum parsing changed: first entries, then members. Grammar fixed accordingly.
...
A set of compiler tests and some plugin tests changed accordingly.
Compiler Kotlin code changed accordingly.
2015-05-15 16:13:27 +03:00
Alexander Udalov
2fe05c6f11
Parse and resolve annotations on supertypes
2015-05-14 18:58:08 +03:00
Dmitry Jemerov
4bdf598bfe
compiler testdata: s/trait/interface
2015-05-12 19:43:17 +02:00
Denis Zharkov
585a437b2e
Parse '@' annotations on enum entries
...
Just drop truncating builder's creation as we parse only escaped annotations
and will not `eat` entry identifier
2015-05-07 22:36:17 +03:00
Denis Zharkov
3d810ffe61
Parse modifier list of multi-declaration and for parameters
2015-05-07 22:36:16 +03:00
Denis Zharkov
b72a3de86e
Parse annotations on lambda-argument
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
bcee052302
Revert "Temporary parse label definitions with both syntax versions"
...
This reverts commit 3e3535f8cf .
2015-04-30 10:16:42 +03:00
Dmitry Jemerov
ee60ce8369
understand "interface" keyword as synonym for "trait"
2015-04-29 16:50:14 +02:00
Dmitry Jemerov
98b8784ab0
drop deprecated syntax for anonymous initializer blocks
2015-04-29 14:07:04 +02:00
Denis Zharkov
3e3535f8cf
Temporary parse label definitions with both syntax versions
...
Should be reverted after bootstrap
2015-04-29 14:03:11 +03:00
Denis Zharkov
507eefcaa5
Implement new parsing rules for labels
...
See changes in expressions.grm
2015-04-29 14:03:10 +03:00
Dmitry Jemerov
cbbb2fcd48
fix JetParsingTestGenerated
2015-04-27 15:14:33 +02:00
Dmitry Jemerov
5bbbadeb37
add a token for inline Markdown links; add test for identifier links with labels
2015-04-15 19:48:46 +02:00
Evgeny Gerashchenko
508c7a58b6
KT-7377 Throwable: Empty PSI elements should not be passed to createDescriptor from UnusedReceiverParameterInspection
...
#KT-7377 fixed
2015-04-13 15:04:00 +03:00
Alexey Sedunov
4af608ef84
Parser: Recovery for parameter with missing name
2015-04-09 13:49:17 +03:00
Pavel V. Talanov
a986d913c3
Remove traces of class object constraints feature from parser, frontend, tests and psi
2015-04-01 20:09:34 +03:00
Denis Zharkov
af2bcfb524
Parse primary constructor into separate PSI element
2015-03-31 20:20:22 +03:00
Denis Zharkov
8c048c3e43
Refine recovery for constructors
2015-03-27 16:09:41 +03:00
Denis Zharkov
01e5ee718f
Allow secondary constructors without body
...
#KT-6967 Fixed
2015-03-27 16:09:40 +03:00
Alexey Sedunov
4ec1b9971f
Parser: Do not produce JetQualifiedExpression without receiver
...
#KT-7122 Fixed
2015-03-26 23:11:50 +03:00
Denis Zharkov
eefea26d54
Recovery for initializer if no LBRACE
...
- If no LBRACE after 'init' keyword parse initializer without body
- Made getBody() nullable, appropriate checks added
2015-03-18 19:59:25 +03:00
Stanislav Erokhin
c24c3daf54
Allowed shorthand parameter list with type reference in lambda.
2015-03-18 16:06:44 +03:00
Stanislav Erokhin
7a8341d0f1
Added parser test for function with initializer.
2015-03-18 16:06:44 +03:00
Pavel V. Talanov
06916d98c6
default -> companion: replace all mentions of default and default object
2015-03-17 15:47:39 +03:00
Nikolay Krasko
8c5109d819
Generate descriptor for trait constructor. Exception is thrown otherwise...
...
EA-38416, EA-65189, EA-60850
2015-03-16 20:16:25 +03:00
Stanislav Erokhin
639003b8a8
Allowed function parameter without type declaration in the parser
2015-03-12 17:11:52 +03:00
Stanislav Erokhin
a235110d44
Fixed function expression recovery
2015-03-12 17:11:45 +03:00
Stanislav Erokhin
983e1bc932
Added function as expression support to parser
2015-03-12 17:11:44 +03:00
Stanislav Erokhin
a8536fef9b
Mute syntax error when function name was omitted
2015-03-12 17:11:44 +03:00
Nikolay Krasko
dcd29cb65d
Revert "Generate descriptor for trait constructor. Exception is thrown otherwise (EA-38416)"
...
This reverts commit 6ba120bba8 .
2015-03-12 14:18:22 +03:00
Nikolay Krasko
6ba120bba8
Generate descriptor for trait constructor. Exception is thrown otherwise (EA-38416)
2015-03-12 12:59:22 +03:00
Denis Zharkov
3ba94d7352
Parsing: secondary constructors
2015-03-11 17:45:22 +03:00
Denis Zharkov
a55e8911ea
Drop parsing of enum initializers using `this'
...
#KT-6626 Fixed
2015-03-11 17:45:22 +03:00
Alexander Udalov
6e45c6f17c
Support class literals (A::class)
2015-03-11 16:42:41 +03:00
Pavel V. Talanov
59f192ef90
Replace 'class object' with 'default object' in renderers and test data
...
Includes changes to decompiled text
Old syntax is used in builtins and project code for now
2015-03-06 19:36:54 +03:00