diff options
Diffstat (limited to 'src/source.sml')
-rw-r--r-- | src/source.sml | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/source.sml b/src/source.sml index 639ea716..2a741dd9 100644 --- a/src/source.sml +++ b/src/source.sml @@ -125,7 +125,7 @@ and exp' = | EKAbs of string * exp - | ERecord of (con * exp) list + | ERecord of (con * exp) list * bool | EField of exp * con | EConcat of exp * exp | ECut of exp * con @@ -147,6 +147,13 @@ and pat = pat' located and exp = exp' located and edecl = edecl' located +datatype ffi_mode = + Effectful + | BenignEffectful + | ClientOnly + | ServerOnly + | JsFunc of string + datatype decl' = DCon of string * kind option * con | DDatatype of (string * string list * (string * con option) list) list @@ -169,6 +176,7 @@ datatype decl' = | DTask of exp * exp | DPolicy of exp | DOnError of string * string list * string + | DFfi of string * ffi_mode list * con and str' = StrConst of decl list |