Mercurial > urweb
diff src/mono_fm.sig @ 2253:d665925acff8
Factor out [Monoize.Fm] to make it accessible to [Sqlcache].
author | Ziv Scully <ziv@mit.edu> |
---|---|
date | Mon, 21 Sep 2015 14:54:07 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/mono_fm.sig Mon Sep 21 14:54:07 2015 -0400 @@ -0,0 +1,22 @@ +signature MONO_FM = sig + type t + + type vr = string * int * Mono.typ * Mono.exp * string + + datatype foo_kind = + Attr + | Url + + val empty : int -> t + + val lookup : t -> foo_kind -> int -> (int -> t -> vr * t) -> t * int + val lookupList : t -> foo_kind -> Mono.typ -> (int -> t -> vr * t) -> t * int + val enter : t -> t + val decls : t -> Mono.decl list + + val freshName : t -> int * t + + (* TODO: don't expose raw references if possible. *) + val nextPvar : int ref + val postMonoize : t ref +end