Commit graph

145 commits

Author SHA1 Message Date
Shunsuke Shibayama
c32feb58ed perf: don't recheck in sub_unify 2024-09-27 11:01:55 +09:00
Shunsuke Shibayama
c965ea2c5b perf: cache subtype relation judgement 2024-09-26 23:49:32 +09:00
Shunsuke Shibayama
d90922c190 fix: recursive type bug 2024-09-26 16:45:21 +09:00
Shunsuke Shibayama
ff53af0cb6 feat: add RMul, RDiv
* `And` has the default type index
* impl `Dimension` traits
2024-09-20 20:36:55 +09:00
Shunsuke Shibayama
4651a383ae feat: add Dimension and unit module 2024-09-20 18:26:29 +09:00
Shunsuke Shibayama
df837d70d3 fix: sub-unification bug 2024-09-17 17:32:13 +09:00
Shunsuke Shibayama
461e91703a fix: union type bug (2) 2024-09-16 00:54:47 +09:00
Shunsuke Shibayama
3b9bbdf1a5 fix: union type bug 2024-09-15 17:11:06 +09:00
Shunsuke Shibayama
a0810adc9c Merge branch 'main' into perf_or_type 2024-09-15 12:49:18 +09:00
Shunsuke Shibayama
d87c5d552c fix: function subtyping bug 2024-09-15 12:48:33 +09:00
Shunsuke Shibayama
b0c31370c5 fix: Type::{And, Or}(Set<Type>) 2024-09-14 21:20:05 +09:00
Shunsuke Shibayama
beee3b8800 fix: recursion bugs of structural types 2024-09-10 23:21:39 +09:00
Shunsuke Shibayama
60ea11aa3e fix: eliminate unsafe operations 2024-09-09 11:42:39 +09:00
Shunsuke Shibayama
f9eb562848 fix: infinite recursion bug
add `Immutable` trait (Type: !Immutable)
2024-09-04 20:38:46 +09:00
Shunsuke Shibayama
7cd895a30e chore: change logical operations order 2024-09-02 19:38:41 +09:00
Shunsuke Shibayama
9a05f22356 fix: infinite recursion bugs 2024-09-01 18:16:06 +09:00
Shunsuke Shibayama
06412bf7d2 chore: add Context::intersection_tp 2024-08-29 16:49:57 +09:00
Shunsuke Shibayama
73f8be7ae1 fix: add set_recursion_limit! 2024-08-29 13:56:38 +09:00
Shunsuke Shibayama
de3b3a467b chore: remove ValueObj: TryFrom<TyParam> 2024-08-29 13:54:34 +09:00
Shunsuke Shibayama
bc50ceeb6a fix: method subtyping 2024-08-21 11:28:17 +09:00
Shunsuke Shibayama
af360a52cc fix: constructor typing 2024-08-20 22:26:02 +09:00
Shunsuke Shibayama
33b0212002 feat: set type variable 2024-08-19 22:45:15 +09:00
Shunsuke Shibayama
8eb8cd7c4a chore: union method type 2024-08-19 12:30:23 +09:00
Shunsuke Shibayama
e1ffa2d739 fix: borrow error 2024-08-16 15:00:12 +09:00
Shunsuke Shibayama
0875c7e5c9 fix: structural type check 2024-08-09 13:38:04 +09:00
Shunsuke Shibayama
fa2c53461d fix: generalization is not performed for some types 2024-05-07 22:31:17 +09:00
Shunsuke Shibayama
1c699cc2f3 feat: add Sealed trait 2024-04-27 13:52:15 +09:00
Shunsuke Shibayama
3d7283cb01 fix: {default, variable} parameter bugs 2024-04-24 15:24:05 +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
56f06a0a1e chore: eliminate unwraps 2024-03-25 15:14:48 +09:00
Shunsuke Shibayama
ce5eafca9b feat: improve record type narrowing 2024-03-24 18:18:09 +09:00
Shunsuke Shibayama
7d6ea6cf77 chore: add sub_unify_with_coercion 2024-03-21 14:00:26 +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
c74513f507 fix: eliminate unwraps 2024-02-24 23:02:59 +09:00
Shunsuke Shibayama
0bedeb51ab feat: support using attributes in predicate 2024-02-24 13:23:02 +09:00
Shunsuke Shibayama
918f146d08 fix: transpiler bug 2024-02-18 17:14:41 +09:00
Shunsuke Shibayama
e236a65c21 fix: refinement type assert cast bug 2024-02-14 20:09:13 +09:00
Shunsuke Shibayama
90061f0fc1 fix: subr type with defaults instantiation bug 2024-02-07 14:48:39 +09:00
Shunsuke Shibayama
58514c5890 chore: add Subroutine & GenericCallable is now a trait 2024-02-07 13:23:09 +09:00
Shunsuke Shibayama
b8fe8fb205 fix: subtype check bug 2024-02-04 17:29:34 +09:00
Shunsuke Shibayama
9c9f8b7a0a fix: subtype relation bug 2024-02-03 19:36:27 +09:00
Shunsuke Shibayama
7ed39e3281 fix: dependent refinement type bug 2024-01-30 01:06:03 +09:00
Shunsuke Shibayama
6b5af0ffb4 chore: fix type variance bug 2024-01-28 23:12:48 +09:00
Shunsuke Shibayama
06a4a6e5fc feat: add Predicate::General{Less, Greater, Not}Equal 2024-01-28 20:24:14 +09:00
Shunsuke Shibayama
4393649ffc feat: add Predicate::{Call, GeneralEqual} 2024-01-28 18:33:00 +09:00
Shunsuke Shibayama
a2d1809cee fix: cyclic reference modules bugs 2023-12-28 14:59:14 +09:00
Shunsuke Shibayama
529d3892bf fix: container type inference bugs 2023-12-11 00:15:13 +09:00
Shunsuke Shibayama
641a60bda6 feat: support and/or guard type 2023-10-31 13:47:42 +09:00