Minor, combine ENUM_NAME and ENUM_ORDINAL parameter kinds
This commit is contained in:
@@ -391,7 +391,9 @@ public class FunctionCodegen extends ParentCodegenAware {
|
||||
}
|
||||
|
||||
private static boolean needIndexForVar(JvmMethodParameterKind kind) {
|
||||
return kind == JvmMethodParameterKind.CAPTURED_LOCAL_VARIABLE || kind == JvmMethodParameterKind.SUPER_OF_ANONYMOUS_CALL_PARAM;
|
||||
return kind == JvmMethodParameterKind.CAPTURED_LOCAL_VARIABLE ||
|
||||
kind == JvmMethodParameterKind.ENUM_NAME_OR_ORDINAL ||
|
||||
kind == JvmMethodParameterKind.SUPER_OF_ANONYMOUS_CALL_PARAM;
|
||||
}
|
||||
|
||||
public static void endVisit(MethodVisitor mv, @Nullable String description, @Nullable PsiElement method) {
|
||||
|
||||
@@ -756,8 +756,8 @@ public class JetTypeMapper {
|
||||
|
||||
ClassDescriptor containingDeclaration = descriptor.getContainingDeclaration();
|
||||
if (containingDeclaration.getKind() == ClassKind.ENUM_CLASS || containingDeclaration.getKind() == ClassKind.ENUM_ENTRY) {
|
||||
writeParameter(sw, JvmMethodParameterKind.ENUM_NAME, KotlinBuiltIns.getInstance().getStringType());
|
||||
writeParameter(sw, JvmMethodParameterKind.ENUM_ORDINAL, KotlinBuiltIns.getInstance().getIntType());
|
||||
writeParameter(sw, JvmMethodParameterKind.ENUM_NAME_OR_ORDINAL, KotlinBuiltIns.getInstance().getStringType());
|
||||
writeParameter(sw, JvmMethodParameterKind.ENUM_NAME_OR_ORDINAL, KotlinBuiltIns.getInstance().getIntType());
|
||||
}
|
||||
|
||||
if (closure == null) return;
|
||||
|
||||
+2
-7
@@ -16,21 +16,16 @@
|
||||
|
||||
package org.jetbrains.jet.lang.resolve.java.jvmSignature;
|
||||
|
||||
import java.util.EnumSet;
|
||||
|
||||
public enum JvmMethodParameterKind {
|
||||
VALUE,
|
||||
THIS,
|
||||
OUTER,
|
||||
RECEIVER,
|
||||
CAPTURED_LOCAL_VARIABLE,
|
||||
ENUM_NAME,
|
||||
ENUM_ORDINAL,
|
||||
ENUM_NAME_OR_ORDINAL,
|
||||
SUPER_OF_ANONYMOUS_CALL_PARAM;
|
||||
|
||||
private static final EnumSet<JvmMethodParameterKind> SKIPPED_IN_GENERIC_SIGNATURE = EnumSet.of(OUTER, ENUM_NAME, ENUM_ORDINAL);
|
||||
|
||||
public boolean isSkippedInGenericSignature() {
|
||||
return SKIPPED_IN_GENERIC_SIGNATURE.contains(this);
|
||||
return this == OUTER || this == ENUM_NAME_OR_ORDINAL;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user