Commit Graph

17336 Commits

Author SHA1 Message Date
Alexander Udalov b0539ac7a4 Minor, fix old terminology mistake 2014-09-15 19:30:53 +04:00
Alexander Udalov cfefa0c970 Convert VirtualFileKotlinClass to Kotlin 2014-09-15 19:30:53 +04:00
Alexander Udalov 940d07c81b Rename VirtualFileKotlinClass.java to .kt 2014-09-15 19:30:53 +04:00
Alexander Udalov 556e313141 Minor, improve multi-module java analysis test
- don't check supertypes for every callable in a class
- don't check methods from Any
- check that all descriptors were correctly resolved (otherwise the test
  failure error message was very cryptic)
2014-09-15 19:30:53 +04:00
Alexander Udalov 73a92c6aa9 Remove JavaClass.getAllMethods()/getAllFields()
Their behavior is different in PSI and reflection (two things that this
interface is supposed to unify), so there's no point in making it interface
methods, rather we should just walk supertype hierarchy manually

Also make JavaClassImpl.getSupertypes() invoke PsiClass.getSuperTypes(),
because it also contains java.lang.Object for interfaces, which makes
equals/hashCode/toString appear in interfaces' getAllMethods() as well
2014-09-15 19:30:53 +04:00
Alexander Udalov f39c3041d2 Make MISSING_VAL_ON_ANNOTATION_PARAMETER error instead of warning
Annotation with a parameter that is not stored doesn't make any sense
2014-09-15 19:30:52 +04:00
Alexander Udalov f64e633a7e Minor, add NotNull annotations to test sources 2014-09-15 19:30:52 +04:00
Alexander Udalov 3485d65d8a Remove superfluous isVararg() from JavaMethod 2014-09-15 19:30:52 +04:00
Alexander Udalov 924283d2d9 Extract JavaConstructor out of JavaMethod
Will be useful in reflection-backed implementation of Java structure, where
Constructor is not a Method and doesn't even inherit from it
2014-09-15 19:30:52 +04:00
Alexander Udalov 04ff45dee3 Drop "toClassId" in DeserializerForDecompiler 2014-09-15 19:30:51 +04:00
Alexander Udalov 7595e32bb6 Use ClassId instead of JvmClassName in KotlinJvmBinaryClass
ClassId contains exact information about origin of the class (e.g. if '$' in
the class name denotes nested classes separator or just a character in the
name)
2014-09-15 19:30:51 +04:00
Alexander Udalov 1f8b2cef52 Read InnerClasses attribute value in FileBasedKotlinClass
Resolve names mentioned in class declarations based on this information
2014-09-15 19:30:51 +04:00
Alexander Udalov e3b01f073f Replace FqName by ClassId where possible in Java resolver 2014-09-15 19:30:51 +04:00
Alexander Udalov 9648c50ac9 Minor, refactor FileBasedKotlinClass factory method 2014-09-15 19:30:51 +04:00
Alexander Udalov fa39bf03a0 Extract abstract FileBasedKotlinClass out of VirtualFileKotlinClass
Add another implementation of FileBasedKotlinClass which was indirectly used in
jps-plugin (LocalFileKotlinClass)
2014-09-15 19:30:51 +04:00
Alexander Udalov f34f2e71a8 Minor, add NotNull annotations to VirtualFileKotlinClass 2014-09-15 19:30:50 +04:00
Alexander Udalov a8c5f1bb3a Drop KotlinClassFinder#findKotlinClass(FqName)
findKotlinClass(ClassId) should be used instead
2014-09-15 19:30:50 +04:00
Alexander Udalov 422e922c36 Make JavaClassFinder accept ClassId rather than FqName
ClassId has more information about the name which will be very useful when
implementing JavaClassFinder in reflection
2014-09-15 19:30:50 +04:00
Alexander Udalov e9ae06a53e Straighten out MemberIndex calculation in LazyJavaStaticScope
Also delete confusing "inn" function
2014-09-15 19:30:50 +04:00
Alexander Udalov 0cb7c08a7a Minor, delete unneeded underscores from parameter names 2014-09-15 19:30:50 +04:00
Alexander Udalov bc1d59a538 Add KotlinClassFinder#findKotlinClass(ClassId)
Will be used to load nested classes correctly at runtime
2014-09-15 19:30:50 +04:00
Alexander Udalov c854b1d713 Unextend JavaAnnotationArgumentImpl from JavaElementImpl 2014-09-15 19:30:49 +04:00
Alexander Udalov 4c51368244 Rewrite JavaAnnotationArgument interfaces and implementations to Kotlin 2014-09-15 19:30:49 +04:00
Alexander Udalov ec02382976 Assert that reference annotation argument is always an enum value
Rename JavaReferenceAnnotationArgument on that occasion to
JavaEnumValueAnnotationArgument. Also add a test on a nested enum annotation
argument
2014-09-15 19:30:49 +04:00
Alexander Udalov 13eeb18219 Delete "idea.properties"
Apparently it was committed by mistake and never used since then
2014-09-15 19:30:49 +04:00
Alexander Udalov 3822c48f30 Include additional IDE modules to "IDE" scope
- include modules "idea-analysis" and "ide-lazy-resolve"
- exclude all files starting from "idea" such as idea.properties, ideaSDK etc.
2014-09-15 19:30:49 +04:00
Andrey Breslav f1cf446e10 KT-5773 Smart cast doesn't work with Nothing on the rhs of "?:"
#KT-5773 FIxed
2014-09-15 18:24:13 +04:00
Alexander Udalov 3a806713fd Fix obscure typo in isEqual() in KotlinClassFileIndex 2014-09-12 21:18:24 +04:00
Alexander Udalov 8cc1a1da27 Minor, fix warnings in KotlinClassFileIndex 2014-09-12 21:18:18 +04:00
Natalia Ukhorskaya ecaf87f51c Minor, tests: rename test directive in debugger tests 2014-09-12 17:26:33 +04:00
Natalia Ukhorskaya e16673f50a Debugger tests: do not print line numbers in stdlib 2014-09-12 17:26:32 +04:00
Pavel V. Talanov 3eeed559b4 Use different scope in completion/autoimport if element is in production source root 2014-09-12 13:09:20 +04:00
Pavel V. Talanov 88b262faf1 Make test source module a friend of production source module 2014-09-12 13:08:31 +04:00
Pavel V. Talanov f3a9bed14a Introduce ModuleDescriptor#isFriend(ModuleDescriptor)
Use it to allow friend modules to see internal members
2014-09-12 13:08:30 +04:00
Pavel V. Talanov 10666d777d Split ModuleSourceInfo into ModuleProductionSourceInfo and ModuleTestSourceInfo 2014-09-12 13:08:29 +04:00
Pavel V. Talanov 3e25e16599 Refactor: drop redundant abstractions in IdeaModuleInfoTest 2014-09-12 13:08:27 +04:00
Alexey Sedunov 424c086ba3 Sort list of declarations suggested for auto-import by proximity
#KT-2050 Fixed
2014-09-11 21:04:27 +04:00
Alexey Sedunov 650c9c6da5 Quick Fixes: Support "WITH_RUNTIME" directive in multi-file quick fix tests 2014-09-11 21:04:26 +04:00
Alexander Udalov e0ee890486 Move properties of enum class object to the enum class
Similar to how it's done for usual classes
2014-09-11 17:56:43 +04:00
Alexander Udalov 81004889eb Fix initialization of object's INSTANCE$ field
Call object's constructor in <clinit> and ignore the result, but in the first
line of <init> save the current "this" to INSTANCE$

 #KT-4516 Fixed
 #KT-4543 Fixed
 #KT-5291 Fixed
 #KT-5523 Fixed
 #KT-5582 Fixed
2014-09-11 17:56:43 +04:00
Alexander Udalov b907f35995 Minor, fix some warnings in codegen 2014-09-11 17:56:43 +04:00
Alexander Udalov 8c781e5d14 Minor, remove duplicate method in ExpressionCodegen 2014-09-11 17:56:42 +04:00
Alexander Udalov 937404239e Minor, delete unused method in DataFlowInfo 2014-09-11 17:56:27 +04:00
Nikolay Krasko 32c00a4623 Return tree structure in test view result for running single test 2014-09-11 17:45:26 +04:00
Nikolay Krasko 10fbd4a269 Test that tests are executed only once in "All Tests" 2014-09-11 15:44:59 +04:00
Nikolay Krasko 80616a1fcb Drop all inners classes if sorting is needed 2014-09-11 15:44:58 +04:00
Natalia Ukhorskaya 32f6d7feac Add test for KT-5554: coerce arrays in return
#KT-5554 Fixed
2014-09-11 15:04:46 +04:00
Natalia Ukhorskaya e0469de5be Eval4j: fix coerce for arrays in return
#KT-5554 Fixed
2014-09-11 15:04:44 +04:00
Natalia Ukhorskaya 4667190b8c Minor: fix typo 2014-09-11 15:04:43 +04:00
Natalia Ukhorskaya 50dcef254d Debugger: get correct context for breakpoints inside lambdas 2014-09-11 15:04:41 +04:00