Commit graph

134 commits

Author SHA1 Message Date
Shunsuke Shibayama
f3b188e095 feat: support recursive class definition 2023-08-25 21:02:47 +09:00
Shunsuke Shibayama
936b6e2f95 chore: eliminate clippy warns 2023-08-24 23:38:27 +09:00
Shunsuke Shibayama
75081ac3aa fix: type-parameter unification 2023-08-23 18:02:04 +09:00
Shunsuke Shibayama
3724a74649 fix: undo leak bug & sub-unification bugs 2023-08-22 21:45:25 +09:00
Shunsuke Shibayama
a0ce142f7b chore: add record examples 2023-08-20 10:58:33 +09:00
Shunsuke Shibayama
5e71bd7fd0 feat: add Record.as_dict() 2023-08-20 02:02:53 +09:00
Shunsuke Shibayama
927de74eee chore: add Self substitution 2023-08-17 19:25:17 +09:00
Shunsuke Shibayama
83beaea214 fix: type substitution bugs 2023-08-15 13:55:21 +09:00
Shunsuke Shibayama
28d173758f chore: add TyParam::DataClass 2023-08-15 01:23:53 +09:00
Shunsuke Shibayama
5f6d530602 fix: type substitution bug 2023-08-13 13:44:52 +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
4f93c393c0 fix: trait registering bugs 2023-08-12 23:31:44 +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
debac5726e fix: undoable link 2023-08-06 01:02:34 +09:00
Shunsuke Shibayama
b5ff509b5d fix: sub-unification bug 2023-08-04 20:05:18 +09:00
Shunsuke Shibayama
bd023c70d2 chore: improve error display 2023-08-04 16:24:03 +09:00
Shunsuke Shibayama
0dd5ac0775 Merge branch 'main' into shape 2023-08-02 15:59:24 +09:00
Shunsuke Shibayama
f298db96d1 fix: warn unused type variables 2023-08-02 15:07:31 +09:00
Shunsuke Shibayama
6c3536cc31 fix: declaration bugs 2023-07-31 11:08:53 +09:00
Shunsuke Shibayama
df7dbcda4b chore: let const funcs return TyParam instead of ValueObj 2023-07-30 15:02:32 +09:00
Shunsuke Shibayama
1ea2c74aaa chore: add TyParam::proj_call 2023-07-30 13:05:39 +09:00
Shunsuke Shibayama
9308a910ca fix: #442 2023-07-24 09:32:31 +09:00
Shunsuke Shibayama
072d62f7b3 fix: reduce unreachables 2023-07-15 12:40:23 +09:00
Shunsuke Shibayama
0152e368ab feat: support Array, Str, Bytes slice 2023-07-15 12:29:07 +09:00
Shunsuke Shibayama
e3b479ebf7 feat: polymorphic type class members 2023-07-14 01:53:06 +09:00
Shunsuke Shibayama
9025fe7e99 feat: add bin/oct/hex literal 2023-07-12 16:31:39 +09:00
Shunsuke Shibayama
5ea48ab88e fix: desugaring leaks 2023-06-10 13:46:10 +09:00
Shunsuke Shibayama
0840d9bf60 fix: subtyping bug 2023-06-10 11:16:30 +09:00
Shunsuke Shibayama
c8ea6f6c9b fix: nested polymorphic type check bug 2023-06-06 00:04:18 +09:00
Shunsuke Shibayama
c31e93052b fix: infinite recursion bugs 2023-05-25 18:03:43 +09:00
Shunsuke Shibayama
379caacce9 fix: subtyping bugs 2023-05-20 21:43:53 +09:00
Shunsuke Shibayama
06001bfc13 feat: refinement type specification 2023-05-20 16:40:26 +09:00
Shunsuke Shibayama
9cb98b8af0 fix: polymorphic subtyping bug 2023-05-18 22:48:31 +09:00
Shunsuke Shibayama
f39836abb0 fix: bugs generating unintended circular references 2023-05-18 18:38:44 +09:00
Shunsuke Shibayama
470c06675f fix: subtyping bugs 2023-05-10 17:21:05 +09:00
Shunsuke Shibayama
44930f1c25 fix: type declaration bugs 2023-05-06 00:09:56 +09:00
Shunsuke Shibayama
d573d07f20 chore: enhance the compile-time evaluator 2023-05-04 22:12:58 +09:00
Shunsuke Shibayama
0603998bfc chore: add Context::convert_value_into_type 2023-05-03 15:03:28 +09:00
Shunsuke Shibayama
730886021e feat: add special namespaces module/global 2023-05-03 14:32:09 +09:00
Shunsuke Shibayama
3f2793f915 chore: remove TokenKind::NoImplLit 2023-05-02 23:11:51 +09:00
Shunsuke Shibayama
c84294fc11 chore(els): let FileCache: Send + Sync 2023-05-01 23:27:53 +09:00
Shunsuke Shibayama
68a233e6c3 fix: type-parameter instantiation bugs
add `itertools` module type definition
2023-04-29 22:38:36 +09:00
Shunsuke Shibayama
a96b0102cd fix: dict subtyping bugs 2023-04-29 11:38:25 +09:00
Shunsuke Shibayama
245d9eee84 fix: dict typing bugs 2023-04-27 15:51:56 +09:00
Shunsuke Shibayama
1e72cf20f1 fix: casting bugs 2023-04-27 13:58:15 +09:00
Shunsuke Shibayama
66cac2ccc2 fix: bugs & remove TypeCmpCache 2023-04-27 13:10:33 +09:00
Shunsuke Shibayama
6cb4e75fea feat: add bit operators &&/||/^^ 2023-04-25 09:55:20 +09:00