Evgeny Gerashchenko
c4573b8c5a
Got rid of ModuleDescription intermediate entity.
2014-07-10 15:05:19 +04:00
Evgeny Gerashchenko
86d2565700
Added test for KT-4827 UOE at PackageType.throwException()
...
#KT-4827 obsolete
#EA-53605 obsolete
2014-07-10 15:05:18 +04:00
Michael Bogdanov
ea20073d4b
Fix error message
2014-07-10 14:19:35 +04:00
Pavel V. Talanov
ab07aea82f
Fix an NPE in VirtualFileKotlinClassFinder#findKotlinClass(JavaClass)
...
Happens for nonphysical PsiClass
2014-07-10 14:08:14 +04:00
Pavel V. Talanov
f0e91182da
Minor: Remove context parameter from getContainingFile() utility and move it to DescriptorToSourceUtils
2014-07-09 21:46:28 +04:00
Pavel V. Talanov
16aefae602
Move descriptorToDeclaration utilities family to a separate util class DescriptorToSourceUtils
2014-07-09 19:07:26 +04:00
Pavel V. Talanov
8b91855fac
Drop SynthesizedCallableMemberDescriptor
2014-07-09 18:19:37 +04:00
Pavel V. Talanov
d988256831
Refactor: Remove context parameter from BindingContextUtils.descriptorToDeclaration utilities family
2014-07-09 18:19:36 +04:00
Pavel V. Talanov
723b3d75c9
Rewrite BindingContextUtils.descriptorToDeclaration utilities family to use SourceElement for getting PSI
...
Remove DESCRIPTOR_TO_DECLARATION context key
2014-07-09 18:19:35 +04:00
Pavel V. Talanov
59e43020c3
Initial version of storing SourceElements in descriptors
...
Introduce SourceElement, JavaSourceElementFactory, DeclarationDescriptorWithSource
Implement getSource() for eager, lazy and java descriptors
2014-07-09 18:19:34 +04:00
Andrey Breslav
e3b1639edf
KT-5425 Kotlin plugin crashes when project uses RxJava 17.0 or older
...
#KT-5425 Fixed
2014-07-09 16:10:41 +04:00
Michael Bogdanov
b1065520fb
Skip visitEnd in InliningInstructionAdapter
2014-07-09 09:48:17 +04:00
Michael Bogdanov
6ddeb85c00
Added checking for ONLY_LOCAL_RETURN in actual parameter of inline function
2014-07-09 09:46:28 +04:00
Svetlana Isakova
24e20b2dcf
Invoke call resolver extension in CallCompleter
...
so it is called after outer call is resolved (for calls in arguments)
2014-07-08 15:42:19 +04:00
Svetlana Isakova
62cb0d0baf
Added util 'getParentResolvedCall', 'strict' parameter
2014-07-08 14:57:41 +04:00
Svetlana Isakova
cec01237d0
Added test for labeled delegated expression
2014-07-08 14:57:40 +04:00
Svetlana Isakova
51a979d5f0
Refactoring: do not duplicate 'instructionElement' (old 'calleeExpression') as a parameter
...
to 'builder.call()' and 'builder.read()' methods
2014-07-08 14:57:39 +04:00
Svetlana Isakova
6988725207
Refactoring: remove 'call' argument
...
when it can be taken from resolved call
2014-07-08 14:57:39 +04:00
Svetlana Isakova
53ee30992b
Record resolved call on call (not on element)
2014-07-08 14:57:38 +04:00
Svetlana Isakova
aa26db0538
Updated tests for control flow: call instruction stores call element
...
instead of callee expression
2014-07-08 14:57:38 +04:00
Svetlana Isakova
72e9822d99
All RESOLVED_CALL getters replaced with util methods
...
JetElement.getResolvedCall(BindingContext)
JetElement.getResolvedCallForSure(BindingContext)
2014-07-08 14:57:37 +04:00
Svetlana Isakova
e1fb5a9a04
Added 'isExternal' to ValueArgument
...
'subject' is external for 'in(contains)' resolve in 'when' condition:
when (subject) {
in range -> ...
}
2014-07-08 14:48:20 +04:00
Svetlana Isakova
ae8757f6b8
Added tests on resolved call for 'this'
2014-07-08 14:48:20 +04:00
Svetlana Isakova
dd95439767
Do not update recorded type if it hasn't changed
...
It's important for argument that has a type that shouldn't be updated.
Like '(b)' in 'a == (b)', which type is 'Any' (for proper 'equals' resolve).
Type for 'b' shouldn't be updated to 'Any' as well.
2014-07-08 14:48:20 +04:00
Svetlana Isakova
48511206ad
Mark required call with 'caret' in abstract resolved calls test
2014-07-08 14:48:19 +04:00
Svetlana Isakova
29ab166e1b
Refactoring: AbstractResolvedCallsTest
...
Render resolved call to a separate file
2014-07-08 14:48:19 +04:00
Svetlana Isakova
b2c2e1811c
Check 'isDirty' for resolved calls replaced with check 'hasUnresolvedArguments' for call
...
Don't report 'cannotCompleteResolve' error if some arguments are unresolved (like 'ambiguity')
2014-07-08 14:48:19 +04:00
Svetlana Isakova
a3e306b820
Update recorded type for argument in parentheses correctly
2014-07-08 14:48:18 +04:00
Svetlana Isakova
12ddf76df4
Changed order in call completer
...
update resolution status (and report error) after completing all arguments
2014-07-08 14:48:18 +04:00
Svetlana Isakova
c204ae2da1
Record argument to parameter map at the beginning
...
(separately from argument match status)
2014-07-08 14:48:18 +04:00
Svetlana Isakova
f24442b90e
Added ArgumentMatchStatus.MATCH_MODULO_UNINFERRED_TYPES
2014-07-08 14:48:17 +04:00
Svetlana Isakova
857aa76cff
Added tests for argument mapping
2014-07-08 14:48:17 +04:00
Svetlana Isakova
8dc932fc50
Refactoring: inlined method 'setInitialDataFlowInfo'
2014-07-08 14:48:17 +04:00
Svetlana Isakova
ec0fa1b765
Rewrote 'isDirty' in terms of argument to parameter match status
...
Added ArgumentMatchStatus
2014-07-08 14:48:16 +04:00
Svetlana Isakova
ad5fc4cd05
Removed duplication in MutableResolvedCall interface
...
'hasIncompleteTypeParameters()' is the same as 'getConstraintSystem() != null'
2014-07-08 14:48:16 +04:00
Svetlana Isakova
6ffb02ae0d
Removed unused methods
2014-07-08 14:48:16 +04:00
Svetlana Isakova
11fbe375fa
Logic of completing call rewritten in CallCompleter
...
Changed interface ResolutionResultsCache
2014-07-08 14:48:15 +04:00
Svetlana Isakova
06a257025f
Added NotNull annotations
2014-07-08 14:48:15 +04:00
Svetlana Isakova
02f5293b3d
Added CallCompleter component
...
Regenerated injectors
2014-07-08 14:48:15 +04:00
Svetlana Isakova
05e5f2437e
Use Call instead of CallKey as a map key in ResolutionResultsCache
2014-07-08 14:48:14 +04:00
Alexander Udalov
17a6c1fd54
Minor, fix typo
2014-07-07 18:44:54 +04:00
Alexander Udalov
71cd7838d2
Move/inline enum class object related methods in DescriptorUtils
2014-07-07 18:33:31 +04:00
Alexander Udalov
e502d8dcc6
Remove JetScopeAdapter
2014-07-07 18:15:32 +04:00
Alexander Udalov
64512ae87b
Move writable scope implementations to 'frontend'
2014-07-07 18:15:31 +04:00
Alexander Udalov
b9fd52739f
Move around some descriptor implementations
...
- mutable class, mutable package fragment and their dependencies go to module
'frontend'
- ModuleDescriptorImpl and PackageFragmentDescriptorImpl are moved to the
package "impl" in their module
2014-07-07 18:15:31 +04:00
Alexander Udalov
7773375019
Use EnumClassObjectDescriptor in lazy resolution
2014-07-07 18:15:28 +04:00
Alexander Udalov
db3e5ed678
Use EnumClassObjectDescriptor in TypeHierarchyResolver
2014-07-07 18:15:28 +04:00
Alexander Udalov
8efeb3ac6a
Move script descriptor implementation to frontend
2014-07-07 18:15:27 +04:00
Evgeny Gerashchenko
7ef5c75f26
Supported inlining functions which access properties via field.
2014-07-07 17:41:36 +04:00
Evgeny Gerashchenko
2259cc605f
Preserving annotations in incremental compilation.
2014-07-07 17:41:35 +04:00