Do not call findKotlinClass when loading class annotations

The main change is in AbstractBinaryClassAnnotationAndConstantLoader, where we
no longer perform unnecessary IO operations for classes which are already
loaded to memory
This commit is contained in:
Alexander Udalov
2016-04-06 16:18:10 +03:00
parent 7620d66019
commit ad068ed4ac
16 changed files with 68 additions and 70 deletions
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.load.java.components
import com.intellij.openapi.diagnostic.Logger
import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor
import org.jetbrains.kotlin.descriptors.ClassDescriptor
import org.jetbrains.kotlin.name.ClassId
@@ -28,10 +27,7 @@ import org.jetbrains.kotlin.util.slicedMap.Slices
import org.jetbrains.kotlin.util.slicedMap.WritableSlice
class TraceBasedErrorReporter(private val trace: BindingTrace) : ErrorReporter {
companion object {
private val LOG = Logger.getInstance(TraceBasedErrorReporter::class.java)
@JvmField
val METADATA_VERSION_ERRORS: WritableSlice<String, IncompatibleVersionErrorData> = Slices.createCollectiveSlice()
@@ -50,8 +46,4 @@ class TraceBasedErrorReporter(private val trace: BindingTrace) : ErrorReporter {
override fun reportCannotInferVisibility(descriptor: CallableMemberDescriptor) {
OverrideResolver.createCannotInferVisibilityReporter(trace).invoke(descriptor)
}
override fun reportLoadingError(message: String, exception: Exception?) {
LOG.error(message, exception)
}
}