]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.scl.runtime/src/org/simantics/scl/runtime/tuple/Tuple2.java
Migrated source code from Simantics SVN
[simantics/platform.git] / bundles / org.simantics.scl.runtime / src / org / simantics / scl / runtime / tuple / Tuple2.java
1 /**
2  * This code is generated in org.simantics.scl.runtime.generation.GenerateTuples.
3  * Do not edit manually!
4  */\r
5 package org.simantics.scl.runtime.tuple;\r
6 \r
7 public class Tuple2 implements Tuple {\r
8     public final Object c0;\r
9     public final Object c1;\r
10 \r
11     public Tuple2(Object c0, Object c1) {\r
12         this.c0 = c0;\r
13         this.c1 = c1;\r
14     }\r
15 \r
16     public int length() {\r
17         return 2;\r
18     }\r
19 \r
20     public Object get(int id) {\r
21         switch(id) {\r
22         case 0: return c0;\r
23         case 1: return c1;\r
24         default: throw new IndexOutOfBoundsException();\r
25         }\r
26     }\r
27 \r
28     public Object[] toArray() {\r
29         return new Object[] { c0, c1 };\r
30     }\r
31 \r
32     @Override\r
33     public boolean equals(Object obj) {\r
34         if(obj == this)\r
35             return true;\r
36         if(obj == null || obj.getClass() != getClass())\r
37             return false;\r
38         Tuple2 tuple = (Tuple2)obj;\r
39         if(c0 == null) {\r
40             if(tuple.c0 != null)\r
41                 return false;\r
42         }\r
43         else if(!c0.equals(tuple.c0))\r
44             return false;\r
45         if(c1 == null) {\r
46             if(tuple.c1 != null)\r
47                 return false;\r
48         }\r
49         else if(!c1.equals(tuple.c1))\r
50             return false;\r
51         return true;\r
52     }\r
53 \r
54     @Override\r
55     public int hashCode() {\r
56         int result = c0 == null ? 0 : c0.hashCode();\r
57         result *= 31;\r
58         if(c1 != null)\r
59             result += c1.hashCode();\r
60         return result;\r
61     }\r
62 \r
63     @Override\r
64     public String toString() {\r
65         StringBuilder b = new StringBuilder();\r
66         b.append('(');\r
67         b.append(c0);\r
68         b.append(',');\r
69         b.append(c1);\r
70         b.append(')');\r
71         return b.toString();\r
72     }\r
73 }\r