summaryrefslogtreecommitdiffstats
path: root/parsing/parse.sh
diff options
context:
space:
mode:
authorP. J. McDermott <pj@pehjota.net>2016-02-20 18:04:48 (EST)
committer P. J. McDermott <pj@pehjota.net>2016-02-20 18:04:48 (EST)
commit0a72d231a7d42396e3551f38eb63d55fea100669 (patch)
tree2e5068a74632573d2c525b91e1924cad37629464 /parsing/parse.sh
parent897bd7b6ae7514896dae3253e854db5edc0b8009 (diff)
downloadeggshell-0a72d231a7d42396e3551f38eb63d55fea100669.zip
eggshell-0a72d231a7d42396e3551f38eb63d55fea100669.tar.gz
eggshell-0a72d231a7d42396e3551f38eb63d55fea100669.tar.bz2
Rewrite codegen
The previous version didn't handle nested or multiple command substitutions. The stack format has also been extended to support arithmetic expansions.
Diffstat (limited to 'parsing/parse.sh')
-rw-r--r--parsing/parse.sh2
1 files changed, 2 insertions, 0 deletions
diff --git a/parsing/parse.sh b/parsing/parse.sh
index 196ad84..a71f90b 100644
--- a/parsing/parse.sh
+++ b/parsing/parse.sh
@@ -1,3 +1,4 @@
+SOH="$(printf '\001.')"; SOH="${SOH%.}"
STX="$(printf '\002.')"; STX="${STX%.}"
ETX="$(printf '\003.')"; ETX="${ETX%.}"
HT="$(printf '\t.')"; HT="${HT%.}"
@@ -646,4 +647,5 @@ try 'foo $(bar)'
try 'foo $(bar); baz'
try 'foo $(bar)' 'baz'
try 'foo $(bar) baz'
+try 'foo$(bar$(baz))qux'
#try 'foo $((1 + 1))'