comparison src/mono_util.sig @ 567:1901db85acb4

Start of JsComp
author Adam Chlipala <adamc@hcoop.net>
date Sat, 20 Dec 2008 14:19:21 -0500
parents 65d8541c130b
children cc956020801b
comparison
equal deleted inserted replaced
566:a152905c3c3b 567:1901db85acb4
69 exp : Mono.exp' * 'state -> 'state} 69 exp : Mono.exp' * 'state -> 'state}
70 -> 'state -> Mono.exp -> 'state 70 -> 'state -> Mono.exp -> 'state
71 71
72 val exists : {typ : Mono.typ' -> bool, 72 val exists : {typ : Mono.typ' -> bool,
73 exp : Mono.exp' -> bool} -> Mono.exp -> bool 73 exp : Mono.exp' -> bool} -> Mono.exp -> bool
74
75 val foldB : {typ : Mono.typ' * 'state -> 'state,
76 exp : 'context * Mono.exp' * 'state -> 'state,
77 bind : 'context * binder -> 'context}
78 -> 'context -> 'state -> Mono.exp -> 'state
74 end 79 end
75 80
76 structure Decl : sig 81 structure Decl : sig
77 datatype binder = datatype Exp.binder 82 datatype binder = datatype Exp.binder
78 83
93 98
94 val map : {typ : Mono.typ' -> Mono.typ', 99 val map : {typ : Mono.typ' -> Mono.typ',
95 exp : Mono.exp' -> Mono.exp', 100 exp : Mono.exp' -> Mono.exp',
96 decl : Mono.decl' -> Mono.decl'} 101 decl : Mono.decl' -> Mono.decl'}
97 -> Mono.decl -> Mono.decl 102 -> Mono.decl -> Mono.decl
103
104 val foldMapB : {typ : Mono.typ' * 'state -> Mono.typ' * 'state,
105 exp : 'context * Mono.exp' * 'state -> Mono.exp' * 'state,
106 decl : 'context * Mono.decl' * 'state -> Mono.decl' * 'state,
107 bind : 'context * binder -> 'context}
108 -> 'context -> 'state -> Mono.decl -> Mono.decl * 'state
98 end 109 end
99 110
100 structure File : sig 111 structure File : sig
101 datatype binder = datatype Exp.binder 112 datatype binder = datatype Exp.binder
102 113