Andrey Breslav
01b456f5c2
Temporarily caching resolved classes in the trace (for existing code in the IDE to be happy)
2014-01-15 16:14:55 +04:00
Andrey Breslav
ef220eff92
Record Java packages in the trace
...
Account for LazyJavaPackageFragment in FindUsages
2014-01-15 16:14:55 +04:00
Andrey Breslav
ec1960a960
Detect Kotlin binaries by actually loading binary data, not simply checking whether the annotation is present
...
This is needed because even if the annotation is present, the ABI version may be wrong, and we should load such class as a Java class anyways
2014-01-15 16:14:55 +04:00
Andrey Breslav
b16b9c58e1
If all supertypes are errors, do not leave the supertype list empty
2014-01-15 16:14:54 +04:00
Andrey Breslav
6915773150
Record lazy classes created
2014-01-15 16:14:54 +04:00
Andrey Breslav
382b29edc8
Fix qualified name construction for the case when IDEA distorts them (e.g. replaces all '$' by '.')
2014-01-15 16:14:54 +04:00
Andrey Breslav
b1c4665246
Support enums in Java code
2014-01-15 16:14:53 +04:00
Andrey Breslav
6ff2d68206
A flag replaced by a predicate
2014-01-15 16:14:53 +04:00
Andrey Breslav
6d4e025267
Do not filter package names by hasStaticMembers()
2014-01-15 16:14:53 +04:00
Andrey Breslav
8ee344132d
Resolve annotations on classes lazily
2014-01-15 16:14:52 +04:00
Andrey Breslav
137f33c829
Do not resolve Kotlin binaries as Java classes
2014-01-15 16:14:52 +04:00
Andrey Breslav
2765327ae5
Detour for built-in classes
2014-01-15 16:14:52 +04:00
Andrey Breslav
258db05af2
Always go through JavaDescriptorResolver when resolving classes/packages
2014-01-15 16:14:51 +04:00
Andrey Breslav
d0c0ba83fc
Look packages up through JavaDescriptorResolver
2014-01-15 16:14:51 +04:00
Andrey Breslav
71ed2d2c71
Do not fail when an allegedly present name is not resolved
2014-01-15 16:14:50 +04:00
Andrey Breslav
e538668229
Do not allow error supertypes
2014-01-15 16:14:50 +04:00
Andrey Breslav
31d4993406
Properly handle @NotNull for arrays
2014-01-15 16:14:50 +04:00
Andrey Breslav
3f3030ff26
Account for fields annotated @NotNull
2014-01-15 16:14:49 +04:00
Andrey Breslav
645b878ac2
Java resides in the same module as Kotlin
2014-01-15 16:14:49 +04:00
Andrey Breslav
834b306706
Render nullability for error types properly
2014-01-15 16:14:49 +04:00
Andrey Breslav
1eb38febf2
Supertypes are always not null
2014-01-15 16:14:48 +04:00
Andrey Breslav
111b11113d
Load classes from Kotlin binaries
2014-01-15 16:14:48 +04:00
Andrey Breslav
e1f7a3cb2b
Filter special annotations
2014-01-15 16:14:48 +04:00
Andrey Breslav
67ab159504
Do not build descriptors for built-in classes
2014-01-15 16:14:47 +04:00
Andrey Breslav
eacb731308
Support SAM constructors
2014-01-15 16:14:47 +04:00
Andrey Breslav
9356af8d73
No classes are resolved through package scope for class static members
2014-01-15 16:14:47 +04:00
Andrey Breslav
7619e8f3c7
Support SAM adapters for functions and constructors
2014-01-15 16:14:46 +04:00
Andrey Breslav
834db7a7cc
Properly account for constructor's own type parameters
2014-01-15 16:14:46 +04:00
Andrey Breslav
cc1d8448ed
Prevent lazy types to be accidentally computed in debug
2014-01-15 16:14:45 +04:00
Andrey Breslav
c94b658462
Nullability fixed for upper bounds that are not type parameters
2014-01-15 16:14:45 +04:00
Andrey Breslav
5c64ad93f8
Properly map annotation classes and account for @Deprecated
2014-01-15 16:14:45 +04:00
Andrey Breslav
34234485a5
Properly look up annotations
2014-01-15 16:14:44 +04:00
Andrey Breslav
0378551b72
Allow for Kotlin class resolution
2014-01-15 16:14:44 +04:00
Andrey Breslav
6257471e24
Prevent recursion on getting all subpackages
2014-01-15 16:14:44 +04:00
Andrey Breslav
aa34310770
Properly transforming type parameters in case of raw types, and mismatches between parameter and argument numbers
...
NOTE: JetType.getArguments() now implies that JetType.getConstructor() is computed. In most use cases this happens anyways due to the logic of the client code
2014-01-15 16:14:43 +04:00
Andrey Breslav
c13b77d94c
Take care of Java's constructor type parameters
2014-01-15 16:14:43 +04:00
Andrey Breslav
2f2332bfe2
No need for applyNullability()
2014-01-15 16:14:42 +04:00
Andrey Breslav
4a15c6728d
Propagation and alternative signatures for functions in Java
2014-01-15 16:14:42 +04:00
Andrey Breslav
089352b525
isError() implemented for lazy java types
2014-01-15 16:14:41 +04:00
Andrey Breslav
03a9c776b2
Support loading Java fields as properties
2014-01-15 16:14:38 +04:00
Andrey Breslav
03cb977b2a
Support overrides in Java classes
2014-01-15 16:07:40 +04:00
Andrey Breslav
d79403d82c
Don't fail on star projections for error types
2014-01-15 16:07:40 +04:00
Andrey Breslav
b3f9dddc84
All extra services delivered through contexts
2014-01-15 16:07:39 +04:00
Andrey Breslav
297bfd2903
Resolve functions in packages loaded from Java classes
2014-01-15 16:07:39 +04:00
Andrey Breslav
eb56550c54
Properly load Java classes as packages
2014-01-15 16:07:38 +04:00
Andrey Breslav
521c203f76
Proper toString() added to lazy classes
2014-01-15 16:07:38 +04:00
Andrey Breslav
5eacd6bdee
Differentiate package fragments loaded from java packages and java (static) classes
2014-01-15 16:07:38 +04:00
Andrey Breslav
e0d890853d
Adding submodule to the context
2014-01-15 16:07:38 +04:00
Andrey Breslav
ba81e40ccb
Constructors supported
2014-01-15 16:07:37 +04:00
Andrey Breslav
cee4c0c29d
All Java classes extend java.lang.Object (directly or indirectly)
2014-01-15 16:07:37 +04:00