]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/utils/ValueFromMethod.java
Fixed all line endings of the repository
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / internal / codegen / utils / ValueFromMethod.java
index 5a736a38075b4e635b3b6914e5c8a8e5180a0947..bccfa892832a05c2a024f5a7b0f3258c3e35c6c3 100644 (file)
@@ -1,85 +1,85 @@
-package org.simantics.scl.compiler.internal.codegen.utils;\r
-\r
-import java.lang.reflect.Method;\r
-\r
-import org.simantics.scl.runtime.function.FunctionImpl1;\r
-import org.simantics.scl.runtime.function.FunctionImpl2;\r
-import org.simantics.scl.runtime.function.FunctionImpl3;\r
-import org.simantics.scl.runtime.function.FunctionImpl4;\r
-import org.simantics.scl.runtime.function.FunctionImplN;\r
-import org.simantics.scl.runtime.tuple.Tuple0;\r
-\r
-public class ValueFromMethod {\r
-\r
-    public static Object getValueFromStaticMethod(final Method method) throws ReflectiveOperationException {\r
-        int arity = method.getParameterTypes().length;\r
-        final boolean returnsVoid = method.getReturnType().equals(void.class);\r
-        switch(arity) {\r
-        case 0: {\r
-            Object ret = method.invoke(null);\r
-            return returnsVoid ? Tuple0.INSTANCE : ret;\r
-        }\r
-        case 1:\r
-            return new FunctionImpl1<Object,Object>() {\r
-                @Override\r
-                public Object apply(Object p0) {\r
-                    try {\r
-                        Object ret = method.invoke(null, p0);\r
-                        return returnsVoid ? Tuple0.INSTANCE : ret;\r
-                    } catch (ReflectiveOperationException e) {\r
-                        throw new RuntimeException(e);\r
-                    }\r
-                }\r
-            };\r
-        case 2:\r
-            return new FunctionImpl2<Object,Object,Object>() {\r
-                @Override\r
-                public Object apply(Object p0, Object p1) {\r
-                    try {\r
-                        Object ret = method.invoke(null, p0, p1);\r
-                        return returnsVoid ? Tuple0.INSTANCE : ret;\r
-                    } catch (ReflectiveOperationException e) {\r
-                        throw new RuntimeException(e);\r
-                    }\r
-                }\r
-            };\r
-        case 3:\r
-            return new FunctionImpl3<Object,Object,Object,Object>() {\r
-                @Override\r
-                public Object apply(Object p0, Object p1, Object p2) {\r
-                    try {\r
-                        Object ret = method.invoke(null, p0, p1, p2);\r
-                        return returnsVoid ? Tuple0.INSTANCE : ret;\r
-                    } catch (ReflectiveOperationException e) {\r
-                        throw new RuntimeException(e);\r
-                    }\r
-                }\r
-            };\r
-        case 4:\r
-            return new FunctionImpl4<Object,Object,Object,Object,Object>() {\r
-                @Override\r
-                public Object apply(Object p0, Object p1, Object p2, Object p3) {\r
-                    try {\r
-                        Object ret = method.invoke(null, p0, p1, p2, p3);\r
-                        return returnsVoid ? Tuple0.INSTANCE : ret;\r
-                    } catch (ReflectiveOperationException e) {\r
-                        throw new RuntimeException(e);\r
-                    }\r
-                }\r
-            };\r
-        default:\r
-            return new FunctionImplN(arity) {\r
-                @Override\r
-                public Object doApply(Object... ps) {\r
-                    try {\r
-                        Object ret =  method.invoke(null, ps);\r
-                        return returnsVoid ? Tuple0.INSTANCE : ret;\r
-                    } catch (ReflectiveOperationException e) {\r
-                        throw new RuntimeException(e);\r
-                    }\r
-                }\r
-            };\r
-        }\r
-    }\r
-    \r
-}\r
+package org.simantics.scl.compiler.internal.codegen.utils;
+
+import java.lang.reflect.Method;
+
+import org.simantics.scl.runtime.function.FunctionImpl1;
+import org.simantics.scl.runtime.function.FunctionImpl2;
+import org.simantics.scl.runtime.function.FunctionImpl3;
+import org.simantics.scl.runtime.function.FunctionImpl4;
+import org.simantics.scl.runtime.function.FunctionImplN;
+import org.simantics.scl.runtime.tuple.Tuple0;
+
+public class ValueFromMethod {
+
+    public static Object getValueFromStaticMethod(final Method method) throws ReflectiveOperationException {
+        int arity = method.getParameterTypes().length;
+        final boolean returnsVoid = method.getReturnType().equals(void.class);
+        switch(arity) {
+        case 0: {
+            Object ret = method.invoke(null);
+            return returnsVoid ? Tuple0.INSTANCE : ret;
+        }
+        case 1:
+            return new FunctionImpl1<Object,Object>() {
+                @Override
+                public Object apply(Object p0) {
+                    try {
+                        Object ret = method.invoke(null, p0);
+                        return returnsVoid ? Tuple0.INSTANCE : ret;
+                    } catch (ReflectiveOperationException e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            };
+        case 2:
+            return new FunctionImpl2<Object,Object,Object>() {
+                @Override
+                public Object apply(Object p0, Object p1) {
+                    try {
+                        Object ret = method.invoke(null, p0, p1);
+                        return returnsVoid ? Tuple0.INSTANCE : ret;
+                    } catch (ReflectiveOperationException e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            };
+        case 3:
+            return new FunctionImpl3<Object,Object,Object,Object>() {
+                @Override
+                public Object apply(Object p0, Object p1, Object p2) {
+                    try {
+                        Object ret = method.invoke(null, p0, p1, p2);
+                        return returnsVoid ? Tuple0.INSTANCE : ret;
+                    } catch (ReflectiveOperationException e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            };
+        case 4:
+            return new FunctionImpl4<Object,Object,Object,Object,Object>() {
+                @Override
+                public Object apply(Object p0, Object p1, Object p2, Object p3) {
+                    try {
+                        Object ret = method.invoke(null, p0, p1, p2, p3);
+                        return returnsVoid ? Tuple0.INSTANCE : ret;
+                    } catch (ReflectiveOperationException e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            };
+        default:
+            return new FunctionImplN(arity) {
+                @Override
+                public Object doApply(Object... ps) {
+                    try {
+                        Object ret =  method.invoke(null, ps);
+                        return returnsVoid ? Tuple0.INSTANCE : ret;
+                    } catch (ReflectiveOperationException e) {
+                        throw new RuntimeException(e);
+                    }
+                }
+            };
+        }
+    }
+    
+}