Replace "jet" with KotlinBuiltIns.FQ_NAME
#KT-2896 Fixed
This commit is contained in:
@@ -1189,7 +1189,7 @@ public class ExpressionCodegen extends JetVisitor<StackValue, StackValue> implem
|
||||
}
|
||||
else {
|
||||
Type type = expressionType(expression);
|
||||
Type targetType = type.equals(JET_UNIT_TYPE) ? type : OBJECT_TYPE;
|
||||
Type targetType = type.equals(UNIT_TYPE) ? type : OBJECT_TYPE;
|
||||
|
||||
gen(expression, targetType);
|
||||
|
||||
@@ -3319,7 +3319,7 @@ public class ExpressionCodegen extends JetVisitor<StackValue, StackValue> implem
|
||||
v.iconst(0);
|
||||
v.store(indexIndex, Type.INT_TYPE);
|
||||
|
||||
gen(args.get(1), JET_FUNCTION1_TYPE);
|
||||
gen(args.get(1), FUNCTION1_TYPE);
|
||||
|
||||
Label begin = new Label();
|
||||
Label end = new Label();
|
||||
@@ -3331,7 +3331,7 @@ public class ExpressionCodegen extends JetVisitor<StackValue, StackValue> implem
|
||||
v.dup2();
|
||||
v.load(indexIndex, Type.INT_TYPE);
|
||||
v.invokestatic("java/lang/Integer", "valueOf", "(I)Ljava/lang/Integer;");
|
||||
v.invokeinterface("jet/Function1", "invoke", "(Ljava/lang/Object;)Ljava/lang/Object;");
|
||||
v.invokeinterface(FUNCTION1_TYPE.getInternalName(), "invoke", "(Ljava/lang/Object;)Ljava/lang/Object;");
|
||||
v.load(indexIndex, Type.INT_TYPE);
|
||||
v.iinc(indexIndex, 1);
|
||||
v.swap();
|
||||
|
||||
@@ -37,6 +37,8 @@ import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
import static org.jetbrains.jet.lang.types.lang.KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME;
|
||||
|
||||
public class FunctionTypesUtil {
|
||||
private static final List<ClassDescriptor> FUNCTIONS;
|
||||
private static final List<ClassDescriptor> EXTENSION_FUNCTIONS;
|
||||
@@ -163,10 +165,10 @@ public class FunctionTypesUtil {
|
||||
public static Type getFunctionTraitClassName(@NotNull FunctionDescriptor descriptor) {
|
||||
int paramCount = descriptor.getValueParameters().size();
|
||||
if (descriptor.getReceiverParameter() != null) {
|
||||
return Type.getObjectType("jet/ExtensionFunction" + paramCount);
|
||||
return Type.getObjectType(BUILT_INS_PACKAGE_FQ_NAME + "/ExtensionFunction" + paramCount);
|
||||
}
|
||||
else {
|
||||
return Type.getObjectType("jet/Function" + paramCount);
|
||||
return Type.getObjectType(BUILT_INS_PACKAGE_FQ_NAME + "/Function" + paramCount);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -29,7 +29,6 @@ import org.jetbrains.jet.codegen.state.JetTypeMapper;
|
||||
import org.jetbrains.jet.lang.descriptors.*;
|
||||
import org.jetbrains.jet.lang.psi.JetExpression;
|
||||
import org.jetbrains.jet.lang.resolve.calls.model.ResolvedCall;
|
||||
import org.jetbrains.jet.lang.resolve.java.AsmTypeConstants;
|
||||
import org.jetbrains.jet.lang.resolve.scopes.receivers.ReceiverValue;
|
||||
import org.jetbrains.jet.lexer.JetTokens;
|
||||
|
||||
@@ -230,7 +229,7 @@ public abstract class StackValue {
|
||||
pop(v, fromType);
|
||||
}
|
||||
else if (fromType.getSort() == Type.VOID) {
|
||||
if (toType.equals(JET_UNIT_TYPE) || toType.equals(OBJECT_TYPE)) {
|
||||
if (toType.equals(UNIT_TYPE) || toType.equals(OBJECT_TYPE)) {
|
||||
putUnitInstance(v);
|
||||
}
|
||||
else if (toType.getSort() == Type.OBJECT || toType.getSort() == Type.ARRAY) {
|
||||
@@ -240,9 +239,9 @@ public abstract class StackValue {
|
||||
pushDefaultPrimitiveValueOnStack(toType, v);
|
||||
}
|
||||
}
|
||||
else if (toType.equals(JET_UNIT_TYPE)) {
|
||||
else if (toType.equals(UNIT_TYPE)) {
|
||||
if (fromType.equals(getType(Object.class))) {
|
||||
v.checkcast(JET_UNIT_TYPE);
|
||||
v.checkcast(UNIT_TYPE);
|
||||
}
|
||||
else if (!fromType.equals(getType(Void.class))) {
|
||||
pop(v, fromType);
|
||||
@@ -283,7 +282,7 @@ public abstract class StackValue {
|
||||
}
|
||||
|
||||
public static void putUnitInstance(InstructionAdapter v) {
|
||||
v.visitFieldInsn(GETSTATIC, AsmTypeConstants.JET_UNIT_TYPE.getInternalName(), "VALUE", AsmTypeConstants.JET_UNIT_TYPE.getDescriptor());
|
||||
v.visitFieldInsn(GETSTATIC, UNIT_TYPE.getInternalName(), "VALUE", UNIT_TYPE.getDescriptor());
|
||||
}
|
||||
|
||||
protected void putAsBoolean(InstructionAdapter v) {
|
||||
|
||||
@@ -26,7 +26,8 @@ import org.jetbrains.jet.lang.psi.JetExpression;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.JET_INT_RANGE_TYPE;
|
||||
import static org.jetbrains.asm4.Type.INT_TYPE;
|
||||
import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.INT_RANGE_TYPE;
|
||||
|
||||
public class ArrayIndices extends IntrinsicMethod {
|
||||
@NotNull
|
||||
@@ -41,7 +42,7 @@ public class ArrayIndices extends IntrinsicMethod {
|
||||
) {
|
||||
receiver.put(receiver.type, v);
|
||||
v.arraylength();
|
||||
v.invokestatic("kotlin/jvm/internal/Intrinsics", "arrayIndices", "(I)Ljet/IntRange;");
|
||||
return JET_INT_RANGE_TYPE;
|
||||
v.invokestatic("kotlin/jvm/internal/Intrinsics", "arrayIndices", Type.getMethodDescriptor(INT_RANGE_TYPE, INT_TYPE));
|
||||
return INT_RANGE_TYPE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,6 +39,7 @@ import java.util.List;
|
||||
import static org.jetbrains.jet.codegen.AsmUtil.asmDescByFqNameWithoutInnerClasses;
|
||||
import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.getType;
|
||||
import static org.jetbrains.jet.lang.resolve.java.mapping.PrimitiveTypesUtil.asmTypeForPrimitive;
|
||||
import static org.jetbrains.jet.lang.types.lang.KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME;
|
||||
|
||||
public class ArrayIterator extends IntrinsicMethod {
|
||||
@NotNull
|
||||
@@ -66,7 +67,8 @@ public class ArrayIterator extends IntrinsicMethod {
|
||||
PrimitiveType primitiveType = jvmPrimitiveType.getPrimitiveType();
|
||||
ClassDescriptor arrayClass = KotlinBuiltIns.getInstance().getPrimitiveArrayClassDescriptor(primitiveType);
|
||||
if (containingDeclaration.equals(arrayClass)) {
|
||||
String iteratorDesc = asmDescByFqNameWithoutInnerClasses(new FqName("jet." + primitiveType.getTypeName() + "Iterator"));
|
||||
FqName fqName = new FqName(BUILT_INS_PACKAGE_FQ_NAME + "." + primitiveType.getTypeName() + "Iterator");
|
||||
String iteratorDesc = asmDescByFqNameWithoutInnerClasses(fqName);
|
||||
String methodSignature = "([" + asmTypeForPrimitive(jvmPrimitiveType) + ")" + iteratorDesc;
|
||||
v.invokestatic("kotlin/jvm/internal/InternalPackage", "iterator", methodSignature);
|
||||
return Type.getType(iteratorDesc);
|
||||
|
||||
@@ -27,6 +27,8 @@ import org.jetbrains.jet.lang.resolve.java.AsmTypeConstants;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.jetbrains.jet.lang.types.lang.KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME;
|
||||
|
||||
public class IteratorNext extends IntrinsicMethod {
|
||||
@NotNull
|
||||
@Override
|
||||
@@ -67,7 +69,7 @@ public class IteratorNext extends IntrinsicMethod {
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
receiver.put(AsmTypeConstants.OBJECT_TYPE, v);
|
||||
v.invokevirtual("jet/" + name + "Iterator", "next" + name, "()" + returnType.getDescriptor());
|
||||
v.invokevirtual(BUILT_INS_PACKAGE_FQ_NAME + "/" + name + "Iterator", "next" + name, "()" + returnType.getDescriptor());
|
||||
return returnType;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ import org.jetbrains.jet.lang.psi.JetExpression;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.JET_FUNCTION0_TYPE;
|
||||
import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.FUNCTION0_TYPE;
|
||||
import static org.jetbrains.jet.lang.resolve.java.AsmTypeConstants.OBJECT_TYPE;
|
||||
|
||||
public class StupidSync extends IntrinsicMethod {
|
||||
@@ -43,8 +43,8 @@ public class StupidSync extends IntrinsicMethod {
|
||||
@Nullable List<JetExpression> arguments,
|
||||
StackValue receiver
|
||||
) {
|
||||
codegen.pushMethodArguments((JetCallExpression) element, Arrays.asList(OBJECT_TYPE, JET_FUNCTION0_TYPE));
|
||||
v.invokestatic("kotlin/jvm/internal/Intrinsics", "stupidSync", "(Ljava/lang/Object;Ljet/Function0;)Ljava/lang/Object;");
|
||||
codegen.pushMethodArguments((JetCallExpression) element, Arrays.asList(OBJECT_TYPE, FUNCTION0_TYPE));
|
||||
v.invokestatic("kotlin/jvm/internal/Intrinsics", "stupidSync", Type.getMethodDescriptor(OBJECT_TYPE, OBJECT_TYPE, FUNCTION0_TYPE));
|
||||
return OBJECT_TYPE;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,17 +17,19 @@
|
||||
package org.jetbrains.jet.cli.jvm.compiler;
|
||||
|
||||
import org.jetbrains.jet.lang.resolve.AnalyzerScriptParameter;
|
||||
import org.jetbrains.jet.lang.resolve.name.FqName;
|
||||
import org.jetbrains.jet.lang.resolve.name.Name;
|
||||
import org.jetbrains.jet.lang.types.ref.JetTypeName;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
public class CommandLineScriptUtils {
|
||||
import static org.jetbrains.jet.lang.types.lang.KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME;
|
||||
|
||||
public class CommandLineScriptUtils {
|
||||
private static final Name ARGS_NAME = Name.identifier("args");
|
||||
private static final JetTypeName ARGS_TYPE = JetTypeName.parse("jet.Array<jet.String>");
|
||||
|
||||
private static final JetTypeName ARGS_TYPE =
|
||||
JetTypeName.parse(BUILT_INS_PACKAGE_FQ_NAME + ".Array<" + BUILT_INS_PACKAGE_FQ_NAME + ".String>");
|
||||
|
||||
private CommandLineScriptUtils() {
|
||||
}
|
||||
|
||||
+6
-4
@@ -22,6 +22,8 @@ import org.jetbrains.asm4.Type;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import static org.jetbrains.jet.lang.types.lang.KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME;
|
||||
|
||||
public class AsmTypeConstants {
|
||||
private static final Map<Class<?>, Type> TYPES_MAP = new HashMap<Class<?>, Type>();
|
||||
|
||||
@@ -29,10 +31,10 @@ public class AsmTypeConstants {
|
||||
public static final Type JAVA_STRING_TYPE = getType(String.class);
|
||||
public static final Type JAVA_THROWABLE_TYPE = getType(Throwable.class);
|
||||
|
||||
public static final Type JET_UNIT_TYPE = Type.getObjectType("jet/Unit");
|
||||
public static final Type JET_FUNCTION0_TYPE = Type.getObjectType("jet/Function0");
|
||||
public static final Type JET_FUNCTION1_TYPE = Type.getObjectType("jet/Function1");
|
||||
public static final Type JET_INT_RANGE_TYPE = Type.getObjectType("jet/IntRange");
|
||||
public static final Type UNIT_TYPE = Type.getObjectType(BUILT_INS_PACKAGE_FQ_NAME + "/Unit");
|
||||
public static final Type FUNCTION0_TYPE = Type.getObjectType(BUILT_INS_PACKAGE_FQ_NAME + "/Function0");
|
||||
public static final Type FUNCTION1_TYPE = Type.getObjectType(BUILT_INS_PACKAGE_FQ_NAME + "/Function1");
|
||||
public static final Type INT_RANGE_TYPE = Type.getObjectType(BUILT_INS_PACKAGE_FQ_NAME + "/IntRange");
|
||||
|
||||
public static final Type OBJECT_REF_TYPE = Type.getObjectType("kotlin/jvm/internal/Ref$ObjectRef");
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ public final class JsDescriptorUtils {
|
||||
// TODO: maybe we should use external annotations or something else.
|
||||
private static final Set<String> FAKE_CLASSES = ContainerUtil.immutableSet(
|
||||
getFqNameSafe(KotlinBuiltIns.getInstance().getAny()).asString(),
|
||||
"jet.Iterable"
|
||||
getFqNameSafe(KotlinBuiltIns.getInstance().getIterable()).asString()
|
||||
);
|
||||
|
||||
private JsDescriptorUtils() {
|
||||
|
||||
Reference in New Issue
Block a user