Explorar el Código

ASSOC_[NOT]EQUALS

kindlich hace 6 años
padre
commit
d630af4178
No se encontró ninguna clave conocida en la base de datos para esta firma

+ 5
- 6
JavaBytecodeCompiler/src/main/java/org/openzen/zenscript/javabytecode/compiler/JavaExpressionVisitor.java Ver fichero

@@ -23,10 +23,7 @@ import org.openzen.zenscript.javashared.*;
23 23
 import java.io.FileOutputStream;
24 24
 import java.io.IOException;
25 25
 import java.lang.reflect.Modifier;
26
-import java.util.Arrays;
27
-import java.util.Comparator;
28
-import java.util.Objects;
29
-import java.util.StringJoiner;
26
+import java.util.*;
30 27
 
31 28
 public class JavaExpressionVisitor implements ExpressionVisitor<Void>, JavaNativeTranslator<Void> {
32 29
 	private static final JavaMethod BOOLEAN_PARSE = JavaMethod.getNativeStatic(JavaClass.BOOLEAN, "parseBoolean", "(Ljava/lang/String;)Z");
@@ -144,6 +141,7 @@ public class JavaExpressionVisitor implements ExpressionVisitor<Void>, JavaNativ
144 141
 	private static final JavaMethod ARRAYS_HASHCODE_DOUBLES = JavaMethod.getNativeStatic(JavaClass.ARRAYS, "hashCode", "([D)I");
145 142
 	private static final JavaMethod ARRAYS_HASHCODE_CHARS = JavaMethod.getNativeStatic(JavaClass.ARRAYS, "hashCode", "([C)I");
146 143
 	public static final JavaMethod OBJECT_HASHCODE = JavaMethod.getNativeVirtual(JavaClass.OBJECT, "hashCode", "()I");
144
+	public static final JavaMethod OBJECT_EQUALS = JavaMethod.getNativeVirtual(JavaClass.OBJECT, "equals", "(Ljava/lang/Object)Z");
147 145
 	private static final JavaMethod COLLECTION_SIZE = JavaMethod.getNativeVirtual(JavaClass.COLLECTION, "size", "()I");
148 146
 	private static final JavaMethod COLLECTION_TOARRAY = JavaMethod.getNativeVirtual(JavaClass.COLLECTION, "toArray", "([Ljava/lang/Object;)[Ljava/lang/Object;");
149 147
 
@@ -884,9 +882,10 @@ public class JavaExpressionVisitor implements ExpressionVisitor<Void>, JavaNativ
884 882
 				javaWriter.invokeVirtual(MAP_CONTAINS_KEY);
885 883
 				break;
886 884
 			case ASSOC_EQUALS:
887
-				throw new UnsupportedOperationException("Not yet supported!");
885
+				javaWriter.invokeVirtual(OBJECT_EQUALS);
888 886
 			case ASSOC_NOTEQUALS:
889
-				throw new UnsupportedOperationException("Not yet supported!");
887
+				javaWriter.invokeVirtual(OBJECT_EQUALS);
888
+				javaWriter.iXorVs1();
890 889
 			case ASSOC_SAME:
891 890
 			case GENERICMAP_SAME:
892 891
 			case ARRAY_SAME:

Loading…
Cancelar
Guardar