Restored back temporarily renamed properties

This commit is contained in:
Valentin Kipyatkov
2015-09-30 22:50:27 +03:00
parent 6466facffa
commit 5afa91d4ec
50 changed files with 84 additions and 91 deletions
@@ -2758,7 +2758,7 @@ public class ExpressionCodegen extends JetVisitor<StackValue, StackValue> implem
JetType type = bindingContext.getType(expression); JetType type = bindingContext.getType(expression);
assert type != null; assert type != null;
assert state.getReflectionTypes().getTEMP_kClass().getTypeConstructor().equals(type.getConstructor()) assert state.getReflectionTypes().getkClass().getTypeConstructor().equals(type.getConstructor())
: "::class expression should be type checked to a KClass: " + type; : "::class expression should be type checked to a KClass: " + type;
return generateClassLiteralReference(typeMapper, KotlinPackage.single(type.getArguments()).getType()); return generateClassLiteralReference(typeMapper, KotlinPackage.single(type.getArguments()).getType());
@@ -19,7 +19,7 @@ package org.jetbrains.kotlin.codegen.inline
import com.google.common.collect.LinkedListMultimap import com.google.common.collect.LinkedListMultimap
import java.util.ArrayList import java.util.ArrayList
import com.intellij.util.containers.Stack import com.intellij.util.containers.Stack
import org.jetbrains.kotlin.codegen.optimization.common.TEMP_isMeaningful import org.jetbrains.kotlin.codegen.optimization.common.isMeaningful
import org.jetbrains.org.objectweb.asm.Opcodes import org.jetbrains.org.objectweb.asm.Opcodes
import org.jetbrains.org.objectweb.asm.tree.* import org.jetbrains.org.objectweb.asm.tree.*
import java.util.Comparator import java.util.Comparator
@@ -157,7 +157,7 @@ class IntervalMetaInfo<T : SplittableInterval<T>> {
private fun Interval.isMeaningless(): Boolean { private fun Interval.isMeaningless(): Boolean {
val start = this.startLabel val start = this.startLabel
var end: AbstractInsnNode = this.endLabel var end: AbstractInsnNode = this.endLabel
while (end != start && !end.TEMP_isMeaningful) { while (end != start && !end.isMeaningful) {
end = end.getPrevious() end = end.getPrevious()
} }
return start == end return start == end
@@ -522,7 +522,7 @@ public class InternalFinallyBlockInliner extends CoveringTryCatchNodeProcessor {
@Nullable @Nullable
private static AbstractInsnNode getNextMeaningful(@NotNull AbstractInsnNode node) { private static AbstractInsnNode getNextMeaningful(@NotNull AbstractInsnNode node) {
AbstractInsnNode result = node.getNext(); AbstractInsnNode result = node.getNext();
while (result != null && !CommonPackage.getTEMP_isMeaningful(result)) { while (result != null && !CommonPackage.getIsMeaningful(result)) {
result = result.getNext(); result = result.getNext();
} }
return result; return result;
@@ -19,7 +19,7 @@ package org.jetbrains.kotlin.codegen.optimization
import org.jetbrains.org.objectweb.asm.tree.MethodNode import org.jetbrains.org.objectweb.asm.tree.MethodNode
import org.jetbrains.kotlin.codegen.optimization.transformer.MethodTransformer import org.jetbrains.kotlin.codegen.optimization.transformer.MethodTransformer
import org.jetbrains.kotlin.codegen.optimization.common.OptimizationBasicInterpreter import org.jetbrains.kotlin.codegen.optimization.common.OptimizationBasicInterpreter
import org.jetbrains.kotlin.codegen.optimization.common.TEMP_isMeaningful import org.jetbrains.kotlin.codegen.optimization.common.isMeaningful
public class DeadCodeEliminationMethodTransformer : MethodTransformer() { public class DeadCodeEliminationMethodTransformer : MethodTransformer() {
override fun transform(internalClassName: String, methodNode: MethodNode) { override fun transform(internalClassName: String, methodNode: MethodNode) {
@@ -31,7 +31,7 @@ public class DeadCodeEliminationMethodTransformer : MethodTransformer() {
// by try/catch blocks or local variables table // by try/catch blocks or local variables table
// We remove unneeded ones further after all optimizations by calling CommonPackage.prepareForEmitting(methodNode) // We remove unneeded ones further after all optimizations by calling CommonPackage.prepareForEmitting(methodNode)
insnsArray.zip(frames).filter { insnsArray.zip(frames).filter {
it.second == null && it.first.TEMP_isMeaningful it.second == null && it.first.isMeaningful
}.forEach { insnList.remove(it.first) } }.forEach { insnList.remove(it.first) }
} }
} }
@@ -22,7 +22,7 @@ import org.jetbrains.org.objectweb.asm.tree.AbstractInsnNode
import org.jetbrains.org.objectweb.asm.tree.LabelNode import org.jetbrains.org.objectweb.asm.tree.LabelNode
import org.jetbrains.org.objectweb.asm.Opcodes import org.jetbrains.org.objectweb.asm.Opcodes
import org.jetbrains.org.objectweb.asm.tree.JumpInsnNode import org.jetbrains.org.objectweb.asm.tree.JumpInsnNode
import org.jetbrains.kotlin.codegen.optimization.common.TEMP_isMeaningful import org.jetbrains.kotlin.codegen.optimization.common.isMeaningful
public class RedundantGotoMethodTransformer : MethodTransformer() { public class RedundantGotoMethodTransformer : MethodTransformer() {
/** /**
@@ -34,7 +34,7 @@ public class RedundantGotoMethodTransformer : MethodTransformer() {
val currentLabels = hashSetOf<LabelNode>() val currentLabels = hashSetOf<LabelNode>()
for (insn in insns.reverse()) { for (insn in insns.reverse()) {
if (insn.TEMP_isMeaningful) { if (insn.isMeaningful) {
if (insn.getOpcode() == Opcodes.GOTO && (insn as JumpInsnNode).label in currentLabels) { if (insn.getOpcode() == Opcodes.GOTO && (insn as JumpInsnNode).label in currentLabels) {
insnsToRemove.add(insn) insnsToRemove.add(insn)
} }
@@ -21,7 +21,7 @@ import org.jetbrains.org.objectweb.asm.tree.InsnList
import org.jetbrains.org.objectweb.asm.tree.MethodNode import org.jetbrains.org.objectweb.asm.tree.MethodNode
import org.jetbrains.org.objectweb.asm.tree.analysis.BasicValue import org.jetbrains.org.objectweb.asm.tree.analysis.BasicValue
val AbstractInsnNode.TEMP_isMeaningful: Boolean get() = val AbstractInsnNode.isMeaningful: Boolean get() =
when (this.getType()) { when (this.getType()) {
AbstractInsnNode.LABEL, AbstractInsnNode.LINE, AbstractInsnNode.FRAME -> false AbstractInsnNode.LABEL, AbstractInsnNode.LINE, AbstractInsnNode.FRAME -> false
else -> true else -> true
@@ -46,21 +46,21 @@ public class InsnSequence(val from: AbstractInsnNode, val to: AbstractInsnNode?)
fun MethodNode.prepareForEmitting() { fun MethodNode.prepareForEmitting() {
tryCatchBlocks = tryCatchBlocks.filter { tcb -> tryCatchBlocks = tryCatchBlocks.filter { tcb ->
InsnSequence(tcb.start, tcb.end).any { insn -> InsnSequence(tcb.start, tcb.end).any { insn ->
insn.TEMP_isMeaningful insn.isMeaningful
} }
} }
// local variables with live ranges starting after last meaningful instruction lead to VerifyError // local variables with live ranges starting after last meaningful instruction lead to VerifyError
localVariables = localVariables.filter { lv -> localVariables = localVariables.filter { lv ->
InsnSequence(lv.start, lv.end).any { insn -> InsnSequence(lv.start, lv.end).any { insn ->
insn.TEMP_isMeaningful insn.isMeaningful
} }
} }
// We should remove linenumbers after last meaningful instruction // We should remove linenumbers after last meaningful instruction
// because they point to index of non-existing instruction and it leads to VerifyError // because they point to index of non-existing instruction and it leads to VerifyError
var current = instructions.getLast() var current = instructions.getLast()
while (!current.TEMP_isMeaningful) { while (!current.isMeaningful) {
val prev = current.getPrevious() val prev = current.getPrevious()
if (current.getType() == AbstractInsnNode.LINE) { if (current.getType() == AbstractInsnNode.LINE) {
@@ -363,7 +363,7 @@ public class ReplInterpreter {
private void setReplScriptExecuting(boolean isExecuting) { private void setReplScriptExecuting(boolean isExecuting) {
if (replReader != null) { if (replReader != null) {
replReader.setTEMP_isReplScriptExecuting(isExecuting); replReader.setIsReplScriptExecuting(isExecuting);
} }
} }
@@ -33,11 +33,11 @@ public class ReplSystemInWrapper(
private val isAtBufferEnd: Boolean private val isAtBufferEnd: Boolean
get() = curBytePos == inputByteArray.size() get() = curBytePos == inputByteArray.size()
@Volatile var TEMP_isReplScriptExecuting = false @Volatile var isReplScriptExecuting = false
override fun read(): Int { override fun read(): Int {
if (isLastByteProcessed) { if (isLastByteProcessed) {
if (TEMP_isReplScriptExecuting) { if (isReplScriptExecuting) {
isReadLineStartSent = false isReadLineStartSent = false
replWriter.printlnReadLineEnd() replWriter.printlnReadLineEnd()
} }
@@ -47,7 +47,7 @@ public class ReplSystemInWrapper(
} }
while (isXmlIncomplete) { while (isXmlIncomplete) {
if (!isReadLineStartSent && TEMP_isReplScriptExecuting) { if (!isReadLineStartSent && isReplScriptExecuting) {
replWriter.printlnReadLineStart() replWriter.printlnReadLineStart()
isReadLineStartSent = true isReadLineStartSent = true
} }
@@ -71,7 +71,7 @@ public class ReplSystemInWrapper(
val xmlInput = byteBuilder.toString() val xmlInput = byteBuilder.toString()
val unescapedXml = parseXml(xmlInput) val unescapedXml = parseXml(xmlInput)
val resultLine = if (TEMP_isReplScriptExecuting) val resultLine = if (isReplScriptExecuting)
unescapeLineBreaks(unescapedXml) unescapeLineBreaks(unescapedXml)
else else
unescapedXml unescapedXml
@@ -273,7 +273,7 @@ public class OverloadsAnnotationChecker: DeclarationChecker {
if (descriptor is FunctionDescriptor && descriptor.getModality() == Modality.ABSTRACT) { if (descriptor is FunctionDescriptor && descriptor.getModality() == Modality.ABSTRACT) {
diagnosticHolder.report(ErrorsJvm.OVERLOADS_ABSTRACT.on(declaration)) diagnosticHolder.report(ErrorsJvm.OVERLOADS_ABSTRACT.on(declaration))
} }
else if ((!descriptor.getVisibility().TEMP_isPublicAPI && descriptor.getVisibility() != Visibilities.INTERNAL) || else if ((!descriptor.getVisibility().isPublicAPI && descriptor.getVisibility() != Visibilities.INTERNAL) ||
DescriptorUtils.isLocal(descriptor)) { DescriptorUtils.isLocal(descriptor)) {
diagnosticHolder.report(ErrorsJvm.OVERLOADS_PRIVATE.on(declaration)) diagnosticHolder.report(ErrorsJvm.OVERLOADS_PRIVATE.on(declaration))
} }
@@ -34,7 +34,7 @@ fun syntheticExtensionVisibility(originalDescriptor: DeclarationDescriptorWithVi
return when (originalVisibility) { return when (originalVisibility) {
Visibilities.PUBLIC -> Visibilities.PUBLIC Visibilities.PUBLIC -> Visibilities.PUBLIC
else -> object : Visibility(originalVisibility.name, originalVisibility.TEMP_isPublicAPI) { else -> object : Visibility(originalVisibility.name, originalVisibility.isPublicAPI) {
override fun isVisible(receiver: ReceiverValue, what: DeclarationDescriptorWithVisibility, from: DeclarationDescriptor) override fun isVisible(receiver: ReceiverValue, what: DeclarationDescriptorWithVisibility, from: DeclarationDescriptor)
= originalVisibility.isVisible(receiver, originalDescriptor, from) = originalVisibility.isVisible(receiver, originalDescriptor, from)
@@ -336,7 +336,7 @@ public class JetFlowInformationProvider {
} }
if (!(instruction instanceof WriteValueInstruction)) return; if (!(instruction instanceof WriteValueInstruction)) return;
WriteValueInstruction writeValueInstruction = (WriteValueInstruction) instruction; WriteValueInstruction writeValueInstruction = (WriteValueInstruction) instruction;
JetElement element = writeValueInstruction.getTEMP_lValue(); JetElement element = writeValueInstruction.getlValue();
boolean error = checkBackingField(ctxt, element); boolean error = checkBackingField(ctxt, element);
if (!(element instanceof JetExpression)) return; if (!(element instanceof JetExpression)) return;
if (!error) { if (!error) {
@@ -50,7 +50,7 @@ public class TailRecursionDetector extends InstructionVisitorWithResult<Boolean>
@Override @Override
public Boolean visitSubroutineExit(@NotNull SubroutineExitInstruction instruction) { public Boolean visitSubroutineExit(@NotNull SubroutineExitInstruction instruction) {
return !instruction.getTEMP_isError() && instruction.getSubroutine() == subroutine; return !instruction.getIsError() && instruction.getSubroutine() == subroutine;
} }
@Override @Override
@@ -89,7 +89,7 @@ public class PseudocodeUtil {
element = ((ReadValueInstruction) instruction).getElement(); element = ((ReadValueInstruction) instruction).getElement();
} }
else if (instruction instanceof WriteValueInstruction) { else if (instruction instanceof WriteValueInstruction) {
element = ((WriteValueInstruction) instruction).getTEMP_lValue(); element = ((WriteValueInstruction) instruction).getlValue();
} }
else if (instruction instanceof VariableDeclarationInstruction) { else if (instruction instanceof VariableDeclarationInstruction) {
element = ((VariableDeclarationInstruction) instruction).getVariableDeclarationElement(); element = ((VariableDeclarationInstruction) instruction).getVariableDeclarationElement();
@@ -91,7 +91,7 @@ public class WriteValueInstruction(
lexicalScope: LexicalScope, lexicalScope: LexicalScope,
target: AccessTarget, target: AccessTarget,
receiverValues: Map<PseudoValue, ReceiverValue>, receiverValues: Map<PseudoValue, ReceiverValue>,
public val TEMP_lValue: JetElement, public val lValue: JetElement,
public val rValue: PseudoValue public val rValue: PseudoValue
) : AccessValueInstruction(assignment, lexicalScope, target, receiverValues) { ) : AccessValueInstruction(assignment, lexicalScope, target, receiverValues) {
override val inputValues: List<PseudoValue> override val inputValues: List<PseudoValue>
@@ -106,10 +106,10 @@ public class WriteValueInstruction(
} }
override fun toString(): String { override fun toString(): String {
val lhs = (TEMP_lValue as? JetNamedDeclaration)?.getName() ?: render(TEMP_lValue) val lhs = (lValue as? JetNamedDeclaration)?.getName() ?: render(lValue)
return "w($lhs|${inputValues.joinToString(", ")})" return "w($lhs|${inputValues.joinToString(", ")})"
} }
override fun createCopy(): InstructionImpl = override fun createCopy(): InstructionImpl =
WriteValueInstruction(element, lexicalScope, target, receiverValues, TEMP_lValue, rValue) WriteValueInstruction(element, lexicalScope, target, receiverValues, lValue, rValue)
} }
@@ -23,7 +23,7 @@ import java.util.*
public class SubroutineExitInstruction( public class SubroutineExitInstruction(
public val subroutine: JetElement, public val subroutine: JetElement,
lexicalScope: LexicalScope, lexicalScope: LexicalScope,
public val TEMP_isError: Boolean public val isError: Boolean
) : InstructionImpl(lexicalScope) { ) : InstructionImpl(lexicalScope) {
private var _sink: SubroutineSinkInstruction? = null private var _sink: SubroutineSinkInstruction? = null
@@ -44,8 +44,8 @@ public class SubroutineExitInstruction(
return visitor.visitSubroutineExit(this) return visitor.visitSubroutineExit(this)
} }
override fun toString(): String = if (TEMP_isError) "<ERROR>" else "<END>" override fun toString(): String = if (isError) "<ERROR>" else "<END>"
override fun createCopy(): InstructionImpl = override fun createCopy(): InstructionImpl =
SubroutineExitInstruction(subroutine, lexicalScope, TEMP_isError) SubroutineExitInstruction(subroutine, lexicalScope, isError)
} }
@@ -110,7 +110,7 @@ public class BodyResolver {
// SCRIPT: resolve script bodies // SCRIPT: resolve script bodies
scriptBodyResolverResolver.resolveScriptBodies(c); scriptBodyResolverResolver.resolveScriptBodies(c);
if (!c.getTopDownAnalysisMode().getTEMP_isLocalDeclarations()) { if (!c.getTopDownAnalysisMode().getIsLocalDeclarations()) {
computeDeferredTypes(); computeDeferredTypes();
} }
} }
@@ -732,7 +732,7 @@ public class BodyResolver {
LexicalScope scope = c.getDeclaringScope(declaration); LexicalScope scope = c.getDeclaringScope(declaration);
assert scope != null : "Scope is null: " + PsiUtilPackage.getElementTextWithContext(declaration); assert scope != null : "Scope is null: " + PsiUtilPackage.getElementTextWithContext(declaration);
if (!c.getTopDownAnalysisMode().getTEMP_isLocalDeclarations() && !(bodyResolveCache instanceof BodyResolveCache.ThrowException) && if (!c.getTopDownAnalysisMode().getIsLocalDeclarations() && !(bodyResolveCache instanceof BodyResolveCache.ThrowException) &&
expressionTypingServices.getStatementFilter() != StatementFilter.NONE) { expressionTypingServices.getStatementFilter() != StatementFilter.NONE) {
bodyResolveCache.resolveFunctionBody(declaration).addOwnDataTo(trace, true); bodyResolveCache.resolveFunctionBody(declaration).addOwnDataTo(trace, true);
} }
@@ -74,7 +74,7 @@ public class ControlFlowAnalyzer {
// A pseudocode of class/object initialization corresponds to a class/object // A pseudocode of class/object initialization corresponds to a class/object
// or initialization of properties corresponds to a package declared in a file // or initialization of properties corresponds to a package declared in a file
JetFlowInformationProvider flowInformationProvider = new JetFlowInformationProvider((JetElement) declarationContainer, trace); JetFlowInformationProvider flowInformationProvider = new JetFlowInformationProvider((JetElement) declarationContainer, trace);
if (c.getTopDownAnalysisMode().getTEMP_isLocalDeclarations()) { if (c.getTopDownAnalysisMode().getIsLocalDeclarations()) {
flowInformationProvider.checkForLocalClassOrObjectMode(); flowInformationProvider.checkForLocalClassOrObjectMode();
return; return;
} }
@@ -95,7 +95,7 @@ public class ControlFlowAnalyzer {
private void checkFunction(@NotNull BodiesResolveContext c, @NotNull JetDeclarationWithBody function, @Nullable JetType expectedReturnType) { private void checkFunction(@NotNull BodiesResolveContext c, @NotNull JetDeclarationWithBody function, @Nullable JetType expectedReturnType) {
if (!function.hasBody()) return; if (!function.hasBody()) return;
JetFlowInformationProvider flowInformationProvider = new JetFlowInformationProvider(function, trace); JetFlowInformationProvider flowInformationProvider = new JetFlowInformationProvider(function, trace);
if (c.getTopDownAnalysisMode().getTEMP_isLocalDeclarations()) { if (c.getTopDownAnalysisMode().getIsLocalDeclarations()) {
flowInformationProvider.checkForLocalClassOrObjectMode(); flowInformationProvider.checkForLocalClassOrObjectMode();
return; return;
} }
@@ -16,7 +16,7 @@
package org.jetbrains.kotlin.resolve package org.jetbrains.kotlin.resolve
public enum class TopDownAnalysisMode(public val TEMP_isLocalDeclarations: Boolean) { public enum class TopDownAnalysisMode(public val isLocalDeclarations: Boolean) {
LocalDeclarations(true), LocalDeclarations(true),
TopLevelDeclarations(false) TopLevelDeclarations(false)
} }
@@ -385,7 +385,7 @@ public class CallExpressionResolver {
} }
CompileTimeConstant<?> value = constantExpressionEvaluator.evaluateExpression(expression, context.trace, context.expectedType); CompileTimeConstant<?> value = constantExpressionEvaluator.evaluateExpression(expression, context.trace, context.expectedType);
if (value != null && value.getTEMP_isPure()) { if (value != null && value.getIsPure()) {
return dataFlowAnalyzer.createCompileTimeConstantTypeInfo(value, expression, context); return dataFlowAnalyzer.createCompileTimeConstantTypeInfo(value, expression, context);
} }
@@ -43,7 +43,7 @@ import java.util.Set;
import static org.jetbrains.kotlin.diagnostics.Errors.NON_LOCAL_RETURN_NOT_ALLOWED; import static org.jetbrains.kotlin.diagnostics.Errors.NON_LOCAL_RETURN_NOT_ALLOWED;
import static org.jetbrains.kotlin.diagnostics.Errors.USAGE_IS_NOT_INLINABLE; import static org.jetbrains.kotlin.diagnostics.Errors.USAGE_IS_NOT_INLINABLE;
import static org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilPackage.getTEMP_isEffectivelyPublicApi; import static org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilPackage.getIsEffectivelyPublicApi;
import static org.jetbrains.kotlin.resolve.inline.InlineUtil.allowsNonLocalReturns; import static org.jetbrains.kotlin.resolve.inline.InlineUtil.allowsNonLocalReturns;
import static org.jetbrains.kotlin.resolve.inline.InlineUtil.checkNonLocalReturnUsage; import static org.jetbrains.kotlin.resolve.inline.InlineUtil.checkNonLocalReturnUsage;
@@ -55,7 +55,7 @@ class InlineChecker implements CallChecker {
public InlineChecker(@NotNull SimpleFunctionDescriptor descriptor) { public InlineChecker(@NotNull SimpleFunctionDescriptor descriptor) {
assert InlineUtil.isInline(descriptor) : "This extension should be created only for inline functions: " + descriptor; assert InlineUtil.isInline(descriptor) : "This extension should be created only for inline functions: " + descriptor;
this.descriptor = descriptor; this.descriptor = descriptor;
this.isEffectivelyPublicApiFunction = getTEMP_isEffectivelyPublicApi(descriptor); this.isEffectivelyPublicApiFunction = getIsEffectivelyPublicApi(descriptor);
for (ValueParameterDescriptor param : descriptor.getValueParameters()) { for (ValueParameterDescriptor param : descriptor.getValueParameters()) {
if (isInlinableParameter(param)) { if (isInlinableParameter(param)) {
@@ -236,7 +236,7 @@ class InlineChecker implements CallChecker {
} }
private void checkVisibility(@NotNull CallableDescriptor declarationDescriptor, @NotNull JetElement expression, @NotNull BasicCallResolutionContext context){ private void checkVisibility(@NotNull CallableDescriptor declarationDescriptor, @NotNull JetElement expression, @NotNull BasicCallResolutionContext context){
boolean declarationDescriptorIsPublicApi = getTEMP_isEffectivelyPublicApi(declarationDescriptor) || isDefinedInInlineFunction(declarationDescriptor); boolean declarationDescriptorIsPublicApi = getIsEffectivelyPublicApi(declarationDescriptor) || isDefinedInInlineFunction(declarationDescriptor);
if (isEffectivelyPublicApiFunction && !declarationDescriptorIsPublicApi && declarationDescriptor.getVisibility() != Visibilities.LOCAL) { if (isEffectivelyPublicApiFunction && !declarationDescriptorIsPublicApi && declarationDescriptor.getVisibility() != Visibilities.LOCAL) {
context.trace.report(Errors.INVISIBLE_MEMBER_FROM_INLINE.on(expression, declarationDescriptor, descriptor)); context.trace.report(Errors.INVISIBLE_MEMBER_FROM_INLINE.on(expression, declarationDescriptor, descriptor));
} }
@@ -443,7 +443,7 @@ private class ConstantExpressionEvaluatorVisitor(
private fun canBeUsedInAnnotation(expression: JetExpression) = ConstantExpressionEvaluator.getConstant(expression, trace.getBindingContext())?.canBeUsedInAnnotations ?: false private fun canBeUsedInAnnotation(expression: JetExpression) = ConstantExpressionEvaluator.getConstant(expression, trace.getBindingContext())?.canBeUsedInAnnotations ?: false
private fun isPureConstant(expression: JetExpression) = ConstantExpressionEvaluator.getConstant(expression, trace.getBindingContext())?.TEMP_isPure ?: false private fun isPureConstant(expression: JetExpression) = ConstantExpressionEvaluator.getConstant(expression, trace.getBindingContext())?.isPure ?: false
private fun evaluateUnaryAndCheck(receiver: OperationArgument, name: String, callExpression: JetExpression): Any? { private fun evaluateUnaryAndCheck(receiver: OperationArgument, name: String, callExpression: JetExpression): Any? {
val functions = unaryOperations[UnaryOperationKey(receiver.ctcType, name)] val functions = unaryOperations[UnaryOperationKey(receiver.ctcType, name)]
@@ -52,7 +52,7 @@ public abstract class AbstractEvaluateExpressionTest : AbstractAnnotationDescrip
fun doIsPureTest(path: String) { fun doIsPureTest(path: String) {
doTest(path) { doTest(path) {
property, context -> property, context ->
evaluateInitializer(context, property)?.TEMP_isPure.toString() evaluateInitializer(context, property)?.isPure.toString()
} }
} }
@@ -21,7 +21,7 @@ import javax.xml.bind.DatatypeConverter.parseBase64Binary
import javax.xml.bind.DatatypeConverter.printBase64Binary import javax.xml.bind.DatatypeConverter.printBase64Binary
public class KotlinJavascriptMetadata(public val abiVersion: Int, public val moduleName: String, public val body: ByteArray) { public class KotlinJavascriptMetadata(public val abiVersion: Int, public val moduleName: String, public val body: ByteArray) {
public val TEMP_isAbiVersionCompatible: Boolean = KotlinJavascriptMetadataUtils.isAbiVersionCompatible(abiVersion) public val isAbiVersionCompatible: Boolean = KotlinJavascriptMetadataUtils.isAbiVersionCompatible(abiVersion)
} }
public object KotlinJavascriptMetadataUtils { public object KotlinJavascriptMetadataUtils {
@@ -70,7 +70,7 @@ fun LazyJavaResolverContext.resolveKotlinBinaryClass(kotlinClass: KotlinJvmBinar
val header = kotlinClass.classHeader val header = kotlinClass.classHeader
return when { return when {
!header.TEMP_isCompatibleAbiVersion -> { !header.isCompatibleAbiVersion -> {
components.errorReporter.reportIncompatibleAbiVersion(kotlinClass.classId, kotlinClass.location, header.version) components.errorReporter.reportIncompatibleAbiVersion(kotlinClass.classId, kotlinClass.location, header.version)
KotlinClassLookupResult.NotFound KotlinClassLookupResult.NotFound
} }
@@ -134,7 +134,7 @@ class LazyJavaTypeResolver(
private fun mapKotlinClass(fqName: FqName): ClassDescriptor? { private fun mapKotlinClass(fqName: FqName): ClassDescriptor? {
if (attr.isForAnnotationParameter && fqName == JAVA_LANG_CLASS_FQ_NAME) { if (attr.isForAnnotationParameter && fqName == JAVA_LANG_CLASS_FQ_NAME) {
return c.reflectionTypes.TEMP_kClass return c.reflectionTypes.kClass
} }
val javaToKotlin = JavaToKotlinClassMap.INSTANCE val javaToKotlin = JavaToKotlinClassMap.INSTANCE
@@ -112,7 +112,7 @@ public final class DeserializedDescriptorResolver {
@Nullable @Nullable
public String[] readData(@NotNull KotlinJvmBinaryClass kotlinClass, @NotNull Set<KotlinClassHeader.Kind> expectedKinds) { public String[] readData(@NotNull KotlinJvmBinaryClass kotlinClass, @NotNull Set<KotlinClassHeader.Kind> expectedKinds) {
KotlinClassHeader header = kotlinClass.getClassHeader(); KotlinClassHeader header = kotlinClass.getClassHeader();
if (!header.getTEMP_isCompatibleAbiVersion()) { if (!header.getIsCompatibleAbiVersion()) {
errorReporter.reportIncompatibleAbiVersion(kotlinClass.getClassId(), kotlinClass.getLocation(), header.getVersion()); errorReporter.reportIncompatibleAbiVersion(kotlinClass.getClassId(), kotlinClass.getLocation(), header.getVersion());
} }
else if (expectedKinds.contains(header.getKind())) { else if (expectedKinds.contains(header.getKind())) {
@@ -31,7 +31,7 @@ public class KotlinClassHeader(
public val filePartClassNames: Array<String>?, public val filePartClassNames: Array<String>?,
public val multifileClassName: String? public val multifileClassName: String?
) { ) {
public val TEMP_isCompatibleAbiVersion: Boolean get() = AbiVersionUtil.isAbiVersionCompatible(version) public val isCompatibleAbiVersion: Boolean get() = AbiVersionUtil.isAbiVersionCompatible(version)
public enum class Kind { public enum class Kind {
CLASS, CLASS,
@@ -49,9 +49,9 @@ public class KotlinClassHeader(
"version=$version" "version=$version"
} }
public fun KotlinClassHeader.isCompatibleClassKind(): Boolean = TEMP_isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.CLASS public fun KotlinClassHeader.isCompatibleClassKind(): Boolean = isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.CLASS
public fun KotlinClassHeader.isCompatiblePackageFacadeKind(): Boolean = TEMP_isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.PACKAGE_FACADE public fun KotlinClassHeader.isCompatiblePackageFacadeKind(): Boolean = isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.PACKAGE_FACADE
public fun KotlinClassHeader.isCompatibleFileFacadeKind(): Boolean = TEMP_isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.FILE_FACADE public fun KotlinClassHeader.isCompatibleFileFacadeKind(): Boolean = isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.FILE_FACADE
public fun KotlinClassHeader.isCompatibleMultifileClassKind(): Boolean = TEMP_isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.MULTIFILE_CLASS public fun KotlinClassHeader.isCompatibleMultifileClassKind(): Boolean = isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.MULTIFILE_CLASS
public fun KotlinClassHeader.isCompatibleMultifileClassPartKind(): Boolean = TEMP_isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.MULTIFILE_CLASS_PART public fun KotlinClassHeader.isCompatibleMultifileClassPartKind(): Boolean = isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.MULTIFILE_CLASS_PART
public fun KotlinClassHeader.isCompatibleSyntheticClassKind(): Boolean = TEMP_isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.SYNTHETIC_CLASS public fun KotlinClassHeader.isCompatibleSyntheticClassKind(): Boolean = isCompatibleAbiVersion && kind == KotlinClassHeader.Kind.SYNTHETIC_CLASS
@@ -49,11 +49,7 @@ public class ReflectionTypes(private val module: ModuleDescriptor) {
public fun getKFunction(n: Int): ClassDescriptor = find("KFunction$n") public fun getKFunction(n: Int): ClassDescriptor = find("KFunction$n")
// public val TEMP_kClass: ClassDescriptor by ClassLookup public val kClass: ClassDescriptor by ClassLookup
//TODO: temporary
public val TEMP_kClass: ClassDescriptor
get() = find("KClass")
public val kProperty0: ClassDescriptor by ClassLookup public val kProperty0: ClassDescriptor by ClassLookup
public val kProperty1: ClassDescriptor by ClassLookup public val kProperty1: ClassDescriptor by ClassLookup
public val kProperty2: ClassDescriptor by ClassLookup public val kProperty2: ClassDescriptor by ClassLookup
@@ -61,7 +57,7 @@ public class ReflectionTypes(private val module: ModuleDescriptor) {
public val kMutableProperty1: ClassDescriptor by ClassLookup public val kMutableProperty1: ClassDescriptor by ClassLookup
public fun getKClassType(annotations: Annotations, type: JetType): JetType { public fun getKClassType(annotations: Annotations, type: JetType): JetType {
val descriptor = TEMP_kClass val descriptor = kClass
if (ErrorUtils.isError(descriptor)) { if (ErrorUtils.isError(descriptor)) {
return descriptor.getDefaultType() return descriptor.getDefaultType()
} }
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue
public abstract class Visibility protected constructor( public abstract class Visibility protected constructor(
public val name: String, public val name: String,
public val TEMP_isPublicAPI: Boolean public val isPublicAPI: Boolean
) { ) {
public abstract fun isVisible(receiver: ReceiverValue, what: DeclarationDescriptorWithVisibility, from: DeclarationDescriptor): Boolean public abstract fun isVisible(receiver: ReceiverValue, what: DeclarationDescriptorWithVisibility, from: DeclarationDescriptor): Boolean
@@ -28,7 +28,6 @@ import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.FqNameUnsafe import org.jetbrains.kotlin.name.FqNameUnsafe
import org.jetbrains.kotlin.resolve.DescriptorUtils import org.jetbrains.kotlin.resolve.DescriptorUtils
import org.jetbrains.kotlin.resolve.constants.BooleanValue
import org.jetbrains.kotlin.resolve.constants.EnumValue import org.jetbrains.kotlin.resolve.constants.EnumValue
import org.jetbrains.kotlin.types.JetType import org.jetbrains.kotlin.types.JetType
import org.jetbrains.kotlin.utils.DFS import org.jetbrains.kotlin.utils.DFS
@@ -90,12 +89,12 @@ public val ClassDescriptor.classObjectType: JetType?
return correspondingDescriptor?.getDefaultType() return correspondingDescriptor?.getDefaultType()
} }
public val DeclarationDescriptorWithVisibility.TEMP_isEffectivelyPublicApi: Boolean public val DeclarationDescriptorWithVisibility.isEffectivelyPublicApi: Boolean
get() { get() {
var parent: DeclarationDescriptorWithVisibility? = this var parent: DeclarationDescriptorWithVisibility? = this
while (parent != null) { while (parent != null) {
if (!parent.getVisibility().TEMP_isPublicAPI) return false if (!parent.getVisibility().isPublicAPI) return false
parent = DescriptorUtils.getParentOfType(parent, javaClass<DeclarationDescriptorWithVisibility>()) parent = DescriptorUtils.getParentOfType(parent, javaClass<DeclarationDescriptorWithVisibility>())
} }
@@ -36,7 +36,7 @@ public interface CompileTimeConstant<out T> {
public val usesNonConstValAsConstant: Boolean get() = parameters.usesNonConstValAsConstant public val usesNonConstValAsConstant: Boolean get() = parameters.usesNonConstValAsConstant
public val TEMP_isPure: Boolean get() = parameters.isPure public val isPure: Boolean get() = parameters.isPure
public class Parameters( public class Parameters(
public val canBeUsedInAnnotation: Boolean, public val canBeUsedInAnnotation: Boolean,
@@ -61,7 +61,7 @@ public object JsAnalyzerFacade : AnalyzerFacade<PlatformAnalysisParameters>() {
if (moduleInfo is LibraryInfo && KotlinJavaScriptLibraryDetectionUtil.isKotlinJavaScriptLibrary(moduleInfo.library)) { if (moduleInfo is LibraryInfo && KotlinJavaScriptLibraryDetectionUtil.isKotlinJavaScriptLibrary(moduleInfo.library)) {
val providers = moduleInfo.library.getFiles(OrderRootType.CLASSES) val providers = moduleInfo.library.getFiles(OrderRootType.CLASSES)
.flatMap { KotlinJavascriptMetadataUtils.loadMetadata(PathUtil.getLocalPath(it)!!) } .flatMap { KotlinJavascriptMetadataUtils.loadMetadata(PathUtil.getLocalPath(it)!!) }
.filter { it.TEMP_isAbiVersionCompatible } .filter { it.isAbiVersionCompatible }
.map { KotlinJavascriptSerializationUtil.createPackageFragmentProvider(moduleDescriptor, it.body, moduleContext.storageManager) } .map { KotlinJavascriptSerializationUtil.createPackageFragmentProvider(moduleDescriptor, it.body, moduleContext.storageManager) }
.filterNotNull() .filterNotNull()
@@ -56,7 +56,7 @@ public fun isKotlinWithCompatibleAbiVersion(file: VirtualFile): Boolean {
if (!isKotlinJvmCompiledFile(file)) return false if (!isKotlinJvmCompiledFile(file)) return false
val header = KotlinBinaryClassCache.getKotlinBinaryClass(file)?.getClassHeader() val header = KotlinBinaryClassCache.getKotlinBinaryClass(file)?.getClassHeader()
return header != null && header.TEMP_isCompatibleAbiVersion return header != null && header.isCompatibleAbiVersion
} }
/** /**
@@ -55,7 +55,7 @@ public open class KotlinClsStubBuilder : ClsStubBuilder() {
val header = kotlinBinaryClass.getClassHeader() val header = kotlinBinaryClass.getClassHeader()
val classId = kotlinBinaryClass.getClassId() val classId = kotlinBinaryClass.getClassId()
val packageFqName = classId.getPackageFqName() val packageFqName = classId.getPackageFqName()
if (!header.TEMP_isCompatibleAbiVersion) { if (!header.isCompatibleAbiVersion) {
return createIncompatibleAbiVersionFileStub() return createIncompatibleAbiVersionFileStub()
} }
@@ -60,7 +60,7 @@ public fun buildDecompiledText(
val packageFqName = classId.getPackageFqName() val packageFqName = classId.getPackageFqName()
return when { return when {
!classHeader.TEMP_isCompatibleAbiVersion -> { !classHeader.isCompatibleAbiVersion -> {
DecompiledText( DecompiledText(
INCOMPATIBLE_ABI_VERSION_COMMENT INCOMPATIBLE_ABI_VERSION_COMMENT
.replace(CURRENT_ABI_VERSION_MARKER, JvmAbi.VERSION.toString()) .replace(CURRENT_ABI_VERSION_MARKER, JvmAbi.VERSION.toString())
@@ -78,7 +78,7 @@ public fun buildDecompiledText(
buildDecompiledText(packageFqName, partMembers) buildDecompiledText(packageFqName, partMembers)
} }
else -> else ->
throw UnsupportedOperationException("Unknown header kind: ${classHeader.kind} ${classHeader.TEMP_isCompatibleAbiVersion}") throw UnsupportedOperationException("Unknown header kind: ${classHeader.kind} ${classHeader.isCompatibleAbiVersion}")
} }
} }
@@ -80,7 +80,7 @@ public object KotlinClassFileIndex : KotlinFileIndexBase<KotlinClassFileIndex>(K
private val INDEXER = indexer() { file -> private val INDEXER = indexer() { file ->
val kotlinClass = KotlinBinaryClassCache.getKotlinBinaryClass(file) val kotlinClass = KotlinBinaryClassCache.getKotlinBinaryClass(file)
if (kotlinClass != null && kotlinClass.classHeader.TEMP_isCompatibleAbiVersion) kotlinClass.classId.asSingleFqName() else null if (kotlinClass != null && kotlinClass.classHeader.isCompatibleAbiVersion) kotlinClass.classId.asSingleFqName() else null
} }
} }
@@ -130,7 +130,7 @@ public class KotlinJavaScriptLibraryManager private constructor(private var myPr
assert(path != null) { "expected not-null path for ${clsRootFile.name}" } assert(path != null) { "expected not-null path for ${clsRootFile.name}" }
val metadataList = KotlinJavascriptMetadataUtils.loadMetadata(path!!) val metadataList = KotlinJavascriptMetadataUtils.loadMetadata(path!!)
if (metadataList.filter { !it.TEMP_isAbiVersionCompatible }.isNotEmpty()) continue if (metadataList.filter { !it.isAbiVersionCompatible }.isNotEmpty()) continue
VfsUtil.findFileByIoFile(File(path), true)?.let { rootFiles.add(it) } VfsUtil.findFileByIoFile(File(path), true)?.let { rootFiles.add(it) }
val classRoot = KotlinJavaScriptMetaFileSystem.getInstance().refreshAndFindFileByPath("$path!/") val classRoot = KotlinJavaScriptMetaFileSystem.getInstance().refreshAndFindFileByPath("$path!/")
@@ -189,7 +189,7 @@ public open class JetChangeInfo(
public fun getNewSignature(inheritedCallable: JetCallableDefinitionUsage<PsiElement>): String { public fun getNewSignature(inheritedCallable: JetCallableDefinitionUsage<PsiElement>): String {
val buffer = StringBuilder() val buffer = StringBuilder()
val defaultVisibility = if (kind.TEMP_isConstructor) Visibilities.PUBLIC else Visibilities.DEFAULT_VISIBILITY val defaultVisibility = if (kind.isConstructor) Visibilities.PUBLIC else Visibilities.DEFAULT_VISIBILITY
if (kind == Kind.PRIMARY_CONSTRUCTOR) { if (kind == Kind.PRIMARY_CONSTRUCTOR) {
buffer.append(name) buffer.append(name)
@@ -32,15 +32,13 @@ import com.intellij.usageView.UsageViewDescriptor
import com.intellij.util.containers.MultiMap import com.intellij.util.containers.MultiMap
import org.jetbrains.kotlin.idea.refactoring.changeSignature.usages.JetUsageInfo import org.jetbrains.kotlin.idea.refactoring.changeSignature.usages.JetUsageInfo
import org.jetbrains.kotlin.idea.refactoring.changeSignature.usages.KotlinWrapperForJavaUsageInfos import org.jetbrains.kotlin.idea.refactoring.changeSignature.usages.KotlinWrapperForJavaUsageInfos
import java.util.ArrayList import java.util.*
import java.util.Arrays
import java.util.LinkedHashSet
public class JetChangeSignatureProcessor(project: Project, public class JetChangeSignatureProcessor(project: Project,
changeInfo: JetChangeInfo, changeInfo: JetChangeInfo,
private val commandName: String) : ChangeSignatureProcessorBase(project, changeInfo) { private val commandName: String) : ChangeSignatureProcessorBase(project, changeInfo) {
override fun createUsageViewDescriptor(usages: Array<UsageInfo>): UsageViewDescriptor { override fun createUsageViewDescriptor(usages: Array<UsageInfo>): UsageViewDescriptor {
val subject = if (getChangeInfo().kind.TEMP_isConstructor) "constructor" else "function" val subject = if (getChangeInfo().kind.isConstructor) "constructor" else "function"
return JetUsagesViewDescriptor(myChangeInfo.getMethod(), RefactoringBundle.message("0.to.change.signature", subject)) return JetUsagesViewDescriptor(myChangeInfo.getMethod(), RefactoringBundle.message("0.to.change.signature", subject))
} }
@@ -619,7 +619,7 @@ public class JetChangeSignatureUsageProcessor implements ChangeSignatureUsagePro
JetScope callableScope = org.jetbrains.kotlin.idea.refactoring.RefactoringPackage.getContainingScope(oldDescriptor, bindingContext); JetScope callableScope = org.jetbrains.kotlin.idea.refactoring.RefactoringPackage.getContainingScope(oldDescriptor, bindingContext);
JetMethodDescriptor.Kind kind = ChangeSignaturePackage.getKind(changeInfo); JetMethodDescriptor.Kind kind = ChangeSignaturePackage.getKind(changeInfo);
if (!kind.getTEMP_isConstructor() && callableScope != null && !info.getNewName().isEmpty()) { if (!kind.getIsConstructor() && callableScope != null && !info.getNewName().isEmpty()) {
Name newName = Name.identifier(info.getNewName()); Name newName = Name.identifier(info.getNewName());
Collection<? extends CallableDescriptor> conflicts = oldDescriptor instanceof FunctionDescriptor Collection<? extends CallableDescriptor> conflicts = oldDescriptor instanceof FunctionDescriptor
? ScopeUtils.getAllAccessibleFunctions(callableScope, newName) ? ScopeUtils.getAllAccessibleFunctions(callableScope, newName)
@@ -703,7 +703,7 @@ public class JetChangeSignatureUsageProcessor implements ChangeSignatureUsagePro
} }
); );
for (JetParameterInfo parameterInfo : changeInfo.getNonReceiverParameters()) { for (JetParameterInfo parameterInfo : changeInfo.getNonReceiverParameters()) {
if (!(parameterInfo.getTEMP_isNewParameter())) continue; if (!(parameterInfo.getIsNewParameter())) continue;
String name = parameterInfo.getName(); String name = parameterInfo.getName();
JetParameter parameter = existingParameters.get(name); JetParameter parameter = existingParameters.get(name);
@@ -26,7 +26,7 @@ import org.jetbrains.kotlin.idea.refactoring.changeSignature.usages.JetCallableD
import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers
public interface JetMethodDescriptor : MethodDescriptor<JetParameterInfo, Visibility> { public interface JetMethodDescriptor : MethodDescriptor<JetParameterInfo, Visibility> {
enum class Kind(val TEMP_isConstructor: Boolean) { enum class Kind(val isConstructor: Boolean) {
FUNCTION(false), FUNCTION(false),
PRIMARY_CONSTRUCTOR(true), PRIMARY_CONSTRUCTOR(true),
SECONDARY_CONSTRUCTOR(true) SECONDARY_CONSTRUCTOR(true)
@@ -130,7 +130,7 @@ public class JetParameterInfo(
override fun getOldIndex(): Int = originalIndex override fun getOldIndex(): Int = originalIndex
public val TEMP_isNewParameter: Boolean public val isNewParameter: Boolean
get() = originalIndex == -1 get() = originalIndex == -1
override fun getDefaultValue(): String? = null override fun getDefaultValue(): String? = null
@@ -143,7 +143,7 @@ public class JetParameterInfo(
override fun getTypeText(): String = currentTypeText override fun getTypeText(): String = currentTypeText
public val TEMP_isTypeChanged: Boolean get() = getOldTypeText() != currentTypeText public val isTypeChanged: Boolean get() = getOldTypeText() != currentTypeText
override fun isUseAnySingleVariable(): Boolean = false override fun isUseAnySingleVariable(): Boolean = false
@@ -156,7 +156,7 @@ public class JetChangeSignatureDialog(
// Forbid receiver propagation // Forbid receiver propagation
override fun mayPropagateParameters() = override fun mayPropagateParameters() =
getParameters().any { it.TEMP_isNewParameter && it != parametersTableModel.getReceiver() } getParameters().any { it.isNewParameter && it != parametersTableModel.getReceiver() }
override fun getTableEditor(table: JTable, item: ParameterTableModelItemBase<JetParameterInfo>): JBTableRowEditor? { override fun getTableEditor(table: JTable, item: ParameterTableModelItemBase<JetParameterInfo>): JBTableRowEditor? {
return object : JBTableRowEditor() { return object : JBTableRowEditor() {
@@ -168,7 +168,7 @@ public class JetChangeSignatureDialog(
} }
private fun isDefaultColumnEnabled() = private fun isDefaultColumnEnabled() =
item.parameter.TEMP_isNewParameter && item.parameter != myMethod.receiver item.parameter.isNewParameter && item.parameter != myMethod.receiver
override fun prepareEditor(table: JTable, row: Int) { override fun prepareEditor(table: JTable, row: Int) {
setLayout(BoxLayout(this, BoxLayout.X_AXIS)) setLayout(BoxLayout(this, BoxLayout.X_AXIS))
@@ -371,7 +371,7 @@ public class JetChangeSignatureDialog(
public fun getMethodDescriptor(): JetMethodDescriptor = myMethod public fun getMethodDescriptor(): JetMethodDescriptor = myMethod
override fun getSelectedIdx(): Int { override fun getSelectedIdx(): Int {
return myMethod.getParameters().withIndex().firstOrNull { it.value.TEMP_isNewParameter }?.index return myMethod.getParameters().withIndex().firstOrNull { it.value.isNewParameter }?.index
?: super.getSelectedIdx() ?: super.getSelectedIdx()
} }
@@ -52,7 +52,7 @@ public class JetPrimaryConstructorParameterTableModel extends JetCallableParamet
@Override @Override
public boolean isCellEditable(ParameterTableModelItemBase<JetParameterInfo> item) { public boolean isCellEditable(ParameterTableModelItemBase<JetParameterInfo> item) {
return !item.isEllipsisType() && item.parameter.getTEMP_isNewParameter(); return !item.isEllipsisType() && item.parameter.getIsNewParameter();
} }
@Override @Override
@@ -376,7 +376,7 @@ public class JetCallableDefinitionUsage<T extends PsiElement> extends JetUsageIn
parameter.addBefore(psiFactory.createWhiteSpace(), firstChild); parameter.addBefore(psiFactory.createWhiteSpace(), firstChild);
} }
if (parameterInfo.getTEMP_isTypeChanged() && parameter.getTypeReference() != null) { if (parameterInfo.getIsTypeChanged() && parameter.getTypeReference() != null) {
String renderedType = parameterInfo.renderType(parameterIndex, this); String renderedType = parameterInfo.renderType(parameterIndex, this);
parameter.setTypeReference(psiFactory.createType(renderedType)); parameter.setTypeReference(psiFactory.createType(renderedType));
} }
@@ -38,7 +38,7 @@ public class KotlinCallerUsage(element: JetNamedDeclaration): JetUsageInfo<JetNa
val psiFactory = JetPsiFactory(getProject()) val psiFactory = JetPsiFactory(getProject())
changeInfo.getNonReceiverParameters() changeInfo.getNonReceiverParameters()
.withIndex() .withIndex()
.filter { it.value.TEMP_isNewParameter } .filter { it.value.isNewParameter }
.forEach { .forEach {
val parameterText = it.value.getDeclarationSignature(it.index, changeInfo.methodDescriptor.originalPrimaryCallable) val parameterText = it.value.getDeclarationSignature(it.index, changeInfo.methodDescriptor.originalPrimaryCallable)
parameterList parameterList
@@ -56,7 +56,7 @@ public class KotlinCallerCallUsage(element: JetCallElement): JetUsageInfo<JetCal
val psiFactory = JetPsiFactory(getProject()) val psiFactory = JetPsiFactory(getProject())
val isNamedCall = argumentList.getArguments().any { it.getArgumentName() != null } val isNamedCall = argumentList.getArguments().any { it.getArgumentName() != null }
changeInfo.getNonReceiverParameters() changeInfo.getNonReceiverParameters()
.filter { it.TEMP_isNewParameter } .filter { it.isNewParameter }
.forEach { .forEach {
val parameterName = it.getName() val parameterName = it.getName()
val argumentExpression = if (element.isInsideOfCallerBody(allUsages)) { val argumentExpression = if (element.isInsideOfCallerBody(allUsages)) {
@@ -148,7 +148,7 @@ public abstract class Config {
} }
private ModuleDescriptorImpl createModuleDescriptor(KotlinJavascriptMetadata metadata) { private ModuleDescriptorImpl createModuleDescriptor(KotlinJavascriptMetadata metadata) {
assert metadata.getTEMP_isAbiVersionCompatible() : assert metadata.getIsAbiVersionCompatible() :
"expected abi version " + KotlinJavascriptMetadataUtils.ABI_VERSION + ", but metadata.abiVersion = " + metadata.getAbiVersion(); "expected abi version " + KotlinJavascriptMetadataUtils.ABI_VERSION + ", but metadata.abiVersion = " + metadata.getAbiVersion();
ModuleDescriptorImpl moduleDescriptor = new ModuleDescriptorImpl( ModuleDescriptorImpl moduleDescriptor = new ModuleDescriptorImpl(
@@ -168,7 +168,7 @@ public class LibrarySourcesConfig extends Config {
} }
for (KotlinJavascriptMetadata metadata : metadataList) { for (KotlinJavascriptMetadata metadata : metadataList) {
if (!metadata.getTEMP_isAbiVersionCompatible()) { if (!metadata.getIsAbiVersionCompatible()) {
report.invoke("File '" + path + "' was compiled with an incompatible version of Kotlin. Its ABI version is " + metadata.getAbiVersion() + ", expected ABI version is " + KotlinJavascriptMetadataUtils.ABI_VERSION); report.invoke("File '" + path + "' was compiled with an incompatible version of Kotlin. Its ABI version is " + metadata.getAbiVersion() + ", expected ABI version is " + KotlinJavascriptMetadataUtils.ABI_VERSION);
return true; return true;
} }
@@ -42,7 +42,7 @@ import static org.jetbrains.kotlin.js.translate.utils.BindingUtils.getFunctionDe
import static org.jetbrains.kotlin.js.translate.utils.ErrorReportingUtils.message; import static org.jetbrains.kotlin.js.translate.utils.ErrorReportingUtils.message;
import static org.jetbrains.kotlin.js.translate.utils.FunctionBodyTranslator.translateFunctionBody; import static org.jetbrains.kotlin.js.translate.utils.FunctionBodyTranslator.translateFunctionBody;
import static org.jetbrains.kotlin.js.translate.utils.JsAstUtils.setParameters; import static org.jetbrains.kotlin.js.translate.utils.JsAstUtils.setParameters;
import static org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilPackage.getTEMP_isEffectivelyPublicApi; import static org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilPackage.getIsEffectivelyPublicApi;
public final class FunctionTranslator extends AbstractTranslator { public final class FunctionTranslator extends AbstractTranslator {
@NotNull @NotNull
@@ -100,7 +100,7 @@ public final class FunctionTranslator extends AbstractTranslator {
JsName functionName = context().getNameForDescriptor(descriptor); JsName functionName = context().getNameForDescriptor(descriptor);
generateFunctionObject(); generateFunctionObject();
if (shouldBeInlined(descriptor) && getTEMP_isEffectivelyPublicApi(descriptor)) { if (shouldBeInlined(descriptor) && getIsEffectivelyPublicApi(descriptor)) {
InlineMetadata metadata = InlineMetadata.compose(functionObject, descriptor); InlineMetadata metadata = InlineMetadata.compose(functionObject, descriptor);
return new JsPropertyInitializer(functionName.makeRef(), metadata.getFunctionWithMetadata()); return new JsPropertyInitializer(functionName.makeRef(), metadata.getFunctionWithMetadata());
} }
@@ -82,7 +82,7 @@ public class ManglingUtils {
DeclarationDescriptor containingDeclaration = descriptor.getContainingDeclaration(); DeclarationDescriptor containingDeclaration = descriptor.getContainingDeclaration();
if (containingDeclaration instanceof PackageFragmentDescriptor) { if (containingDeclaration instanceof PackageFragmentDescriptor) {
return descriptor.getVisibility().getTEMP_isPublicAPI(); return descriptor.getVisibility().getIsPublicAPI();
} }
else if (containingDeclaration instanceof ClassDescriptor) { else if (containingDeclaration instanceof ClassDescriptor) {
ClassDescriptor classDescriptor = (ClassDescriptor) containingDeclaration; ClassDescriptor classDescriptor = (ClassDescriptor) containingDeclaration;
@@ -98,7 +98,7 @@ public class ManglingUtils {
} }
// Don't use stable mangling when it inside a non-public API declaration. // Don't use stable mangling when it inside a non-public API declaration.
if (!classDescriptor.getVisibility().getTEMP_isPublicAPI()) { if (!classDescriptor.getVisibility().getIsPublicAPI()) {
return false; return false;
} }