Andrey Breslav
aa20af3cf3
Minor. Unused code removed
...
Follow-up for https://github.com/JetBrains/kotlin/commit/db00500404e4862548ed5eb49f7289e1e8eba99c#commitcomment-6242775
2014-05-12 19:02:17 +04:00
Alexander Udalov
c7277250d9
Use ReflectionTypes instead of KotlinBuiltIns in type checker
2014-05-08 16:45:15 +04:00
Alexander Udalov
981b6fdaff
Don't render stack trace in a warning
...
These stack traces are confusing: they make it seem as if an exception was
thrown
2014-05-05 20:43:35 +04:00
Andrey Breslav
db00500404
Unused code removed
2014-04-30 16:30:17 +04:00
Alexander Udalov
61675de305
Optimize PropertyMetadataImpl instance creation
...
Create all property metadatas in <clinit> and save them to a static array
$propertyMetadata. Getter/setter of each delegated property will then just
obtain the corresponding instance from that array
#KT-4232 Fixed
2014-04-24 16:10:15 +04:00
Alexander Udalov
af421f53da
Rename FQNAMES -> FQ_NAMES
2014-04-24 16:10:11 +04:00
Andrey Breslav
af9694738e
JvmResolveUtil extracted for methods that are used only for tests
2014-04-23 14:06:13 +04:00
Andrey Breslav
1a92964250
JavaDescriptorResolver is cached by KotlinResolveCache
...
Accessible via JavaResolveExtension
2014-04-23 14:06:10 +04:00
Andrey Breslav
ed79be6d2d
AnalyzerFacade.Setup introduced
2014-04-23 14:06:10 +04:00
Andrey Breslav
45a90a8f20
Eager methods removed from AnalyzerFacade
2014-04-23 14:06:09 +04:00
Andrey Breslav
d45347688d
Create consolidated caching service to provide all lazily resolved data
...
Other caches are to be removed later
2014-04-23 14:06:09 +04:00
Andrey Breslav
e4e60bc377
Function object replaced by a normal function
...
+ unneededly public member made protected
2014-04-18 21:28:22 +04:00
Andrey Breslav
ebd44816d0
Function object replaced by a normal function
2014-04-18 21:28:22 +04:00
Andrey Breslav
4839f7a230
Make lazy analysis accessible to clients
2014-04-18 21:28:22 +04:00
Andrey Breslav
7d688e5bec
LazyTopDownAnalyzer extracted as a separate component
2014-04-18 21:28:21 +04:00
Andrey Breslav
c57243035e
Factory method introduced for TopDownAnalysisParameters
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
Tal Man
aeb5bae556
Refactoring of CompileTimeConstant, introduce flag to represent a constant being referenced by a variable
2014-04-09 14:47:05 -04:00
zarechenskiy
43b41f6db9
Implement formatMethod in JavaSignatureFormatter without PSI
2014-04-04 17:40:37 +04:00
zarechenskiy
fe48051041
Remove acces to JavaPropertyInitializerEvaluator through ServiceLoader by injecting it in GenerateInjectors
2014-04-04 17:40:37 +04:00
zarechenskiy
2e4028ba3a
Move method createArrayType to JavaType and drop JavaElementFactory
2014-04-04 17:40:36 +04:00
zarechenskiy
735df2e340
Drop getExternal method from JavaSignatureFormatter
2014-04-04 17:40:36 +04:00
zarechenskiy
d7337fbe94
Remove PSI in TraceBasedExternalSignatureResolver, AlternativeFieldSignatureData, AlternativeMethodSignatureData
2014-04-04 17:40:35 +04:00
Andrey Breslav
b8119a57ab
Script parameters supported in LAZY mode
2014-04-01 12:36:51 +04:00
Andrey Breslav
77261330b9
Only use script parameters from definition
...
Passing parameters of a _single_ script into TopDownAnalyser makes no sense
2014-04-01 12:25:33 +04:00
Andrey Breslav
6ac2e2da8a
Support scripts in LAZY mode
2014-04-01 12:25:32 +04:00
Andrey Breslav
76e286aacc
ScriptParameterResolver extracted
2014-04-01 12:25:31 +04:00
Andrey Breslav
9a1f8b9cc6
Trace is not injected into ScriptBodyResolver any more
2014-04-01 12:25:31 +04:00
Nikolay Krasko
4aa3dff2a2
Update to ASM5
2014-04-01 02:55:05 +04:00
Nikolay Krasko
95fd870988
Update to idea 135.666 EAP with asm5 library
2014-04-01 02:55:00 +04:00
Evgeny Gerashchenko
04a6b10f7a
Minor. Renamed annotationDeserializer → deserializers.
2014-03-31 22:39:59 +04:00
Andrey Breslav
298ddcf0ad
Do not resolve annotation arguments when only a type is requested
...
This replaces the logic that always did complete constructor call resolution by a request to typeResolver when only a type is needed
2014-03-26 21:10:29 +04:00
Andrey Breslav
1cdfab761a
Lazy annotation resolution supported
2014-03-26 21:10:29 +04:00
Andrey Breslav
27d4e583a8
Unneeded field removed
2014-03-26 21:10:28 +04:00
Andrey Breslav
df1f0886c5
Inject a project into TDA for proper lazy session initialization
2014-03-26 21:10:27 +04:00
Evgeny Gerashchenko
9ecd680fd4
Rewritten PackageFragmentDescriptor to Kotlin.
2014-03-26 00:41:54 +04:00
Evgeny Gerashchenko
b736d1602e
Got rid of conustructors zoo in value parameter and getter/setter descriptors.
2014-03-25 21:35:09 +04:00
Andrey Breslav
80737bdfcf
Fix PSI behavior for "val x : ()?' case
2014-03-25 15:55:53 +04:00
Evgeny Gerashchenko
d62bc07437
Partial compilation of package (only functions supported).
2014-03-25 14:31:38 +04:00
Evgeny Gerashchenko
5c8253c099
Rendering class or package proto when JPS test fails.
2014-03-25 14:26:48 +04:00
Evgeny Gerashchenko
5f77a4548e
Extracted util method reading class header from bytes.
2014-03-25 14:26:48 +04:00
Pavel V. Talanov
a1dbf221b3
Use instance methods instead of JetPsiUtil for getting fq names
...
Remove unnecessary usages of JetFile#getPackageDirective where only FqName is needed
Make JetFile#getPackageFqName not nullable to avoid confusion on call sites
Remove getPackageName usages
Move getFqName(JetNamedDeclaration) to a separate util class
2014-03-24 17:51:49 +04:00
Pavel V. Talanov
246466bdc5
Implement stub based package declaration provider for lazy resolve
...
Implement StubPackageMemberDeclarationProvider
Introduce DeclarationProviderFactoryService to provide difference factories in CLI and Plugin
When indexing treat top level declarations without name specially so that they can be found in index
Implement PluginDeclarationProviderFactoryService which uses file based approach for non indexed files and stub based for others
2014-03-24 17:51:38 +04:00
Alexander Udalov
5fa1774cc1
Support hasStableParameterNames in KotlinSignature and propagation
...
#KT-1924 In Progress
#KT-2830 Fixed
2014-03-19 23:24:28 +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
fd9cb59841
TopDownAnalyzer supports lazy mode
2014-03-17 21:40:15 +04:00
Alexander Udalov
65edd6a16e
Make KotlinBinaryClassCache thread-local
2014-03-14 17:26:48 +04:00
Alexander Udalov
307f52895a
Refactor KotlinJvmBinaryClass, VirtualFileKotlinClass, etc.
...
VirtualFileKotlinClass now reads its header and name on creation. This is not
lazy enough and may be slower in some circumstances, but has the following
advantage: if anything is wrong in the header, a VirtualFileKotlinClass
instance will not be created at all, making it nearly impossible for the client
code to operate on invalid data causing all kinds of exceptions
2014-03-14 16:00:20 +04:00