aboutsummaryrefslogtreecommitdiff
path: root/runtime/CSharp3/Sources/Antlr3.Runtime.Test/Composition/Reduce.g3
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/CSharp3/Sources/Antlr3.Runtime.Test/Composition/Reduce.g3')
-rw-r--r--runtime/CSharp3/Sources/Antlr3.Runtime.Test/Composition/Reduce.g320
1 files changed, 0 insertions, 20 deletions
diff --git a/runtime/CSharp3/Sources/Antlr3.Runtime.Test/Composition/Reduce.g3 b/runtime/CSharp3/Sources/Antlr3.Runtime.Test/Composition/Reduce.g3
deleted file mode 100644
index db61e42..0000000
--- a/runtime/CSharp3/Sources/Antlr3.Runtime.Test/Composition/Reduce.g3
+++ /dev/null
@@ -1,20 +0,0 @@
-tree grammar Reduce;
-
-options
-{
- tokenVocab=VecMath;
- ASTLabelType=CommonTree;
- output=AST;
- filter=true;
- language=CSharp3;
-}
-
-@namespace{Antlr3.Runtime.Test.Composition}
-
-/** Rewrite: x+x to be 2*x, 2*x to be x<<1, x<<n<<m to be x<<(n+m) */
-bottomup
- : ^(PLUS i=INT j=INT {$i.int==$j.int}?) -> ^(MULT["*"] INT["2"] $j)
- | ^(MULT x=INT {$x.int==2}? y=.) -> ^(SHIFT["<<"] $y INT["1"])
- | ^(SHIFT ^(SHIFT e=. n=INT) m=INT)
- -> ^(SHIFT["<<"] $e INT[($n.int+$m.int).ToString()])
- ;