Commit Graph

11611 Commits

Author SHA1 Message Date
Alexander Udalov de062274e9 Extract getEnumEntriesScope utility method 2013-08-29 16:48:09 +04:00
Nikolay Krasko c0a30929c1 Add ability to configure build type id for downloading bootstrap compiler 2013-08-29 16:08:29 +04:00
Nikolay Krasko c246c325f4 Add dependency for idea module from kotlin runtime 2013-08-29 14:11:35 +04:00
Nikolay Krasko 05e48d5d77 Setup downloading kotlin plugin
TeamCity will use downloaded jps plugin for build
2013-08-29 14:11:30 +04:00
Andrey Breslav 87293a8831 Navigation to invoke() from {}
Example:

foo <caret>{}
2013-08-28 15:26:47 +04:00
Andrey Breslav a53986e1d6 Navigation to iterator(), next(), hasNext() through 'in' in for-loops 2013-08-28 14:46:58 +04:00
Andrey Breslav 6fcccff31b Common code extracted 2013-08-28 14:13:36 +04:00
Andrey Breslav b7153d7398 Common methods related to references are pulled up 2013-08-28 13:57:56 +04:00
Andrey Breslav aa6a509e8d A navigation test for one fake override 2013-08-28 13:52:46 +04:00
Andrey Breslav 9fa8ee10dc Tests for navigation to property delegates' accessors 2013-08-28 13:49:52 +04:00
Andrey Breslav d19b3a5628 Do not break the string after REF: by commas
Example:
// REF: (in Foo).bar(Any?,Any?)

When broken by commas it produces a wrong list of expected references
Solution:
* Use findLinesWithPrefixesRemoved() instead of findStringWithPrefixes()
2013-08-28 13:49:52 +04:00
Andrey Breslav 7c3e30775a More information in the assertion message 2013-08-28 13:49:52 +04:00
Andrey Breslav 945786e628 Rename 2013-08-28 13:49:52 +04:00
Andrey Breslav 2aca1dbbcd Navigation to get/set in property delegates when they are located in the libraries 2013-08-28 13:49:52 +04:00
Andrey Breslav e53d1773ae Support navigation to get/set methods of a property delegate, if they are in the source code 2013-08-28 13:49:52 +04:00
Andrey Breslav ff13ba87ac Code simplified 2013-08-28 13:49:52 +04:00
Pavel V. Talanov 7920321e3d Do not try to write KotlinPackage annotation if package class is not generated 2013-08-27 19:03:04 +04:00
Andrey Breslav 16d656c7af Fixing tests after adding a new intention 2013-08-27 15:58:22 +04:00
Andrey Breslav 5c58cb946c Support exported dependencies 2013-08-27 15:48:18 +04:00
Andrey Breslav 3002ac96f0 Supported converting member properties to extensions
Additionally, we now generate <selection>throw UnsupportedOperationException()</selection> when a missing body is added
2013-08-27 15:03:27 +04:00
Andrey Breslav c02f0a7d04 Intention to convert a member to an extension 2013-08-27 15:03:27 +04:00
Andrey Breslav acfb85e3fd Useless generic parameter removed 2013-08-27 15:03:27 +04:00
Andrey Breslav ca3d7f9780 Assertion message 2013-08-27 15:03:27 +04:00
Alexander Udalov fabf2bf46e Use Quartz engine on Mac for 'IDEA' run configuration
This enables anti-aliased fonts and nice looks in internal IDEA run
configurations. It's turned on by default in the shipped version of IDEA
2013-08-27 13:49:09 +04:00
Pavel V. Talanov e0c9328969 Remove unused DependencyClassByQualifiedNameResolver#resolveNamespace 2013-08-26 22:15:08 +04:00
Pavel V. Talanov 881a633ba0 Get rid of DescriptorSearchRule.ERROR_IF_FOUND_IN_KOTLIN
Rename other constants in DescriptorSearchRule
Inline methods with default values for DescriptorSearchRule
2013-08-26 22:07:36 +04:00
Pavel V. Talanov e70d6bbf71 Add caching by project to decompiled data 2013-08-26 17:58:54 +04:00
Pavel V. Talanov 78818e7a31 Use new JetDecompiledData to navigate to declarations in decompiled files 2013-08-26 17:58:52 +04:00
Pavel V. Talanov 385c15d0e2 Restructure JetDecompiledData
JetDecompiledData now stores file text and uses descriptors serialized to String to find declarations
2013-08-26 17:58:51 +04:00
Pavel V. Talanov b634792356 Use VirtualFileFinder in AnnotationDescriptorDeserializer 2013-08-26 17:58:50 +04:00
Pavel V. Talanov 7d50a8c6ea Use VirtualFileFinder in JavaNamespaceResolver 2013-08-26 17:58:49 +04:00
Pavel V. Talanov e4988f9dba Use VirtualFileFinder in JavaClassResolver
HACK: determine whether fqname is a name for class contained in class or namespace based on virtual file name
This commit introduces code duplication which is hard to avoid without major refactoring
2013-08-26 17:58:48 +04:00
Pavel V. Talanov 52de4215b5 Introduce VirtualFileFinder interface
Provide different implementations in Cli and Ide
2013-08-26 17:58:47 +04:00
Pavel V. Talanov b9f663a487 Create KotlinClassFileIndex 2013-08-26 17:58:45 +04:00
Pavel V. Talanov 4e29aad1c1 Rework invalid abi version reporting
KotlinClassFileHeader is aware of older annotations
Psi is not used to report invalid Abi version in CLI
2013-08-26 17:58:44 +04:00
Pavel V. Talanov 223c6007d2 Introduce DecompiledUtils 2013-08-26 16:00:16 +04:00
Pavel V. Talanov e0e2d50143 KotlinClassFileHeader now saves JvmClassName for processed class
Add utility methods
Refactor static method to member methods
2013-08-26 16:00:15 +04:00
Pavel V. Talanov dd0408d488 Add isCompiled property to JetFile 2013-08-26 16:00:14 +04:00
Pavel V. Talanov 0f8d50b44f Fix default visibility for class object in eager and lazy resolve 2013-08-26 16:00:13 +04:00
Alexander Udalov 41254a926b Regenerate compileKotlinAgainstCustomJava testData 2013-08-26 16:00:12 +04:00
Alexander Udalov 760ec99315 Regenerate topLevelMemberInvocation testData
Add a source used to generate classes
2013-08-26 16:00:11 +04:00
Alexander Udalov fb07a4c1ab Move SAM utils from MembersCache to SAMUtils 2013-08-26 16:00:09 +04:00
Alexander Udalov c5e37cc3de Move classes around in frontend.java
Move Java<->Kotlin class mapping to 'mapping' package, move method mapping to
'kotlinSignature' (and make it package local), delete unused methods
2013-08-26 16:00:08 +04:00
Alexander Udalov ea7036d808 Minor, move utilities to where they are used 2013-08-26 16:00:07 +04:00
Alexander Udalov 85e7b87ccd Move java visibilities to JavaVisibilities class
Move related utilities to where they're used
2013-08-26 16:00:06 +04:00
Alexander Udalov e1a10eb419 Delete JavaInnerClassResolver
Move its two methods to the place where they are used
2013-08-26 16:00:05 +04:00
Alexander Udalov 86013aacde Delete PsiDeclarationProvider
And its two subclasses. Replace it by package-local MembersProvider, which is
used only in java scopes, and two factory methods (for package & for class)
2013-08-26 16:00:03 +04:00
Alexander Udalov e2d6234c9c Simplify PsiDeclarationProvider
- simplify hierarchy, now there's only two kinds of providers: for packages and
  for classes
- remove getters from providers and thus almost get rid of dependencies on them
  from the outside resolver (the only usages left are those that call
  getMembersCache)
2013-08-26 16:00:02 +04:00
Alexander Udalov d708dc6ed4 Delete JavaSemanticServices
Almost in all places only JavaDescriptorResolver was needed. The only exception
is JavaPackageScope which needs PsiClassFinder, that is now passed as a
constructor argument.

Also merge JavaPackageScopeWithoutMembers into its superclass JavaPackageScope
2013-08-26 16:00:01 +04:00
Alexander Udalov a0cbe80aca Delete JavaSemanticServices.getTypeTransformer()
Two clients can depend on JavaTypeTransformer directly instead of
JavaSemanticServices
2013-08-26 16:00:00 +04:00