diff options
author | Peter Mikkelsen <petermikkelsen10@gmail.com> | 2022-01-28 14:15:17 +0000 |
---|---|---|
committer | Peter Mikkelsen <petermikkelsen10@gmail.com> | 2022-01-28 14:15:17 +0000 |
commit | a3ebefe7fbcb375c77c3b4ccb6064dabb45d8911 (patch) | |
tree | b22eeda4e48e10f0a0c35e0140b58562a5a92e26 /print.c | |
parent | 17e97bbed7abc59fb754cf463e825e890b16815d (diff) |
Add strand assignment (a (b c) d)ā1 (2 3) 4
Diffstat (limited to 'print.c')
-rw-r--r-- | print.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -21,10 +21,10 @@ ppdatum(Datum d) case HybridTag: result = runesmprint("%C", primhybridnames[d.func.code]); break; case MonadicOpTag: case DyadicOpTag: result = ppoperator(d.operator); break; - case LParTag: result = runestrdup(L"("); break; + case LParTag: result = runesmprint("(%S", ppdatums(d.stmt.toks, d.stmt.ntoks)); break; case RParTag: result = runestrdup(L")"); break; case ArrowTag: result = runestrdup(L"ā"); break; - case AssignmentTag: result = runesmprint("%Sā", d.name); break; + case AssignmentTag: result = runesmprint("(%S)ā", ppdatums(d.stmt.toks, d.stmt.ntoks)); break; case NameTag: result = runestrdup(d.name); break; default: result = runesmprint("<not printable %d>", d.tag); } @@ -39,7 +39,7 @@ ppdatums(Datum *ds, int n) Rune *tmp; for(i = 0; i < n; i++){ tmp = res; - res = runesmprint("%S %S", res, ppdatum(ds[i])); + res = runesmprint("%S%S%s", res, ppdatum(ds[i]), (i+1) < n ? " " : ""); free(tmp); } return res; |