2 * This code is generated in org.simantics.scl.runtime.generation.GenerateFunctions.
3 * Do not edit manually!
5 package org.simantics.scl.runtime.function;
7 import java.util.Arrays;
9 @SuppressWarnings("all")
10 public abstract class FunctionImpl8<P0,P1,P2,P3,P4,P5,P6,P7,R> implements Function<P0,P1,P2,P3,P4,P5,P6,P7,Object,Object,Object,Object,Object,Object,Object,R> {
12 public Object apply(Object p0) {
13 return new UnsaturatedFunction1(this, p0);
17 public Object apply(Object p0, Object p1) {
18 return new UnsaturatedFunction2(this, p0, p1);
22 public Object apply(Object p0, Object p1, Object p2) {
23 return new UnsaturatedFunction3(this, p0, p1, p2);
27 public Object apply(Object p0, Object p1, Object p2, Object p3) {
28 return new UnsaturatedFunction4(this, p0, p1, p2, p3);
32 public Object apply(Object p0, Object p1, Object p2, Object p3, Object p4) {
33 return new UnsaturatedFunction5(this, p0, p1, p2, p3, p4);
37 public Object apply(Object p0, Object p1, Object p2, Object p3, Object p4, Object p5) {
38 return new UnsaturatedFunction6(this, p0, p1, p2, p3, p4, p5);
42 public Object apply(Object p0, Object p1, Object p2, Object p3, Object p4, Object p5, Object p6) {
43 return new UnsaturatedFunction7(this, p0, p1, p2, p3, p4, p5, p6);
47 public abstract R apply(P0 p0, P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7);
50 public Object applyArray(Object ... ps) {
55 return new UnsaturatedFunction1(this, ps[0]);
57 return new UnsaturatedFunction2(this, ps[0], ps[1]);
59 return new UnsaturatedFunction3(this, ps[0], ps[1], ps[2]);
61 return new UnsaturatedFunction4(this, ps[0], ps[1], ps[2], ps[3]);
63 return new UnsaturatedFunction5(this, ps[0], ps[1], ps[2], ps[3], ps[4]);
65 return new UnsaturatedFunction6(this, ps[0], ps[1], ps[2], ps[3], ps[4], ps[5]);
67 return new UnsaturatedFunction7(this, ps[0], ps[1], ps[2], ps[3], ps[4], ps[5], ps[6]);
69 return apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7]);
72 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8]);
73 } catch(ClassCastException e) {
74 throw new CalledWithTooManyParameters();
78 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8], ps[9]);
79 } catch(ClassCastException e) {
80 throw new CalledWithTooManyParameters();
84 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8], ps[9], ps[10]);
85 } catch(ClassCastException e) {
86 throw new CalledWithTooManyParameters();
90 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8], ps[9], ps[10], ps[11]);
91 } catch(ClassCastException e) {
92 throw new CalledWithTooManyParameters();
96 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8], ps[9], ps[10], ps[11], ps[12]);
97 } catch(ClassCastException e) {
98 throw new CalledWithTooManyParameters();
102 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8], ps[9], ps[10], ps[11], ps[12], ps[13]);
103 } catch(ClassCastException e) {
104 throw new CalledWithTooManyParameters();
108 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8], ps[9], ps[10], ps[11], ps[12], ps[13], ps[14]);
109 } catch(ClassCastException e) {
110 throw new CalledWithTooManyParameters();
114 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(ps[8], ps[9], ps[10], ps[11], ps[12], ps[13], ps[14], ps[15]);
115 } catch(ClassCastException e) {
116 throw new CalledWithTooManyParameters();
120 return ((Function)apply((P0)ps[0], (P1)ps[1], (P2)ps[2], (P3)ps[3], (P4)ps[4], (P5)ps[5], (P6)ps[6], (P7)ps[7])).apply(Arrays.copyOfRange(ps, 8, ps.length));
121 } catch(ClassCastException e) {
122 throw new CalledWithTooManyParameters();