- */\r
-package org.simantics.scl.runtime.function;\r
-\r
-@SuppressWarnings("all")\r
-public class UnsaturatedFunction3 implements Function {\r
- private final Function f;\r
- private final Object p0;\r
- private final Object p1;\r
- private final Object p2;\r
-\r
- public UnsaturatedFunction3(Function f, Object p0, Object p1, Object p2) {\r
- this.f = f;\r
- this.p0 = p0;\r
- this.p1 = p1;\r
- this.p2 = p2;\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3) {\r
- return f.apply(p0, p1, p2, p3);\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3, Object p4) {\r
- return f.apply(p0, p1, p2, p3, p4);\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3, Object p4, Object p5) {\r
- return f.apply(p0, p1, p2, p3, p4, p5);\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3, Object p4, Object p5, Object p6) {\r
- return f.apply(p0, p1, p2, p3, p4, p5, p6);\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7) {\r
- return f.apply(p0, p1, p2, p3, p4, p5, p6, p7);\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7, Object p8) {\r
- return f.applyArray(p0, p1, p2, p3, p4, p5, p6, p7, p8);\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9) {\r
- return f.applyArray(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9);\r
- }\r
-\r
- @Override\r
- public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9, Object p10) {\r
- return f.applyArray(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);\r
- }\r
-\r
- @Override\r
- public Object applyArray(Object ... ps) {\r
- Object[] nps = new Object[ps.length + 3];\r
- nps[0] = p0;\r
- nps[1] = p1;\r
- nps[2] = p2;\r
- for(int i=0;i<ps.length;++i)\r
- nps[i + 3] = ps[i];\r
- return f.applyArray(nps);\r
- }\r
- @Override\r
- public String toString() {\r
- StringBuilder sb = new StringBuilder();\r
- sb.append("(").append(f);\r
- sb.append(" ").append(p0);\r
- sb.append(" ").append(p1);\r
- sb.append(" ").append(p2);\r
- sb.append(")");\r
- return sb.toString();\r
- }\r
-}\r
+ */
+package org.simantics.scl.runtime.function;
+
+@SuppressWarnings("all")
+public class UnsaturatedFunction3 implements Function {
+ private final Function f;
+ private final Object p0;
+ private final Object p1;
+ private final Object p2;
+
+ public UnsaturatedFunction3(Function f, Object p0, Object p1, Object p2) {
+ this.f = f;
+ this.p0 = p0;
+ this.p1 = p1;
+ this.p2 = p2;
+ }
+
+ @Override
+ public Object apply(Object p3) {
+ return f.apply(p0, p1, p2, p3);
+ }
+
+ @Override
+ public Object apply(Object p3, Object p4) {
+ return f.apply(p0, p1, p2, p3, p4);
+ }
+
+ @Override
+ public Object apply(Object p3, Object p4, Object p5) {
+ return f.apply(p0, p1, p2, p3, p4, p5);
+ }
+
+ @Override
+ public Object apply(Object p3, Object p4, Object p5, Object p6) {
+ return f.apply(p0, p1, p2, p3, p4, p5, p6);
+ }
+
+ @Override
+ public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7) {
+ return f.apply(p0, p1, p2, p3, p4, p5, p6, p7);
+ }
+
+ @Override
+ public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7, Object p8) {
+ return f.applyArray(p0, p1, p2, p3, p4, p5, p6, p7, p8);
+ }
+
+ @Override
+ public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9) {
+ return f.applyArray(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9);
+ }
+
+ @Override
+ public Object apply(Object p3, Object p4, Object p5, Object p6, Object p7, Object p8, Object p9, Object p10) {
+ return f.applyArray(p0, p1, p2, p3, p4, p5, p6, p7, p8, p9, p10);
+ }
+
+ @Override
+ public Object applyArray(Object ... ps) {
+ Object[] nps = new Object[ps.length + 3];
+ nps[0] = p0;
+ nps[1] = p1;
+ nps[2] = p2;
+ for(int i=0;i<ps.length;++i)
+ nps[i + 3] = ps[i];
+ return f.applyArray(nps);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("(").append(f);
+ sb.append(" ").append(p0);
+ sb.append(" ").append(p1);
+ sb.append(" ").append(p2);
+ sb.append(")");
+ return sb.toString();
+ }
+
+ @Override
+ public int hashCode() {
+ int result = f.hashCode();
+ result = 31 * result + (p0 == null ? 0 : p0.hashCode());
+ result = 31 * result + (p1 == null ? 0 : p1.hashCode());
+ result = 31 * result + (p2 == null ? 0 : p2.hashCode());
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj)
+ return true;
+ if (obj == null)
+ return false;
+ if (getClass() != obj.getClass())
+ return false;
+ UnsaturatedFunction3 other = (UnsaturatedFunction3) obj;
+ if(!f.equals(other.f))
+ return false;
+ if(p0 == null) {
+ if (other.p0 != null)
+ return false;
+ } else if (!p0.equals(other.p0))
+ return false;
+ if(p1 == null) {
+ if (other.p1 != null)
+ return false;
+ } else if (!p1.equals(other.p1))
+ return false;
+ if(p2 == null) {
+ if (other.p2 != null)
+ return false;
+ } else if (!p2.equals(other.p2))
+ return false;
+ return true;
+ }
+
+}