Commit graph

50 commits

Author SHA1 Message Date
Shunsuke Shibayama
23a6f630c9 Fix import to be called from anywhere 2022-09-29 11:48:38 +09:00
Shunsuke Shibayama
348a37a746 Fix to continue compilation even if module compilation fails 2022-09-27 23:18:15 +09:00
Shunsuke Shibayama
f1b8b5a6b8 Fix inferring bugs 2022-09-26 01:04:42 +09:00
Shunsuke Shibayama
9ccfdadf22 Add TypeAscription 2022-09-25 20:05:52 +09:00
Shunsuke Shibayama
7ec5af53d9 Fix: fake class -> real module 2022-09-23 00:16:45 +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
9b0d66a63a Add "check" mode
Input::File(String) -> Input::file(PathBuf)
2022-09-21 14:01:20 +09:00
Shunsuke Shibayama
f95ff44907 Fix tyvar.rs 2022-09-18 00:31:35 +09:00
Shunsuke Shibayama
abb6bcd320 WIP: trait implementation 2022-09-17 20:39:13 +09:00
Shunsuke Shibayama
aa527dcbc8 WIP: impl Trait 2022-09-17 01:42:49 +09:00
Shunsuke Shibayama
d7ffb211a8 let errors more readable 2022-09-16 00:35:58 +09:00
Shunsuke Shibayama
7455c4ac0f Delete resolve_trait 2022-09-16 00:19:51 +09:00
Shunsuke Shibayama
bc6eb37e39 Improve: show candidates for unification of projection-types 2022-09-13 15:34:27 +09:00
Shunsuke Shibayama
87a7a3afdf WIP: Fix unifying algorithm
Delete `unify` (only use `sub_unify`)
2022-09-13 12:55:16 +09:00
Shunsuke Shibayama
605c2fc07e WIP: Fix type inferring bugs 2022-09-13 02:38:14 +09:00
Shunsuke Shibayama
2606638253 Update built-in types definitions 2022-09-12 15:50:53 +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
3895d29669 Fix visibility bugs 2022-09-10 01:42:23 +09:00
Shunsuke Shibayama
60b7cce52e Fix bugs related to Ref/RefMut 2022-09-08 13:47:49 +09:00
Shunsuke Shibayama
5029d71cbe Impl: auto generating of new 2022-09-07 14:48:02 +09:00
Shunsuke Shibayama
1ae7633501 Merge branch 'main' into class 2022-09-06 21:55:53 +09:00
Shunsuke Shibayama
36aa226d10 Impl Linker 2022-09-06 14:43:01 +09:00
Shunsuke Shibayama
7e08f0b0c6 Fix type checker bugs 2022-09-05 23:46:31 +09:00
Shunsuke Shibayama
4a8572a9fe Fix type inference imcompleteness
Add intersection type inference
2022-09-05 21:55:16 +09:00
Shunsuke Shibayama
fb0d2f5737 Refactor 2022-09-05 11:11:57 +09:00
Shunsuke Shibayama
25094efd17 Refactor 2022-09-05 11:09:51 +09:00
Shunsuke Shibayama
2320ff0360 Refactor 2022-09-05 10:11:03 +09:00
Shunsuke Shibayama
e860da2a15 WIP: impl type checker 2022-09-05 01:13:14 +09:00
Cai Bingjun
51de3c9d5a Set Erg's markdown snippet highlighting to Python 2022-09-04 12:01:06 +08:00
Shunsuke Shibayama
22cb113fcd Unify Type::Class/Trait 2022-09-03 22:22:49 +09:00
Shunsuke Shibayama
924ab27369 Add hir::MethodDefs 2022-09-03 15:53:09 +09:00
Shunsuke Shibayama
c4bff5d54a Add some const funcs & Remove Evaluator 2022-09-03 01:45:00 +09:00
Shunsuke Shibayama
3550a0e4b5 Add hint.rs in context 2022-09-02 01:20:35 +09:00
Shunsuke Shibayama
824f85e18c Update tyvar.rs 2022-08-30 21:23:08 +09:00
Shunsuke Shibayama
de7832bf33 Implement variable-length/keyword arguments 2022-08-30 20:31:56 +09:00
Yuna Tomida
95c70f4aed
make debug log easier to see 2022-08-30 10:57:30 +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
451d94d31b Impl Tuple type checking & code generating 2022-08-29 12:41:14 +09:00
Shunsuke Shibayama
b730383065 Fix a type inference bug for dependent procedural methods 2022-08-29 00:48:52 +09:00
Shunsuke Shibayama
4232243842 Fix type system bugs 2022-08-28 01:41:36 +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