-package org.simantics.scl.compiler.internal.elaboration.matching;\r
-\r
-\r
-import java.util.Arrays;\r
-\r
-import org.simantics.scl.compiler.elaboration.expressions.Expression;\r
-\r
-public class Row {\r
- Expression[] patterns;\r
- Expression value;\r
- \r
- public Row(Expression[] patterns, Expression value) {\r
- this.patterns = patterns;\r
- this.value = value;\r
- }\r
- \r
- public Row replace(int columnToReplace, Expression[] substitution) {\r
- Expression[] newPatterns = new Expression[patterns.length-1+substitution.length];\r
- int j=0;\r
- for(int i=0;i<columnToReplace;++i)\r
- newPatterns[j++] = patterns[i];\r
- for(int i=0;i<substitution.length;++i)\r
- newPatterns[j++] = substitution[i];\r
- for(int i=columnToReplace+1;i<patterns.length;++i)\r
- newPatterns[j++] = patterns[i];\r
- return new Row(newPatterns, value);\r
- }\r
- \r
- @Override\r
- public String toString() {\r
- return Arrays.toString(patterns) + " -> " + value;\r
- }\r
-}\r
+package org.simantics.scl.compiler.internal.elaboration.matching;
+
+
+import java.util.Arrays;
+
+import org.simantics.scl.compiler.elaboration.expressions.Expression;
+
+public class Row {
+ Expression[] patterns;
+ Expression value;
+
+ public Row(Expression[] patterns, Expression value) {
+ this.patterns = patterns;
+ this.value = value;
+ }
+
+ public Row replace(int columnToReplace, Expression[] substitution) {
+ Expression[] newPatterns = new Expression[patterns.length-1+substitution.length];
+ int j=0;
+ for(int i=0;i<columnToReplace;++i)
+ newPatterns[j++] = patterns[i];
+ for(int i=0;i<substitution.length;++i)
+ newPatterns[j++] = substitution[i];
+ for(int i=columnToReplace+1;i<patterns.length;++i)
+ newPatterns[j++] = patterns[i];
+ return new Row(newPatterns, value);
+ }
+
+ @Override
+ public String toString() {
+ return Arrays.toString(patterns) + " -> " + value;
+ }
+}