-package org.simantics.graph.diff;\r
-\r
-public class Statement {\r
- int subject;\r
- int predicate;\r
- int inverse;\r
- int object;\r
- \r
- public Statement(int subject, int predicate, int inverse, int object) {\r
- this.subject = subject;\r
- this.predicate = predicate;\r
- this.inverse = inverse;\r
- this.object = object;\r
- }\r
-\r
- @Override\r
- public int hashCode() {\r
- final int prime = 31;\r
- int result = 1;\r
- result = prime * result + inverse;\r
- result = prime * result + object;\r
- result = prime * result + predicate;\r
- result = prime * result + subject;\r
- return result;\r
- }\r
-\r
- @Override\r
- public boolean equals(Object obj) {\r
- if (this == obj)\r
- return true;\r
- if (obj == null)\r
- return false;\r
- if (getClass() != obj.getClass())\r
- return false;\r
- Statement other = (Statement) obj;\r
- if (inverse != other.inverse)\r
- return false;\r
- if (object != other.object)\r
- return false;\r
- if (predicate != other.predicate)\r
- return false;\r
- if (subject != other.subject)\r
- return false;\r
- return true;\r
- }\r
- \r
- public Statement map(int[] map) {\r
- int mappedSubject = map[subject];\r
- if(mappedSubject < 0) return null;\r
- int mappedPredicate = map[predicate];\r
- if(mappedPredicate < 0) return null; \r
- int mappedInverse;\r
- if(inverse < 0)\r
- mappedInverse = inverse;\r
- else {\r
- mappedInverse = map[inverse];\r
- if(mappedInverse < 0) return null;\r
- }\r
- int mappedObject = map[object];\r
- if(mappedObject < 0) return null;\r
- return new Statement(mappedSubject, mappedPredicate, mappedInverse, mappedObject);\r
- }\r
-}\r
+package org.simantics.graph.diff;
+
+public class Statement {
+ int subject;
+ int predicate;
+ int inverse;
+ int object;
+
+ public Statement(int subject, int predicate, int inverse, int object) {
+ this.subject = subject;
+ this.predicate = predicate;
+ this.inverse = inverse;
+ this.object = object;
+ }
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + inverse;
+ result = prime * result + object;
+ result = prime * result + predicate;
+ result = prime * result + subject;
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ Statement other = (Statement) obj;
+ if (inverse != other.inverse)
+ return false;
+ if (object != other.object)
+ return false;
+ if (predicate != other.predicate)
+ return false;
+ if (subject != other.subject)
+ return false;
+ return true;
+ }
+
+ public Statement map(int[] map) {
+ int mappedSubject = map[subject];
+ if(mappedSubject < 0) return null;
+ int mappedPredicate = map[predicate];
+ if(mappedPredicate < 0) return null;
+ int mappedInverse;
+ if(inverse < 0)
+ mappedInverse = inverse;
+ else {
+ mappedInverse = map[inverse];
+ if(mappedInverse < 0) return null;
+ }
+ int mappedObject = map[object];
+ if(mappedObject < 0) return null;
+ return new Statement(mappedSubject, mappedPredicate, mappedInverse, mappedObject);
+ }
+}