Commit graph

48 commits

Author SHA1 Message Date
Shunsuke Shibayama
59f6046916 Fix method type inference for type variables 2022-10-06 00:27:43 +09:00
Shunsuke Shibayama
9751cf5d76 Fix type checking of union/intersection types 2022-10-05 00:43:30 +09:00
Shunsuke Shibayama
29763062af Add ParamTy::KwWithDefault 2022-10-05 00:17:26 +09:00
Shunsuke Shibayama
a3f71120ae Fix type inferring bugs 2022-10-04 12:53:05 +09:00
Shunsuke Shibayama
1846767afa remove todo!()s 2022-10-03 12:25:28 +09:00
Shunsuke Shibayama
4f6fbb50d0 Delete useless parameters 2022-10-03 00:46:39 +09:00
Shunsuke Shibayama
60bc94058a Changed type of tmp_tv_ctx from &mut to & 2022-10-02 20:12:25 +09:00
Shunsuke Shibayama
05c434781b Fix a type instantiating bug 2022-10-02 11:37:01 +09:00
Shunsuke Shibayama
3147dfb1d8 Fixed to define subroutine as Type::Failure even if type checking fails 2022-10-01 16:07:03 +09:00
Shunsuke Shibayama
db84321ff8 Add type definitions for open! and with! 2022-09-29 21:50:28 +09:00
Shunsuke Shibayama
23a6f630c9 Fix import to be called from anywhere 2022-09-29 11:48:38 +09:00
Shunsuke Shibayama
f548f9e6ef Add type specification for array and range types 2022-09-28 00:05:23 +09:00
Shunsuke Shibayama
348a37a746 Fix to continue compilation even if module compilation fails 2022-09-27 23:18:15 +09:00
Shunsuke Shibayama
aacad4fc8e Fix type ascription bugs 2022-09-26 14:50:28 +09:00
Shunsuke Shibayama
f1b8b5a6b8 Fix inferring bugs 2022-09-26 01:04:42 +09:00
Shunsuke Shibayama
e2b4b3fb07 Update instantiate.rs 2022-09-25 21:39:47 +09:00
Shunsuke Shibayama
d11b05ecff Fix inferring bugs 2022-09-25 21:32:49 +09:00
Shunsuke Shibayama
93388ddf80 Fix inferring bugs 2022-09-25 21:05:12 +09:00
Shunsuke Shibayama
9a4a702ebe Fixed to allow types to be uniquely determined between modules 2022-09-22 13:23:43 +09:00
Shunsuke Shibayama
29bf88e4b9 Update instantiate.rs 2022-09-21 21:43:01 +09:00
Shunsuke Shibayama
e4eed24a42 WIP: trait implementation 2022-09-17 22:26:56 +09:00
Shunsuke Shibayama
abb6bcd320 WIP: trait implementation 2022-09-17 20:39:13 +09:00
Shunsuke Shibayama
3b7eebe041 WIP: Implement explicit type variable declarations 2022-09-17 17:25:07 +09:00
Shunsuke Shibayama
aa527dcbc8 WIP: impl Trait 2022-09-17 01:42:49 +09:00
Shunsuke Shibayama
91b7ba3c05 Add TypeAppArgs 2022-09-16 15:27:19 +09:00
Shunsuke Shibayama
bc6eb37e39 Improve: show candidates for unification of projection-types 2022-09-13 15:34:27 +09:00
Shunsuke Shibayama
605c2fc07e WIP: Fix type inferring bugs 2022-09-13 02:38:14 +09:00
Shunsuke Shibayama
1947f7518a Follow the latest changes and correct warnings 2022-09-10 21:33:13 +09:00
Yuna Tomida
d956c3f61d
Follow clippy warnings 2022-09-10 17:32:25 +09:00
Shunsuke Shibayama
60b7cce52e Fix bugs related to Ref/RefMut 2022-09-08 13:47:49 +09:00
Shunsuke Shibayama
1b4c9aa9c3 Move eval.rs to context 2022-09-05 23:50:32 +09:00
Shunsuke Shibayama
fb0d2f5737 Refactor 2022-09-05 11:11:57 +09:00
Shunsuke Shibayama
2320ff0360 Refactor 2022-09-05 10:11:03 +09:00
Shunsuke Shibayama
cf0858ddde Add TypeObj 2022-09-04 00:46:15 +09:00
Shunsuke Shibayama
22cb113fcd Unify Type::Class/Trait 2022-09-03 22:22:49 +09:00
Shunsuke Shibayama
c4bff5d54a Add some const funcs & Remove Evaluator 2022-09-03 01:45:00 +09:00
Shunsuke Shibayama
de7832bf33 Implement variable-length/keyword arguments 2022-08-30 20:31:56 +09:00
Shunsuke Shibayama
0a851d83d2 Fix: display the parameter name when a type error is caused 2022-08-30 05:52:27 +09:00
Shunsuke Shibayama
99ffee35b2 Implement access to array/tuple elements 2022-08-29 21:59:17 +09:00
Shunsuke Shibayama
b730383065 Fix a type inference bug for dependent procedural methods 2022-08-29 00:48:52 +09:00
Shunsuke Shibayama
026b891c22 WIP: Improve type inference system 2022-08-27 23:51:35 +09:00
Shunsuke Shibayama
263bf70baf WIP: fix stack overflow bug 2022-08-27 01:31:18 +09:00
Shunsuke Shibayama
baab3f1f90 WIP: Restructuring Context 2022-08-26 23:22:45 +09:00
Shunsuke Shibayama
6727b00054 Split custom types into Class and Trait 2022-08-26 17:24:55 +09:00
Shunsuke Shibayama
400c173f38 Move all constructors of Type to constructors 2022-08-26 12:39:35 +09:00
Shunsuke Shibayama
5b5234f477 Create erg_type crate 2022-08-26 11:52:11 +09:00
Shunsuke Shibayama
b2322c7fd7 Split ty module into several modules 2022-08-26 09:27:51 +09:00
Shunsuke Shibayama
c4986248f0 Divide Context into some modules by functions 2022-08-26 08:36:25 +09:00