Alexander Udalov
cdceaec79f
Fix unjustified descriptorToDeclaration in bridge codegen
...
Delegated and synthesized members don't usually have a declaration as well as
fake overrides
2014-04-18 17:18:51 +04:00
Alexey Sedunov
45073c5a1c
Do not show description hint for declaration with diagnostic message
...
#KT-4815 Fixed
2014-04-18 14:38:20 +04:00
Alexey Sedunov
e5777129e2
Introduce utility functions for operations on search scopes
2014-04-18 14:38:19 +04:00
Alexey Sedunov
191ea2533e
Dot not lengthen references to declarations contained in the moving element
2014-04-18 14:38:17 +04:00
Alexey Sedunov
5f92c22df3
Smart Selector: Do not suggest expressions contained in the super-expression
...
#KT-4824 Fixed
2014-04-18 14:38:17 +04:00
Nikolay Krasko
068c9636fc
Refactoring: rename TEXT to FQNAMES_IN_TYPES
2014-04-18 13:25:58 +04:00
Nikolay Krasko
962044f887
Use render with short types names in completion lookup elements
2014-04-18 13:18:18 +04:00
Nikolay Krasko
f6276cc10b
Fix ClassCastExceptions from LocalVariableDescriptor to PropertyDescriptor (EA-55534).
2014-04-18 13:18:18 +04:00
Nikolay Krasko
37c6727413
Report message with context for KT-4464
2014-04-18 13:18:17 +04:00
Alexander Udalov
5e138a606b
Report "cannot infer visibility" for delegated members
2014-04-17 19:51:32 +04:00
Alexander Udalov
369472a6e2
Log.warn when descriptors reach TO_STRING diagnostic renderer
2014-04-17 19:51:32 +04:00
Alexander Udalov
a5cc894ecd
Fix "name in constraint is not a type parameter" diagnostic message
...
TO_STRING renderer was used for PSI elements, so things like "CLASS", "FUN"
were displayed in the message
2014-04-17 19:51:32 +04:00
Alexander Udalov
72dfca1698
Fix "cannot override invisible member" diagnostic message
...
Fix "cannot has", delete "in class ..." as it's already present in the message
(function ... defined in class ...)
2014-04-17 19:51:32 +04:00
Alexander Udalov
1deb55bfde
Add positioning strategy for diagnostics on illegal fake overrides
...
"funcitonTypes.kt" test data file was changed because now that there is a
positioning strategy, it takes the liberty of filtering out those diagnostics
that were reported on syntactically invalid elements
2014-04-17 19:51:31 +04:00
Alexander Udalov
146498ec32
Sort out renderers for diagnostics
...
- change NAMED to be Renderer<Named> and render Named's name. It was used in
multiple places with arbitrary arguments, not only Named: change renderers in
those places to TO_STRING
- add STRING, which is Renderer<String> and renders string itself. Change all
places where strings were used with either TO_STRING or NAMED to STRING
- change NOT_AN_ANNOTATION_CLASS diagnostic to be reported on descriptor, not
any string
- change "unused variable/parameter" diagnostics to be reported on
VariableDescriptor, not Object
2014-04-17 19:51:31 +04:00
Alexander Udalov
4c973b79ee
Get rid of poorly named NotInferredVisibilitySink
...
Also make TraceBasedErrorReporter invoke OverrideResolver to report "cannot
infer visibility", because there's some additional logic there
2014-04-17 19:51:31 +04:00
Alexander Udalov
5ae339d940
Fix "Cannot infer visibility" for fake overrides
...
#KT-4785 Fixed
2014-04-17 19:51:31 +04:00
Alexander Udalov
55b28fcd0e
Minor, provide a nicer API in OverrideResolver for plugin
2014-04-17 19:51:30 +04:00
Alexander Udalov
34e7584aec
Move some utilities from OverridingUtil to OverrideResolver
...
OverridingUtil will be present at runtime and we should strive to minimize the
size of our runtime classes
Also add a comment to getOverriddenDescriptors()
2014-04-17 19:51:30 +04:00
Alexander Udalov
3dffd428ad
Refactor OverrideResolver and OverridingUtil
...
Fix warnings, simplify code. Untangle a very complex code related to
diagnostics on multiple default values and different names of parameters in
supertypes; fix a bug there, add test
2014-04-17 19:51:30 +04:00
Alexander Udalov
adec89f74d
Don't print descriptors' toString() in diagnostic messages
...
Use DescriptorRenderer.TEXT instead, it doesn't print the debug information
2014-04-17 19:51:29 +04:00
Alexander Udalov
5be2a4945b
Render FQ name of default package as "root package" in OverloadResolver
2014-04-17 19:51:29 +04:00
Alexander Udalov
4f9f5d231b
Fix incorrect diagnostic message for CONFLICTING_OVERLOADS
...
- the member and the container were mixed up
- don't output "defined in" part of the message, because we tell later where
it's already defined in
- fix an instability of the diagnostic order in OverloadResolver by using
LinkedHashSet
2014-04-17 19:51:29 +04:00
Alexey Sedunov
0d90dcf010
Extract Function: Add test data
2014-04-17 19:01:20 +04:00
Alexey Sedunov
4dec0508a6
ExtractionTest: Change test data layout
2014-04-17 19:01:17 +04:00
Alexey Sedunov
24d8557a5a
Translate AbstractJetExtractionTest to Kotlin
2014-04-17 19:01:15 +04:00
Alexey Sedunov
a951734ec2
Generalize "Introduce variable" test
2014-04-17 19:01:13 +04:00
Alexey Sedunov
074471c0ed
Get rid of unnecessary write action
2014-04-17 19:01:11 +04:00
Alexey Sedunov
6006f53e68
Auto-generate test class for "Introduce variable" refactoring
2014-04-17 19:01:09 +04:00
Alexey Sedunov
a72d785d62
Use lazy analysis in JetNameValidatorImpl
2014-04-17 19:01:07 +04:00
Alexey Sedunov
1fe6df268a
Extract Function: UI and refactoring handler
2014-04-17 19:01:04 +04:00
Alexey Sedunov
424c5f296f
Extract Function: Analysis and code generation
2014-04-17 19:01:02 +04:00
Alexey Sedunov
cceaa3b66f
Fix bug in ShortenReferences visitor (do not skip PSI elements after modication)
2014-04-17 19:01:00 +04:00
Alexey Sedunov
95b4ec2058
Drop ReturnInstruction
2014-04-17 19:00:58 +04:00
Alexey Sedunov
3952a121fb
Pseudocode: Track PSI elements which correspond to jump instructions
2014-04-17 19:00:56 +04:00
Alexey Sedunov
103165d674
Move Maybe class and its inheritors to util package
2014-04-17 19:00:54 +04:00
Alexey Sedunov
cf55102697
Move "Introduce..." classes to separate package
...
Rename Jet -> Kotlin
2014-04-17 19:00:52 +04:00
Valentin Kipyatkov
f11a05e504
Smart completion: auto popup parameter info for constructor
2014-04-17 14:39:31 +04:00
Valentin Kipyatkov
df299655a7
Smart completion: one more working test and one more test to fix later
2014-04-17 14:39:31 +04:00
Valentin Kipyatkov
164fb84cbe
Smart completion: ExpectedTypeInfo renamed to ExpectedInfo
2014-04-17 14:39:31 +04:00
Valentin Kipyatkov
9609a9fff1
Smart completion: refactored one big class into a set of smaller ones
2014-04-17 14:39:30 +04:00
Valentin Kipyatkov
c53da996c4
Smart completion: refactored static members processing
2014-04-17 14:39:30 +04:00
Valentin Kipyatkov
ad791d0480
Smart completion: some code improvements
2014-04-17 14:39:30 +04:00
Valentin Kipyatkov
f682dc36e0
Smart completion: lambda items
2014-04-17 14:39:30 +04:00
Valentin Kipyatkov
1ba4c656a5
Smart completion: bugfix - no function reference after dot
2014-04-17 14:39:30 +04:00
Valentin Kipyatkov
5bff98c164
Smart completion: minor code refactoring
2014-04-17 14:39:30 +04:00
Valentin Kipyatkov
73329af7b1
Smart completion: refactored all code into a class to avoid passing the same data into many functions
2014-04-17 14:39:29 +04:00
Valentin Kipyatkov
06b1f1ec2f
Smart completion: code improvements and refactorings after code review
2014-04-17 14:39:29 +04:00
Valentin Kipyatkov
6b1ecc3fb0
Smart completion: "::functionName" items when value of function type is expected
2014-04-17 14:39:29 +04:00
Valentin Kipyatkov
7d5b86e000
Smart completion: no duplicates among static members
2014-04-17 14:39:29 +04:00