Nikolay Krasko
2d72b5afc7
Render short type names in quick documentation and navigation
2014-06-05 17:47:58 +04:00
Andrey Breslav
7f60ccf663
Support equalityAxioms in isSubtypeOf()
2014-06-02 22:05:33 +04:00
Andrey Breslav
9cfbfd2806
Overridability and overloadability checks separated
2014-06-02 22:05:33 +04:00
Andrey Breslav
3f151a022e
Checking return value supported in OverridingUtil
2014-06-02 22:05:32 +04:00
Andrey Breslav
e50a17e668
Do not compare local classes by FqNames
2014-06-02 22:05:32 +04:00
Andrey Breslav
93031c1245
OverridingUtil parameterized with equalityAxioms
2014-06-02 22:05:30 +04:00
Andrey Breslav
f54e2bc498
OverridingUtil turned into a singleton
2014-06-02 22:05:30 +04:00
Andrey Breslav
67b8d3a875
Minor. Methods reordered
2014-06-02 22:05:29 +04:00
Andrey Breslav
b022395cb8
Using strategy instead of BiMap
2014-06-02 22:05:29 +04:00
Andrey Breslav
a0d8cefe16
Minor. If's with the same condition merged
2014-06-02 22:05:28 +04:00
Nikolay Krasko
1bc8812613
Don't add space if it has been already added or it's not yet needed
2014-05-30 00:04:10 +04:00
Nikolay Krasko
3494853cc3
Add location string showing where method or property is defined
2014-05-30 00:04:06 +04:00
Nikolay Krasko
58d9375a25
Set up rendering for structure elements
2014-05-30 00:04:04 +04:00
Nikolay Krasko
2d6dc5db68
Revise JetStructureViewElement
...
- remove 'my' prefix
- inline ItemPresentation
- use descriptor renderer instead of custom one
2014-05-30 00:04:04 +04:00
Alexey Sedunov
ab5e0c8c9c
Move: Retain imports when moving top-level declaration
...
#KT-5049 Fixed
2014-05-28 21:06:00 +04:00
Mikhael Bogdanov
9773015548
Fix visibility for main script function
2014-05-26 14:48:37 +04:00
Alexander Udalov
3c3d120004
Prohibit implicit overrides with lesser visibility
...
A non-abstract super-declaration is allowed to stand as 'an implementation' of
a fake override only if its visibility is not less than visibilities of all
other super-declarations
#KT-2491 Fixed
2014-05-22 19:32:10 +04:00
Alexander Udalov
db25f568dc
Don't report "cannot infer visibility" on property accessors
...
If the diagnostic is already reported on the corresponding property, no need to
report it again for accessors
2014-05-22 19:32:10 +04:00
Andrey Breslav
bee4dbc672
Error types should not be compared by FqName
2014-05-21 23:31:32 +04:00
Andrey Breslav
a66f44e4f5
TypeConstructor's equality for classes relies on FqNames
...
This is needed because different modules/libraries may define classes with the same FqNames, which may be identical or slightly different.
Such classes must be considered equal, because your dependencies may rely on different packagings of the same codebase, and the classes there will be distinct though identical
(think intellij-core vs idea-full).
2014-05-21 23:31:32 +04:00
Andrey Breslav
f714382bd8
ErrorClassDescriptor moved to ErrorUtils
2014-05-21 23:31:31 +04:00
Svetlana Isakova
e0f37bbef0
Generate parse error on label without name '@'
2014-05-20 15:07:03 +04:00
Svetlana Isakova
3bcdbee2bf
Removed LabelName class, used Name instead
2014-05-20 14:58:49 +04:00
Alexander Udalov
ccead8e337
Replace some usages of ERROR_CLASS with new instance creation
...
Because when some class is unresolved, we can still hold some information such
as its FQ name, for debugging purposes and better error messages
2014-05-19 19:50:59 +04:00
Alexander Udalov
54a44b1533
Introduce AbstractTypeParameterDescriptor
...
- pull the logic up from TypeParameterDescriptorImpl and
AbstractLazyTypeParameterDescriptor (it was mostly duplicated)
- delete some unused methods
2014-05-19 19:50:59 +04:00
Alexander Udalov
31e8622471
Remove suspicious JetTypeImpl constructors
...
Most of the time they were used for classes without type parameters, and
getDefaultType() is supposed to be used there (additionally it may be cached)
2014-05-19 19:50:59 +04:00
Alexander Udalov
3ffa7cdcf8
Minor optimization in KotlinBuiltIns.isSpecialClassWithNoSupertypes
2014-05-19 19:50:58 +04:00
Alexander Udalov
5fdb9e6218
Change logic of loading "suppress" annotation class descriptor
...
Instead of loading the descriptor and checking equals(), we now check if the
annotation is in fact "suppress" by simply comparing its FQ name. This allows
us to suppress warnings while compiling built-ins: the problem is that
built-ins have its own "suppress" annotation class (defined in the sources)
which differs from the one loaded by the compiler (from kotlin-compiler.jar)
2014-05-19 19:50:58 +04:00
Alexander Udalov
41eb0deaa0
Introduce FunctionImpl and ExtensionFunctionImpl classes
...
Old FunctionImpl0,1,2,... will be dropped since they had no purpose
2014-05-19 19:50:58 +04:00
Alexander Udalov
845e3323f9
Create error type if reflection class isn't found
...
Introduce a new diagnostic fired when reflection types aren't found in the
classpath
2014-05-19 19:50:57 +04:00
Alexander Udalov
c1cd8bf069
Use module instead of KotlinBuiltIns in ReflectionTypes
2014-05-19 19:50:56 +04:00
Alexander Udalov
b27b8bf8b2
Extract DescriptorUtils.getContainingModule()
2014-05-19 19:50:56 +04:00
Andrey Breslav
7bce9060e2
Better handling of PackageTypes in KotlinBuiltIns
2014-05-19 19:28:14 +04:00
Andrey Breslav
f72dcb8ee2
Fix for EA-53605 - UOE: PackageType.throwException
2014-05-19 17:02:18 +04:00
Andrey Breslav
8885d5709e
Private inside a package should be visible only inside this package in the same module
2014-05-19 13:02:25 +04:00
Zack Grannan
42f186b33f
Added String Concat -> Interpolation Intention (KT-4750)
2014-05-16 19:00:25 +04:00
Alexander Udalov
c7277250d9
Use ReflectionTypes instead of KotlinBuiltIns in type checker
2014-05-08 16:45:15 +04:00
Valentin Kipyatkov
717977af61
No more java lookup elements in code completion (except for one case)
2014-05-07 22:50:21 +04:00
Alexander Udalov
42d167d17e
Add missing copyrights across the project
2014-05-05 20:43:35 +04:00
Alexander Udalov
16daeb9544
Misc refactorings in KotlinBuiltIns
...
- delete fields which were supposed to be used for caching, but mistakenly were
never used
- delete/inline unused methods and constants
- delete useless logic related to root package fragment: package fragment
providers are only supposed to find packages they're aware of
2014-05-05 20:42:35 +04:00
Andrey Breslav
775c941f8a
hasSynthesizedParameterNames() pulled up into CallableDescriptor
2014-04-30 16:30:17 +04:00
Svetlana Isakova
775606f80a
Do not remove trivial substitutions
...
to avoid substituting a new type parameter by default instead of leaving the same
#KT-4887 Fixed
2014-04-30 13:34:34 +04:00
Svetlana Isakova
a57b4f6459
Render inferred and not inferred type parameters
...
while rendering a resolved call
2014-04-30 13:34:34 +04:00
Svetlana Isakova
e59fa2083e
Substituted special error type for not inferred parameter
...
Rendered it as T (of red color) in the renderer HTML_FOR_NOT_INFERRED_TYPE_PARAMETERS
instead of '???' without information about type parameter
2014-04-30 13:34:32 +04:00
Alexander Udalov
af421f53da
Rename FQNAMES -> FQ_NAMES
2014-04-24 16:10:11 +04:00
Andrey Breslav
bb87a6bb59
Only create lazy annotations for descriptors from code
2014-04-18 21:28:21 +04:00
Nikolay Krasko
068c9636fc
Refactoring: rename TEXT to FQNAMES_IN_TYPES
2014-04-18 13:25:58 +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
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