Mercurial > urweb
diff src/elab.sml @ 31:1c91c5e6840f
Simple signature matching
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 12 Jun 2008 17:16:20 -0400 |
parents | 537db4ee89f4 |
children | 44b5405e74c7 |
line wrap: on
line diff
--- a/src/elab.sml Thu Jun 12 14:04:22 2008 -0400 +++ b/src/elab.sml Thu Jun 12 17:16:20 2008 -0400 @@ -80,12 +80,34 @@ withtype exp = exp' located +datatype sgn_item' = + SgiConAbs of string * int * kind + | SgiCon of string * int * kind * con + | SgiVal of string * int * con + | SgiStr of string * int * sgn + +and sgn' = + SgnConst of sgn_item list + | SgnVar of int + | SgnError + +withtype sgn_item = sgn_item' located +and sgn = sgn' located + datatype decl' = DCon of string * int * kind * con | DVal of string * int * con * exp + | DSgn of string * int * sgn + | DStr of string * int * sgn * str + + and str' = + StrConst of decl list + | StrVar of int + | StrError withtype decl = decl' located - + and str = str' located + type file = decl list end