summaryrefslogtreecommitdiff
path: root/src/initial_check.ml
diff options
context:
space:
mode:
authorAlasdair Armstrong2018-04-12 17:45:41 +0100
committerAlasdair Armstrong2018-04-18 14:17:26 +0100
commit127776db287e44521606debed8c4eaa125516c62 (patch)
tree06d1ce925124bf0ea793d2c29216ac36ddea6b95 /src/initial_check.ml
parent6241cb04b8500e52413ab5b84737247cbfe44d45 (diff)
Updates to latex mode for documentation
Diffstat (limited to 'src/initial_check.ml')
-rw-r--r--src/initial_check.ml8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/initial_check.ml b/src/initial_check.ml
index 06ee1f65..b8c70e57 100644
--- a/src/initial_check.ml
+++ b/src/initial_check.ml
@@ -220,7 +220,9 @@ let rec to_ast_typ (k_env : kind Envmap.t) (def_ord : order) (t: Parse_ast.atyp)
[Typ_arg_aux (Typ_arg_nexp base,Parse_ast.Unknown);
Typ_arg_aux (Typ_arg_nexp rise,Parse_ast.Unknown);
Typ_arg_aux (Typ_arg_order def_ord,Parse_ast.Unknown);
- Typ_arg_aux (Typ_arg_typ (to_ast_typ k_env def_ord ti), Parse_ast.Unknown);])
+ Typ_arg_aux (Typ_arg_typ (to_ast_typ k_env def_ord ti), Parse_ast.Unknown);])
+ | Parse_ast.ATyp_app (Parse_ast.Id_aux (Parse_ast.Id "int", il), [n]) ->
+ Typ_app(Id_aux(Id "atom", il), [Typ_arg_aux (Typ_arg_nexp (to_ast_nexp k_env n), Parse_ast.Unknown)])
| Parse_ast.ATyp_app(pid,typs) ->
let id = to_ast_id pid in
let k = Envmap.apply k_env (id_to_string id) in
@@ -436,10 +438,12 @@ let rec to_ast_typ_pat (Parse_ast.ATyp_aux (typ_aux, l)) =
match typ_aux with
| Parse_ast.ATyp_wild -> TP_aux (TP_wild, l)
| Parse_ast.ATyp_var kid -> TP_aux (TP_var (to_ast_var kid), l)
+ | Parse_ast.ATyp_app (Parse_ast.Id_aux (Parse_ast.Id "int", il), typs) ->
+ TP_aux (TP_app (Id_aux (Id "atom", il), List.map to_ast_typ_pat typs), l)
| Parse_ast.ATyp_app (f, typs) ->
TP_aux (TP_app (to_ast_id f, List.map to_ast_typ_pat typs), l)
| _ -> typ_error l "Unexpected type in type pattern" None None None
-
+
let rec to_ast_pat (k_env : kind Envmap.t) (def_ord : order) (Parse_ast.P_aux(pat,l) : Parse_ast.pat) : unit pat =
P_aux(
(match pat with