Mercurial > urweb
comparison src/elab_util.sig @ 448:85819353a84f
First Unnest tests working
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sat, 01 Nov 2008 15:58:55 -0400 |
parents | eec65c11d3e2 |
children | 588b9d16b00a |
comparison
equal
deleted
inserted
replaced
447:b77863cd0be2 | 448:85819353a84f |
---|---|
55 val map : {kind : Elab.kind' -> Elab.kind', | 55 val map : {kind : Elab.kind' -> Elab.kind', |
56 con : Elab.con' -> Elab.con'} | 56 con : Elab.con' -> Elab.con'} |
57 -> Elab.con -> Elab.con | 57 -> Elab.con -> Elab.con |
58 val exists : {kind : Elab.kind' -> bool, | 58 val exists : {kind : Elab.kind' -> bool, |
59 con : Elab.con' -> bool} -> Elab.con -> bool | 59 con : Elab.con' -> bool} -> Elab.con -> bool |
60 | |
61 val foldB : {kind : Elab.kind' * 'state -> 'state, | |
62 con : 'context * Elab.con' * 'state -> 'state, | |
63 bind : 'context * binder -> 'context} | |
64 -> 'context -> 'state -> Elab.con -> 'state | |
60 end | 65 end |
61 | 66 |
62 structure Exp : sig | 67 structure Exp : sig |
63 datatype binder = | 68 datatype binder = |
64 RelC of string * Elab.kind | 69 RelC of string * Elab.kind |
81 bind : 'context * binder -> 'context} | 86 bind : 'context * binder -> 'context} |
82 -> 'context -> (Elab.exp -> Elab.exp) | 87 -> 'context -> (Elab.exp -> Elab.exp) |
83 val exists : {kind : Elab.kind' -> bool, | 88 val exists : {kind : Elab.kind' -> bool, |
84 con : Elab.con' -> bool, | 89 con : Elab.con' -> bool, |
85 exp : Elab.exp' -> bool} -> Elab.exp -> bool | 90 exp : Elab.exp' -> bool} -> Elab.exp -> bool |
91 | |
92 val foldB : {kind : Elab.kind' * 'state -> 'state, | |
93 con : 'context * Elab.con' * 'state -> 'state, | |
94 exp : 'context * Elab.exp' * 'state -> 'state, | |
95 bind : 'context * binder -> 'context} | |
96 -> 'context -> 'state -> Elab.exp -> 'state | |
86 end | 97 end |
87 | 98 |
88 structure Sgn : sig | 99 structure Sgn : sig |
89 datatype binder = | 100 datatype binder = |
90 RelC of string * Elab.kind | 101 RelC of string * Elab.kind |
154 sgn_item : Elab.sgn_item' -> 'a option, | 165 sgn_item : Elab.sgn_item' -> 'a option, |
155 sgn : Elab.sgn' -> 'a option, | 166 sgn : Elab.sgn' -> 'a option, |
156 str : Elab.str' -> 'a option, | 167 str : Elab.str' -> 'a option, |
157 decl : Elab.decl' -> 'a option} | 168 decl : Elab.decl' -> 'a option} |
158 -> Elab.decl -> 'a option | 169 -> Elab.decl -> 'a option |
170 | |
171 val foldMapB : {kind : Elab.kind' * 'state -> Elab.kind' * 'state, | |
172 con : 'context * Elab.con' * 'state -> Elab.con' * 'state, | |
173 exp : 'context * Elab.exp' * 'state -> Elab.exp' * 'state, | |
174 sgn_item : 'context * Elab.sgn_item' * 'state -> Elab.sgn_item' * 'state, | |
175 sgn : 'context * Elab.sgn' * 'state -> Elab.sgn' * 'state, | |
176 str : 'context * Elab.str' * 'state -> Elab.str' * 'state, | |
177 decl : 'context * Elab.decl' * 'state -> Elab.decl' * 'state, | |
178 bind : 'context * binder -> 'context} | |
179 -> 'context -> 'state -> Elab.decl -> Elab.decl * 'state | |
180 end | |
181 | |
182 structure File : sig | |
183 val maxName : Elab.file -> int | |
159 end | 184 end |
160 | 185 |
161 end | 186 end |