Commit graph

92 commits

Author SHA1 Message Date
Shunsuke Shibayama
0f04d27c0e chore: add Unifier::sub_unify_value 2024-05-08 14:18:37 +09:00
Shunsuke Shibayama
fa2c53461d fix: generalization is not performed for some types 2024-05-07 22:31:17 +09:00
Shunsuke Shibayama
86cfe8f81a feat: add HomogenousTuple
fix: iterator bugs
2024-04-27 00:28:03 +09:00
Shunsuke Shibayama
4396695ad6 fix: default parameter bug 2024-04-24 13:54:56 +09:00
Shunsuke Shibayama
1f88084360 feat: best-effort type instantiation 2024-04-20 22:51:14 +09:00
Shunsuke Shibayama
c6eb78a44d refactor!: rename Array -> List 2024-04-04 23:24:07 +09:00
Shunsuke Shibayama
8722bb3dd0 perf: cache generalization results 2024-03-26 01:20:56 +09:00
Shunsuke Shibayama
bd39393746 feat: type narrowing with filter 2024-03-21 11:56:17 +09:00
Shunsuke Shibayama
f612340e80 fix: range type definition bug 2024-02-26 01:35:41 +09:00
Shunsuke Shibayama
0bedeb51ab feat: support using attributes in predicate 2024-02-24 13:23:02 +09:00
Shunsuke Shibayama
e236a65c21 fix: refinement type assert cast bug 2024-02-14 20:09:13 +09:00
Shunsuke Shibayama
d1fa616aea feat: eval const call/lambda in refinement types
rename: `Shape` -> `HasShape`
2024-01-29 18:10:26 +09:00
Shunsuke Shibayama
06a4a6e5fc feat: add Predicate::General{Less, Greater, Not}Equal 2024-01-28 20:24:14 +09:00
Shunsuke Shibayama
8350ad0581 chore: improve refinement types display 2024-01-28 19:34:03 +09:00
Shunsuke Shibayama
4393649ffc feat: add Predicate::{Call, GeneralEqual} 2024-01-28 18:33:00 +09:00
Shunsuke Shibayama
b5f5876631 fix: closure bug 2023-12-28 23:31:09 +09:00
Shunsuke Shibayama
03a45de495 fix: type-var generalization bug 2023-12-16 12:06:32 +09:00
Shunsuke Shibayama
529d3892bf fix: container type inference bugs 2023-12-11 00:15:13 +09:00
Shunsuke Shibayama
21025096a3 fix: type-var instantiation bugs 2023-11-25 02:56:25 +09:00
Shunsuke Shibayama
4407999c19 feat: add SubrType::kw_var_params 2023-11-12 12:22:48 +09:00
Shunsuke Shibayama
21c937e633 chore: add hir::Methods 2023-11-05 01:18:32 +09:00
Shunsuke Shibayama
6058339e3f chore: add TypeContext, MethodContext 2023-10-29 17:33:21 +09:00
Shunsuke Shibayama
ac0ca49724 fix: attribute completion 2023-10-22 14:48:35 +09:00
Shunsuke Shibayama
f676f22d6c fix: planner bug 2023-10-08 02:15:25 +09:00
Shunsuke Shibayama
cce95e7210 fix: crack crash 2023-10-02 21:50:59 +09:00
Shunsuke Shibayama
f1d71e0dab feat: add [x; _] literal 2023-10-02 20:49:21 +09:00
Shunsuke Shibayama
7729b73809 fix: dict iterators bug 2023-09-06 00:56:07 +09:00
Shunsuke Shibayama
0c89ca99cd chore: impl TryFrom<Expr> for $Variant 2023-09-02 00:55:51 +09:00
Shunsuke Shibayama
653993f637 fix: const record member definition 2023-08-26 16:44:00 +09:00
Shunsuke Shibayama
46c7982335 chore: eliminate todo!s 2023-08-24 23:54:31 +09:00
Shunsuke Shibayama
936b6e2f95 chore: eliminate clippy warns 2023-08-24 23:38:27 +09:00
Shunsuke Shibayama
dc7e0a341d feat: enhance assert casting 2023-08-23 01:52:16 +09:00
Shunsuke Shibayama
3724a74649 fix: undo leak bug & sub-unification bugs 2023-08-22 21:45:25 +09:00
Shunsuke Shibayama
ea0089f7df feat: add Type::NamedTuple 2023-08-17 02:00:44 +09:00
Shunsuke Shibayama
28d173758f chore: add TyParam::DataClass 2023-08-15 01:23:53 +09:00
Shunsuke Shibayama
974882490c fix: generalization bug 2023-08-13 01:42:23 +09:00
Shunsuke Shibayama
2e9fb48f2e fix: in operator
* remove `In` trait, `__in__`, `__notin__` function
* desugar to `__contains__`
* impl Collection for Array, Set, Tuple
2023-08-13 01:01:06 +09:00
Shunsuke Shibayama
187259a008 fix: trait bound bug 2023-08-07 22:43:03 +09:00
Shunsuke Shibayama
d46ce0ff0c chore: add Substituter 2023-08-07 21:25:17 +09:00
Shunsuke Shibayama
f4e1d494a4 fix: array type inferring 2023-08-06 22:51:13 +09:00
Shunsuke Shibayama
142db9b697 refactor: link -> destructive_link 2023-08-06 20:13:45 +09:00
Shunsuke Shibayama
b45041e926 fix: refinement subtyping bug 2023-08-04 16:12:57 +09:00
Shunsuke Shibayama
1ea2c74aaa chore: add TyParam::proj_call 2023-07-30 13:05:39 +09:00
Shunsuke Shibayama
e3b479ebf7 feat: polymorphic type class members 2023-07-14 01:53:06 +09:00
Shunsuke Shibayama
75f4c206f6 feat: parallelize the analysis process 2023-06-18 15:58:32 +09:00
Shunsuke Shibayama
26be281137 fix: infinte recursion bug 2023-06-10 23:04:23 +09:00
Shunsuke Shibayama
0840d9bf60 fix: subtyping bug 2023-06-10 11:16:30 +09:00
Shunsuke Shibayama
5052ebb077 feat: impl polymorphic type declaration 2023-06-04 01:34:20 +09:00
Shunsuke Shibayama
b8b312caad chore: eliminate unsafe operations 2023-05-28 10:31:39 +09:00
Shunsuke Shibayama
7049faf144 fix: eliminate unsafe type-var updating 2023-05-27 23:09:15 +09:00