aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/source.sml
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2008-06-12 14:04:22 -0400
committerGravatar Adam Chlipala <adamc@hcoop.net>2008-06-12 14:04:22 -0400
commit230753c968d4615b8e875940c4147d79d04d1ad3 (patch)
tree639cb07fdae987e65a8240c3aec788dff15a230e /src/source.sml
parentc1c6013533ba8eaa3b41924bcd61d99a4da27955 (diff)
Parsing and printing basic module system
Diffstat (limited to 'src/source.sml')
-rw-r--r--src/source.sml20
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