Commit Graph

11613 Commits

Author SHA1 Message Date
Alexander Udalov 9e7aa69eb7 Resurrect JetValueParameter
Its name() and type() methods are still used in Kara (the latter just to check
if the type is nullable, so only the first character is needed)
2013-08-29 16:48:09 +04:00
Alexander Udalov d84ab4423f Support enums as annotation arguments in deserialized Kotlin descriptors 2013-08-29 16:48:09 +04:00
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