Commit Graph

387 Commits

Author SHA1 Message Date
Stepan Koltsov a9d82880e0 remove unused code 2012-06-13 21:11:01 +04:00
Stepan Koltsov edad5c9266 merge analyzeBodies functions from JS and JVM backend 2012-06-13 19:53:08 +04:00
Stepan Koltsov 9290f55bad JavaDescriptorResolver is not needed for body resolver
* create InjectorForBodyResolve
* split ScriptDescriptor into ScriptDeclarationResolve and ScriptBodyResolver
2012-06-13 19:27:17 +04:00
Stepan Koltsov a55c8f1a04 move trivial method from TopDownAnalyzer to BodyResolver 2012-06-12 18:50:41 +04:00
Nikolay Krasko e7d625e37c Fix type in function name and a better name for another function 2012-06-09 18:38:30 +04:00
Evgeny Gerashchenko f83defaa7f KT-2228 Open and final trait members are loaded as abstract from binary Kotlin classes.
Added storing modality for trait members in @JetMethod annotations.

 #KT-2228 Fixed
2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko c446fa3fc9 Replaced int flags with BitSet in internal API. 2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko 12893cec54 Added JetMethod.flags() to replace kind(), with adding extra functionality (modality and visibility marking). 2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko 6e5724edb6 Moved checking for syntax errors in alternative signature to AlternativeSignatureParsing. 2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko 16565e1101 Made methods in AlternativeSignatureParsing throwing AlternativeSignatureMismatchException and added proper handling of them. 2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko 4cbfa9beb6 Added storing alternative signature reading errors in class resolve data. 2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko 7cb591401d Supported alternative signatures for vararg parameters. 2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko b1ba730ebb Ignoring alternative signature annotation if it has syntax errors. 2012-06-09 16:46:37 +04:00
Evgeny Gerashchenko e3da27d62e Fixed typos 2012-06-09 16:46:36 +04:00
Andrey Breslav 52d175108d More details in the assertion 2012-06-09 15:52:16 +04:00
Stepan Koltsov acac0eddc7 formatting 2012-06-08 21:36:49 +04:00
Stepan Koltsov 6946abbcea working on REPL: implemented previous lines importing 2012-06-08 04:19:24 +04:00
Stepan Koltsov 2d88c74635 JvmClassName: equals and hashCode 2012-06-08 03:39:49 +04:00
Stepan Koltsov d1c566f1de JvmClassName: @NotNull, transient annotations 2012-06-08 03:39:30 +04:00
Stepan Koltsov 3620dcab75 JvmClassName.toString 2012-06-08 03:39:18 +04:00
Stepan Koltsov a929f86127 primary field of JvmClassName must be internal name
because fq name can be mapped to different internal names
2012-06-08 03:39:04 +04:00
Stepan Koltsov 5468af848e kill JvmClassName from Class constructor
compiler itself and compiler data should not be mixed
2012-06-08 03:38:42 +04:00
Stepan Koltsov 2ae632aa9a chop Impl suffix when generating field name 2012-06-08 03:38:28 +04:00
Andrey Breslav 48460a8480 A clarifying assertion 2012-06-07 15:45:33 +04:00
Alex Tkachman 03c4e755fa preparations to multi-file compilation 2012-06-06 11:12:39 +03:00
Evgeny Gerashchenko 364cbe3a88 Supported function and tuple types in alternative signatures. 2012-06-05 15:59:18 +04:00
Evgeny Gerashchenko 798ccdc8c4 Supported type parameters in alternative method signatures. 2012-06-05 15:59:18 +04:00
Evgeny Gerashchenko 247e3978d9 Moved alternative signature parsing logic from JDR to separate class. 2012-06-05 15:59:17 +04:00
Evgeny Gerashchenko 968d159f86 Fixed NPE when no type ref is specified in Kotlin signature. 2012-06-05 15:59:17 +04:00
Evgeny Gerashchenko 9c8da5ad9c Reverted some usages of JvmClassName(Class) constructor. They introduce conceptual problems, but not much profit. 2012-06-04 17:33:35 +04:00
Evgeny Gerashchenko dce64d5166 Added JvmClassName(Class) constructor. Replaced some JvmClassName(String) usages with it. 2012-06-04 15:28:03 +04:00
Evgeny Gerashchenko 688b509b96 Implemented basic @KotlinSignature parsing. Now it works for functions without type parameters and varargs. 2012-06-04 15:28:02 +04:00
Evgeny Gerashchenko 08b19a72ab Added KotlinSignatureAnnotation wrapper class, and added it into PsiMethodWrapper. 2012-06-04 15:28:02 +04:00
Evgeny Gerashchenko 43e83956cc Introduced @KotlinSignature annotation to be used on methods. 2012-06-04 15:28:02 +04:00
Nikolay Krasko 8d69af87ce Completion for java inner class names 2012-05-31 19:58:05 +04:00
Andrey Breslav 6f28638e80 Remove useless ObservableBindingTrace from DI 2012-05-31 19:29:06 +04:00
Andrey Breslav 423ed30e91 Fix compilation again 2012-05-31 14:17:26 +04:00
Andrey Breslav 1ab693be09 Fix compilation 2012-05-31 14:10:32 +04:00
Stepan Koltsov 22be8ad49a do not include error types in hierarchy 2012-05-30 21:47:19 +04:00
Stepan Koltsov 7c0b8876ca fix more errors of incomplete classpath
after this commit project without JDK configured is not all red
2012-05-30 21:04:47 +04:00
Stepan Koltsov a7aeba4e48 JDR: do not crash if signature references nonexistent class 2012-05-30 21:04:47 +04:00
Stepan Koltsov 3a3cbd53d8 JavaDescriptorResolver should not crash if there is no original for alt-header
(before this commit it crashed because package was not searched in alt-headers)

This commit makes JDR ignore alt-header if original is not found
2012-05-30 21:04:47 +04:00
Stepan Koltsov 30e44fdc5f script parameters
still a lot of things to do
2012-05-28 20:31:29 +04:00
Andrey Breslav e4007992c6 Extract interface: TypeParameterDescriptor
A lot of code relied on these descriptors being mutable. In most cases I managed to work around this,
 but there're still are casts to raw List necessary in one or two places
2012-05-28 20:02:36 +04:00
Stepan Koltsov a1714d99cf DependencyClassByFqNameResolver 2012-05-28 17:34:44 +04:00
Svetlana Isakova dfbd9922d9 fixes after merge
get rid of JetControlFlowDataTraceFactory
2012-05-28 12:32:45 +04:00
Nikolay Krasko e946a0f908 - Out of block modification strategy for Kotlin block expression
- Separate project analysis for IDEA needs: headers + bodies
2012-05-27 17:39:56 +04:00
Evgeny Gerashchenko bf62877e2b Replaced Usage of PathUtil.jarFileToVirtualFile() to PathUtil.jarFileOrDirectoryToVirtualFile(), removed the former. 2012-05-23 17:35:24 +04:00
Evgeny Gerashchenko ea36cf9fb0 Reverted all changes related to renaming jdkHeaders to altHeaders. 2012-05-23 17:05:09 +04:00
Stepan Koltsov 33a59ff5fe Name class
In the most places in frontend identifier is stored in Name class, was in String.
Name has two advantages over String:
* validation: you cannot accidentally create identifier with dot, for example
* readability: if you see String, you don't now whether it is
  identifier, fq name, jvm class name or something else

Name's disadvantage is (small) performance overhead. We have no value types in JVM.
2012-05-23 02:52:32 +04:00