about summary refs log tree commit diff
path: root/src/fix-ng/parser.cc
diff options
context:
space:
mode:
authorEelco Dolstra <e.dolstra@tudelft.nl>2003-11-03T11·59+0000
committerEelco Dolstra <e.dolstra@tudelft.nl>2003-11-03T11·59+0000
commite2655aa332a33b56d9168928511a598fc9b0c1e6 (patch)
tree6801c00bc1f2f9995f1627c1a6b2df7e20ca55af /src/fix-ng/parser.cc
parentad0976f8d5f2afbca4e2fe6cbb3d2c2e53760222 (diff)
* Shorter list syntax ([a b c] instead of [a, b, c]).
Diffstat (limited to 'src/fix-ng/parser.cc')
-rw-r--r--src/fix-ng/parser.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/fix-ng/parser.cc b/src/fix-ng/parser.cc
index e159262ca1cc..43678ec9719d 100644
--- a/src/fix-ng/parser.cc
+++ b/src/fix-ng/parser.cc
@@ -56,6 +56,13 @@ struct Cleanup : TermFun
         if (ATmatch(e, "Bool(\"false\")", &s))
             return ATmake("Bool(False)");
 
+        if (ATmatch(e, "ExprNil"))
+            return (ATerm) ATempty;
+
+        ATerm e1, e2;
+        if (ATmatch(e, "ExprCons(<term>, [<list>])", &e1, &e2))
+            return (ATerm) ATinsert((ATermList) e2, e1);
+
         return e;
     }
 };