diff options
| author | Rose Hogenson <rosehogenson@posteo.net> | 2025-07-04 11:19:55 -0700 |
|---|---|---|
| committer | Rose Hogenson <rosehogenson@posteo.net> | 2025-07-04 11:19:55 -0700 |
| commit | ed48b02873f3ea3cab0107176d00eb00c9519766 (patch) | |
| tree | b8520790160c42466b5bef7644365259c6076bc4 /ShowSyntax.sml | |
| parent | Instantiate asdf (diff) | |
| download | sml-ed48b02873f3ea3cab0107176d00eb00c9519766.tar.zst | |
Add signatures
Diffstat (limited to 'ShowSyntax.sml')
| -rw-r--r-- | ShowSyntax.sml | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/ShowSyntax.sml b/ShowSyntax.sml index f28895d..53cc2af 100644 --- a/ShowSyntax.sml +++ b/ShowSyntax.sml @@ -87,7 +87,9 @@ and decToStringI (indent : string) (Syntax.DVal x : Syntax.dec) : string = | decToStringI (indent : string) (Syntax.DType x : Syntax.dec) : string = "DType " ^ (fn indent => fn (x0, x1) => let val indent' = indent ^ " " in "(\n" ^ indent' ^ stringToStringI indent' x0 ^ ",\n" ^ indent' ^ etypeToStringI indent' x1 ^ "\n" ^ indent ^ ")" end) indent x | decToStringI (indent : string) (Syntax.DStruct x : Syntax.dec) : string = - "DStruct " ^ (fn indent => fn (x0, x1) => let val indent' = indent ^ " " in "(\n" ^ indent' ^ stringToStringI indent' x0 ^ ",\n" ^ indent' ^ structExprToStringI indent' x1 ^ "\n" ^ indent ^ ")" end) indent x + "DStruct " ^ (fn indent => fn (x0, x1, x2) => let val indent' = indent ^ " " in "(\n" ^ indent' ^ stringToStringI indent' x0 ^ ",\n" ^ indent' ^ optionToString (stringToStringI) indent' x1 ^ ",\n" ^ indent' ^ structExprToStringI indent' x2 ^ "\n" ^ indent ^ ")" end) indent x + | decToStringI (indent : string) (Syntax.DSig x : Syntax.dec) : string = + "DSig " ^ (fn indent => fn (x0, x1) => let val indent' = indent ^ " " in "(\n" ^ indent' ^ stringToStringI indent' x0 ^ ",\n" ^ indent' ^ listToString ((fn indent => fn (x0, x1) => let val indent' = indent ^ " " in "(\n" ^ indent' ^ stringToStringI indent' x0 ^ ",\n" ^ indent' ^ etypeToStringI indent' x1 ^ "\n" ^ indent ^ ")" end)) indent' x1 ^ "\n" ^ indent ^ ")" end) indent x and decToString (x : Syntax.dec) : string = decToStringI "" x and structExprToStringI (indent : string) (Syntax.SIdent x : Syntax.structExpr) : string = |
