Alexey Sedunov
acaa900ee9
Introduce reference shortening mode
2014-03-19 15:31:25 +04:00
Alexey Sedunov
a0ab7f6f22
Add utility function for Kotlin file creation
2014-03-19 15:31:24 +04:00
Alexey Sedunov
e2d0ecc437
Extract utility function
2014-03-19 15:31:23 +04:00
Alexey Sedunov
a094ea6550
Rename class
2014-03-19 15:31:22 +04:00
Mikhael Bogdanov
e4cdde4ebf
Rename transformation methods to folding
2014-03-19 11:41:24 +04:00
Mikhael Bogdanov
001945cd12
Fix for duplicated fields in regenerated lambda
2014-03-19 11:41:05 +04:00
Mikhael Bogdanov
961cb7d349
Added nullability annotations
2014-03-19 10:42:41 +04:00
Tal Man
baac1b9b0b
Fix to a bug in the intention to move lambda expressions inside parentheses, type arguments were being deleted
2014-03-18 19:25:50 +04:00
Nikolay Krasko
5362b81ea5
Don't search in random directories for existent libraries
...
#KT-4644 In Progress
2014-03-18 16:16:24 +04:00
Nikolay Krasko
3911a6f54b
Search library kinds
...
#KT-4644 In Progress
2014-03-18 16:16:24 +04:00
Nikolay Krasko
6b0298b933
Silently disable other incompatible framework
...
#KT-4644 In Progress
2014-03-18 16:16:23 +04:00
Nikolay Krasko
8ddbdab8c8
Support library create with relative paths
...
#KT-4644 In Progress
2014-03-18 16:16:22 +04:00
Nikolay Krasko
16018ccfe8
Minor: add @TestOnly annotation
2014-03-18 16:16:22 +04:00
Zalim Bashorov
71bfa51ab2
JS backend: fix access to class object members from containing class with implicit receiver.
...
#KT-4130 Fixed
2014-03-18 13:09:49 +04:00
Zalim Bashorov
1ba0b01456
Minor in JS backend: dropped unnecessary aliasing in ExpressionVisitor when translate local named function.
2014-03-18 13:09:48 +04:00
Zalim Bashorov
8fd38e261f
JS backend: fix access to enum entries by implicit receiver and explicit this.
2014-03-18 13:09:47 +04:00
Andrey Breslav
6b72d44929
Report useless and hidden imports in LAZY mode
2014-03-17 21:55:18 +04:00
Andrey Breslav
66b4c8d1a9
CONFLICTING_UPPER_BOUNDS reported in LAZY mode
2014-03-17 21:55:18 +04:00
Andrey Breslav
db6a6470f9
FINAL_UPPER_BOUNDS checked for classes in LAZY mode
2014-03-17 21:55:18 +04:00
Andrey Breslav
f7c5dc179c
Eager resolve does not record class object bounds (which are unsupported anyways)
2014-03-17 21:55:17 +04:00
Andrey Breslav
9964ecc883
NAME_IN_CONSTRAINT_IS_NOT_A_TYPE_PARAMETER check for classes is moved to DescriptorResolver
2014-03-17 21:55:16 +04:00
Andrey Breslav
39de1f131b
Bind references to type parameters in contraints in LAZY mode
2014-03-17 21:55:16 +04:00
Andrey Breslav
2a82c15465
Report UNSUPPORTED on class object constraints in lazy resolve
2014-03-17 21:55:15 +04:00
Andrey Breslav
b72bcfd8ae
Type bounds check for class headers moved to DeclarationsChecker
2014-03-17 21:55:15 +04:00
Andrey Breslav
8be40c29cf
CYCLIC_INHERITANCE_HIERARCHY reworked
...
We do not try to recover too gracefully from a cyclic hierarchy any more:
we simply remove all the edges that belong to a cycle instead of intelligently finding one most convenient edge to cut.
This is done in both lazy and eager resolve to keep tests passing.
2014-03-17 21:55:15 +04:00
Andrey Breslav
ed81102b2f
Minor. Name clash removed (workaround for KT-1)
2014-03-17 21:40:22 +04:00
Andrey Breslav
e70571bafb
Register properties declared in primary constructors in c.getMembers()
2014-03-17 21:40:22 +04:00
Andrey Breslav
1e0910f9c6
Redeclaration check supported in LAZY mode
2014-03-17 21:40:21 +04:00
Andrey Breslav
674d990ba1
More precise return type in ClassDescriptorWithResolutionScopes.getClassObjectDescriptor()
2014-03-17 21:40:21 +04:00
Andrey Breslav
c04ce4401f
getDeclaredCallableMembers() fixed for lazy classes
...
Otherwise synthesized members were not included
2014-03-17 21:40:21 +04:00
Andrey Breslav
d97a5a0d63
Report CLASS_OBJECT_NOT_ALLOWED in LazyClassDescriptor
2014-03-17 21:40:20 +04:00
Andrey Breslav
e97c5379af
Report MANY_CLASS_OBJECTS upon traversing PSI
2014-03-17 21:40:20 +04:00
Andrey Breslav
c3c769194d
Report UNSUPPORTED on annotations on type parameters of classes
2014-03-17 21:40:20 +04:00
Andrey Breslav
5251b3286e
Do not process annotations twice in LAZY mode
2014-03-17 21:40:19 +04:00
Andrey Breslav
81f2f79c79
Import directives are resolved in lazy mode
2014-03-17 21:40:19 +04:00
Andrey Breslav
8bf252f98c
MISSING_VAL_ON_ANNOTATION_PARAMETER reported in DeclarationsChecker
2014-03-17 21:40:19 +04:00
Andrey Breslav
999c987d6c
ANNOTATION_CLASS_WITH_BODY reported in DeclarationsChecker
2014-03-17 21:40:18 +04:00
Andrey Breslav
12f06d032b
checkModifiersAndAnnotationsInPackageDirectives() moved to DeclarationsChecker
2014-03-17 21:40:18 +04:00
Andrey Breslav
0243bacab0
checkSupertypesForConsistency() moved to declarations checker
2014-03-17 21:40:18 +04:00
Andrey Breslav
131d6ddd3d
DelegatingType extracted
2014-03-17 21:40:17 +04:00
Andrey Breslav
a3075f90db
Forced resolution improved to handle type parameter bounds
2014-03-17 21:40:17 +04:00
Andrey Breslav
5ea5d8a9c3
CONSTRUCTOR_IN_TRAIT check moved to DeclarationsChecker
2014-03-17 21:40:17 +04:00
Andrey Breslav
3e22928666
Files in TopDownAnalysisContext are stored explicitly
...
To avoid the necessity of registering mutable package fragments in order to register files
2014-03-17 21:40:16 +04:00
Andrey Breslav
5c7c494235
Package directives resolved in lazy TDA
2014-03-17 21:40:16 +04:00
Andrey Breslav
63d5855cb4
Minor. ClassDescriptorWithResolutionScopes instead of MutableClassDescriptor
2014-03-17 21:40:16 +04:00
Andrey Breslav
fd9cb59841
TopDownAnalyzer supports lazy mode
2014-03-17 21:40:15 +04:00
Alexey Sedunov
3f09b0e030
Update to IDEA 135.445
2014-03-17 19:51:35 +04:00
Alexander Udalov
8b18309b01
Don't write "ResolvedCall<? extends CallableDescriptor>"
...
ResolvedCall has a type parameter D which extends CallableDescriptor.
Hence in Java "ResolvedCall<? extends CallableDescriptor>" = "ResolvedCall<?>"
The same story with these classes:
- ResolutionTask
- CallCandidateResolutionContext
- OverloadResolutionResults
2014-03-17 19:09:09 +04:00
Alexander Udalov
7d6423fcf1
Minor, add assertion messages, fix warnings
2014-03-17 19:09:09 +04:00
Alexander Udalov
338bc2f9ec
Fix incorrect apidoc for 'kotlin'
...
KDoc was confused because now there are two package fragments for package
'kotlin' (built-ins and stdlib). KDoc's KPackage now has a list of descriptors,
not only one.
This fixes missing documentation for top-level members in package 'kotlin' in
the apidoc
#KT-2521 Fixed
2014-03-17 19:09:08 +04:00