Skip to content

Commit 468c6e8

Browse files
author
chengyifan
committed
Merge branch 'main' of github.com:Mutefish0/typescript-computer
2 parents 1e67d71 + 6d501ee commit 468c6e8

File tree

2 files changed

+12
-9
lines changed

2 files changed

+12
-9
lines changed

README.md

+9-7
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,17 @@
22

33
Computations with typescrip types 🪄
44

5-
// Type convert
5+
<img width="706" alt="截屏2022-05-23 上午1 28 02" src="https://user-images.githubusercontent.com/15227926/169707800-5812ba91-4f97-4a41-9b78-7d3fd77a61eb.png">
6+
7+
8+
## Type Conversion
69

710
```ts
811
type DEMO0 = $$Number<"8">["value"]; // 8
912
type DEMO00 = $$Number<8>["print"]; // "8"
1013
```
1114

12-
// Math
15+
## Math
1316

1417
```ts
1518
type DEMO1 = $Add<3, 4>["print"]; // 7
@@ -19,7 +22,7 @@ type DEMO4 = $Multiply<4, 8>["print"]; // 32
1922
type DEMO6 = $Divide<24, 3>["print"]; // 8
2023
```
2124

22-
// Logical
25+
## Logical
2326

2427
```ts
2528
type DEMO_4_gt_5 = $GT<4, 5>; // 0
@@ -33,10 +36,9 @@ type DEMO_and = $AND<DEMO_0_eq_0, DEMO_1_eq_0>; // 0
3336
type DEMO_or = $OR<DEMO_0_eq_0, DEMO_1_eq_0>; // 1
3437
```
3538

36-
// Functions
37-
38-
// fibonacci
39+
## Functions
3940

41+
### Fibonacci
4042
```ts
4143
type Fibonacci<
4244
I extends number,
@@ -57,7 +59,7 @@ type Fibonacci<
5759
type F0 = Fibonacci<10>; // 1, 1, 2, 3, 5, 8, 13, 21, 34, 55
5860
```
5961

60-
// reduceSum
62+
### ReduceSum
6163

6264
```ts
6365
type ReduceSum<

core.ts

+3-2
Original file line numberDiff line numberDiff line change
@@ -198,8 +198,9 @@ type $EQZ<
198198
X extends $Number | number,
199199
X1 extends $Number = X extends $Number ? X : $$Number<$CastType<X, number, 0>>
200200
> = X1["value"] extends 0 ? 1 : 0;
201-
type $GTZ<X extends $Number> = $NOT<X["sign"]>;
202-
type $LTZ<X extends $Number> = X["sign"];
201+
202+
type $GTZ<X extends $Number> = X extends $$Number<0> ? 0 : $NOT<X["sign"]>;
203+
type $LTZ<X extends $Number> = X extends $$Number<0> ? 0 : X["sign"];
203204

204205
// 加法
205206
type $Add<

0 commit comments

Comments
 (0)