Alexander Udalov
5b916ea108
Type parameters/arguments constitute lists, not collections
2013-10-15 20:34:44 +04:00
Alexander Udalov
0958e63be2
JavaMethod.getValueParameters() returns List
2013-10-15 20:22:59 +04:00
Andrey Breslav
d52f2e25b0
AnnotationDescriptor interface extracted
2013-10-15 19:54:39 +04:00
Andrey Breslav
cd275fd814
'runtime' module replaced by 'kotlin-runtime' library
2013-10-14 14:42:25 +04:00
Andrey Breslav
d7936b7ea4
Do not fail when a class is not found
2013-10-06 17:01:40 +04:00
Andrey Breslav
00c3156b59
Use Unit instead of Void
2013-10-05 16:59:57 +04:00
Andrey Breslav
2e585f88a3
ReenteringLazyValueComputationException & co moved to frontend
2013-10-05 16:59:57 +04:00
Andrey Breslav
0765e89b19
Weakly retained memoized functions moved out of util.runtime
2013-10-05 16:59:57 +04:00
Andrey Breslav
5ebbe0d772
Get rid of dependency on guava in DFS
2013-10-05 16:59:57 +04:00
Andrey Breslav
239ca9728d
StorageManager API does not use Computable and Function and more
2013-10-05 16:59:57 +04:00
Andrey Breslav
7d1c46ed2c
Getting rid of Computable and Function in lazy values and memoized functions
2013-10-05 16:59:56 +04:00
Andrey Breslav
4d28dfada6
Lazy values and memoized functions conform to Kotlin's function interfaces
2013-10-05 16:59:56 +04:00
Alexander Udalov
9d7968457f
JDR doesn't depend on intellij-core
2013-10-04 18:32:42 +04:00
Alexander Udalov
89dbafb6be
Rename KotlinClassFileHeader and related classes
2013-10-04 18:32:42 +04:00
Alexander Udalov
c3abd1c26f
Delete LOG.error from ReadDataFromAnnotationVisitor
...
These conditions can happen on a broken binary data, no need to report an error
about it
2013-10-04 18:32:42 +04:00
Alexander Udalov
098d183a72
Remove Logger from AnnotationDescriptorDeserializer
...
Use abstract ErrorReporter instead
2013-10-04 18:32:42 +04:00
Alexander Udalov
ef7bb0cdf4
Delete LOG.warn about number of type arguments from JDR
...
This can happen when loading symbols from incorrect Java sources, which is OK
2013-10-04 18:32:41 +04:00
Alexander Udalov
f218877cf2
Get rid of dependency of PackageClassUtils on StringUtil
2013-10-04 18:32:41 +04:00
Alexander Udalov
5f0c593bb8
Minor, inline methods, use String instead of StringUtil
2013-10-04 18:32:41 +04:00
Alexander Udalov
edda5d8801
Move AssertInvisibleInResolver check to frontend.java
...
This is a dirty hack, taking advantage of the fact that
JavaResolverCache.getClass() is called exactly once and right after this check
2013-10-04 18:32:41 +04:00
Alexander Udalov
dbba6c614b
Rename JvmClassName.getFqName() and add a warning
...
All usages of this method as of right now seem wrong, as they don't work in the
case of classes which contain dollars in their names -- dollars get replaced to
dots
2013-10-04 18:32:41 +04:00
Alexander Udalov
e8d4aae48b
Minimize usages of JvmClassName.getFqName()
2013-10-04 18:32:41 +04:00
Alexander Udalov
044a47905e
Get rid of dependency on Guava's Multimap
...
Replace with a hand-written multi-map
2013-10-04 18:32:41 +04:00
Alexander Udalov
3d5e128267
Remove trivial dependencies of JDR on Guava
2013-10-04 18:32:41 +04:00
Alexander Udalov
fc78971aea
Delete JvmClassName.getAsmType()
2013-10-04 18:32:40 +04:00
Alexander Udalov
521496b188
Delete JvmPrimitiveType.getAsmType()
...
Create PrimitiveTypesUtil in frontend.java for this and other utilities
2013-10-04 18:32:40 +04:00
Alexander Udalov
f4abaaee10
Delete JvmClassName.byType
...
Replace JvmClassName by ASM Type in many places of JVM codegen: it wasn't used
to abstract anything, but there was a lot of useless conversions between the
two
2013-10-04 18:32:39 +04:00
Alexander Udalov
6898274f47
Delete JvmClassName.getDescriptor()
...
It shouldn't be available in descriptor.loader.java, since it wouldn't depend
on ASM and its descriptors won't make any sense there. Most of the places where
this method was used were in codegen. The few exceptions are reading
annotations for compiled Kotlin classes by ASM visitors, but that will be
abstracted away soon
2013-10-04 18:32:39 +04:00
Alexander Udalov
45bc7c2926
Delete JvmClassName.byClass, refactor JvmAnnotationNames
...
Store constant class names as instances of FqName instead of JvmClassName. This
is done to minimize usages of the method 'JvmClassName.getFqName()', since it's
wrong and shouldn't be used
2013-10-04 18:32:39 +04:00
Alexander Udalov
6aab9fe04e
Delete JvmClassName.byClassDescriptor
...
It only worked correctly by coincidence: mapping from the Kotlin world to the
JVM world should always be done through JetTypeMapper
2013-10-04 18:32:39 +04:00
Alexander Udalov
54db0e30c0
Delete signature name from JvmClassName
2013-10-04 18:32:39 +04:00
Alexander Udalov
1cb68e9cf4
Move KotlinToJavaTypesMap, AsmTypeConstants to frontend.java
...
They're used only in compiler
2013-10-04 18:32:38 +04:00
Alexander Udalov
73b867d1e5
Simplify JvmPrimitiveType, PrimitiveType
...
Delete utility methods from interfaces, move once-used methods to where they're
used
2013-10-04 18:32:38 +04:00
Alexander Udalov
1578d891cb
Remove PsiClassFinder
...
Inline the implementation into JavaClassFinderImpl
2013-10-04 18:32:38 +04:00
Alexander Udalov
19dd2e5e1b
Create special classes for decompiled Java enums
...
Simplify logic in JavaConstructorResolver and JavaClassResolver
2013-10-04 01:03:34 +04:00
Alexander Udalov
01e46bbd11
Move caching logic from java class scope to descriptor
2013-10-04 01:03:34 +04:00
Andrey Breslav
4cd5c66c27
No need to escape exceptions in recursionDetected()
2013-10-03 15:49:20 +04:00
Andrey Breslav
db34868b6e
Migrate existing code to LockBasedStorageManager.NO_LOCKS
2013-10-03 15:49:20 +04:00
Andrey Breslav
aa90302d1b
Tests for storage manager
2013-10-03 15:49:20 +04:00
Andrey Breslav
0591ceb7f0
Make ReenteringLazyValueComputationException debuggable in tests & internal mode
2013-10-03 15:49:20 +04:00
Andrey Breslav
5f4af8fb03
Distinguishing first and subsequent recursive calls to lazy values
2013-10-03 15:49:20 +04:00
Andrey Breslav
eb20d358b0
Fall-through case removed
2013-10-03 15:49:20 +04:00
Andrey Breslav
41a73645c6
Using enum instead of Object constants
2013-10-03 15:49:20 +04:00
Andrey Breslav
d7773415bf
Support storage manager with no locks
2013-10-03 15:49:19 +04:00
Andrey Breslav
0c83832f27
Use ReentrantLock instead of intrinsic locks in LockBasedStorageManager
2013-10-03 15:49:19 +04:00
Andrey Breslav
ee72479344
Thread-safe lazy values used in lazy resolve
2013-10-03 15:49:19 +04:00
Andrey Breslav
344a57f2d5
isComputed() supported for lazy values
2013-10-03 15:49:19 +04:00
Andrey Breslav
7dfe1f963d
Support returning default values on subsequent calls after recursion detection
2013-10-03 15:49:19 +04:00
Andrey Breslav
e13063017a
Exception class moved
2013-10-03 15:49:19 +04:00
Andrey Breslav
9bb77b09a3
Lazy values unified in the project
2013-10-03 15:49:19 +04:00