diff options
author | 2008-06-12 14:04:22 -0400 | |
---|---|---|
committer | 2008-06-12 14:04:22 -0400 | |
commit | 230753c968d4615b8e875940c4147d79d04d1ad3 (patch) | |
tree | 639cb07fdae987e65a8240c3aec788dff15a230e /src/source.sml | |
parent | c1c6013533ba8eaa3b41924bcd61d99a4da27955 (diff) |
Parsing and printing basic module system
Diffstat (limited to 'src/source.sml')
-rw-r--r-- | src/source.sml | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/source.sml b/src/source.sml index c76ebf0b..6fe07255 100644 --- a/src/source.sml +++ b/src/source.sml @@ -77,11 +77,31 @@ datatype exp' = withtype exp = exp' located +datatype sgn_item' = + SgiConAbs of string * kind + | SgiCon of string * kind option * con + | SgiVal of string * con + | SgiStr of string * sgn + +and sgn' = + SgnConst of sgn_item list + | SgnVar of string + +withtype sgn_item = sgn_item' located +and sgn = sgn' located + datatype decl' = DCon of string * kind option * con | DVal of string * con option * exp + | DSgn of string * sgn + | DStr of string * sgn option * str + + and str' = + StrConst of decl list + | StrVar of string withtype decl = decl' located + and str = str' located type file = decl list |