chore: add TyParam::proj_call

This commit is contained in:
Shunsuke Shibayama 2023-07-30 12:44:17 +09:00
parent 664f265716
commit 1ea2c74aaa
15 changed files with 408 additions and 191 deletions

View file

@ -347,7 +347,7 @@ impl Context {
Some(FUNDAMENTAL_EXIT),
);
/* Shape */
let S = mono_q(TY_S, instanceof(unknown_len_array_t(Nat)));
let S = mono_q_tp(TY_S, instanceof(unknown_len_array_t(Nat)));
let params = vec![PS::named_nd("S", unknown_len_array_t(Nat))];
let shape = Self::builtin_poly_trait(SHAPE, params.clone(), 2);
/* Num */
@ -545,7 +545,7 @@ impl Context {
Const,
None,
);
self.register_builtin_type(poly(SHAPE, vec![ty_tp(S)]), shape, vis.clone(), Const, None);
self.register_builtin_type(poly(SHAPE, vec![S]), shape, vis.clone(), Const, None);
self.register_builtin_type(poly(ADD, ty_params.clone()), add, vis.clone(), Const, None);
self.register_builtin_type(poly(SUB, ty_params.clone()), sub, vis.clone(), Const, None);
self.register_builtin_type(poly(MUL, ty_params.clone()), mul, vis.clone(), Const, None);