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