Skip to content

Commit 4c40418

Browse files
committed
Explicit resource management support
Refs: https://github.com/tc39/proposal-explicit-resource-management
1 parent 9712f77 commit 4c40418

File tree

11 files changed

+1797
-1540
lines changed

11 files changed

+1797
-1540
lines changed

gen/function_source.c

+16-16
Original file line numberDiff line numberDiff line change
@@ -14,34 +14,34 @@ const uint8_t qjsc_function_source[324] = {
1414
0x34, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f,
1515
0x6e, 0x20, 0x66, 0x28, 0x29, 0x20, 0x7b, 0x20,
1616
0x72, 0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x34,
17-
0x32, 0x20, 0x7d, 0x0d, 0xc0, 0x03, 0x00, 0x00,
18-
0x00, 0x00, 0x00, 0x0c, 0x20, 0x0a, 0x01, 0xa2,
17+
0x32, 0x20, 0x7d, 0x0d, 0xca, 0x03, 0x00, 0x00,
18+
0x00, 0x00, 0x00, 0x0c, 0x20, 0x0a, 0x01, 0xa4,
1919
0x01, 0x00, 0x05, 0x00, 0x03, 0x02, 0x01, 0x74,
20-
0x05, 0xc2, 0x03, 0x02, 0x00, 0x30, 0xc4, 0x03,
21-
0x04, 0x00, 0x70, 0xc2, 0x03, 0x04, 0x02, 0x70,
22-
0x10, 0x00, 0x01, 0x00, 0xe4, 0x01, 0x00, 0x01,
23-
0x00, 0xc6, 0x03, 0x00, 0x0d, 0xc4, 0x03, 0x01,
24-
0x01, 0x0c, 0x43, 0x0a, 0x01, 0xc4, 0x03, 0x00,
20+
0x05, 0xcc, 0x03, 0x02, 0x00, 0x30, 0xce, 0x03,
21+
0x04, 0x00, 0x70, 0xcc, 0x03, 0x04, 0x02, 0x70,
22+
0x10, 0x00, 0x01, 0x00, 0xe6, 0x01, 0x00, 0x01,
23+
0x00, 0xd0, 0x03, 0x00, 0x0d, 0xce, 0x03, 0x01,
24+
0x01, 0x0c, 0x43, 0x0a, 0x01, 0xce, 0x03, 0x00,
2525
0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x00, 0xbd,
26-
0x2a, 0x28, 0xc0, 0x03, 0x03, 0x01, 0x00, 0x1a,
26+
0x2a, 0x28, 0xca, 0x03, 0x03, 0x01, 0x00, 0x1a,
2727
0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e,
2828
0x20, 0x66, 0x28, 0x29, 0x20, 0x7b, 0x20, 0x72,
2929
0x65, 0x74, 0x75, 0x72, 0x6e, 0x20, 0x34, 0x32,
3030
0x20, 0x7d, 0x0c, 0x03, 0xc3, 0x04, 0x08, 0xcd,
3131
0x08, 0xeb, 0x05, 0xc0, 0x00, 0xe3, 0x29, 0x04,
32-
0xe4, 0x00, 0x00, 0x00, 0xe2, 0x62, 0x00, 0x00,
33-
0xdf, 0x43, 0x38, 0x00, 0x00, 0x00, 0x24, 0x00,
32+
0xe9, 0x00, 0x00, 0x00, 0xe2, 0x62, 0x00, 0x00,
33+
0xdf, 0x43, 0x39, 0x00, 0x00, 0x00, 0x24, 0x00,
3434
0x00, 0xca, 0x63, 0x00, 0x00, 0x66, 0x00, 0x00,
35-
0xb0, 0xeb, 0x0b, 0x39, 0x95, 0x00, 0x00, 0x00,
35+
0xb0, 0xeb, 0x0b, 0x39, 0x96, 0x00, 0x00, 0x00,
3636
0x63, 0x00, 0x00, 0xf0, 0x30, 0x62, 0x02, 0x00,
37-
0x62, 0x01, 0x00, 0x39, 0x3b, 0x00, 0x00, 0x00,
38-
0x66, 0x00, 0x00, 0x04, 0xe2, 0x00, 0x00, 0x00,
37+
0x62, 0x01, 0x00, 0x39, 0x3c, 0x00, 0x00, 0x00,
38+
0x66, 0x00, 0x00, 0x04, 0xe7, 0x00, 0x00, 0x00,
3939
0x9e, 0x32, 0x01, 0x00, 0x03, 0x00, 0xcb, 0x63,
40-
0x01, 0x00, 0x43, 0x38, 0x00, 0x00, 0x00, 0x24,
40+
0x01, 0x00, 0x43, 0x39, 0x00, 0x00, 0x00, 0x24,
4141
0x00, 0x00, 0xcc, 0x63, 0x02, 0x00, 0x66, 0x00,
42-
0x00, 0xb0, 0xeb, 0x0b, 0x39, 0x95, 0x00, 0x00,
42+
0x00, 0xb0, 0xeb, 0x0b, 0x39, 0x96, 0x00, 0x00,
4343
0x00, 0x63, 0x02, 0x00, 0xf0, 0x30, 0x69, 0x02,
44-
0x00, 0x69, 0x01, 0x00, 0x06, 0x2f, 0xc0, 0x03,
44+
0x00, 0x69, 0x01, 0x00, 0x06, 0x2f, 0xca, 0x03,
4545
0x01, 0x01, 0x18, 0x00, 0x1c, 0x0a, 0x2a, 0x26,
4646
0x03, 0x20, 0x1c, 0x1b, 0x0c, 0x00, 0x10, 0x08,
4747
0x27, 0x11, 0x12, 0x67, 0x0d, 0x26, 0x03, 0x20,

gen/hello.c

+5-5
Original file line numberDiff line numberDiff line change
@@ -11,12 +11,12 @@ const uint8_t qjsc_hello[103] = {
1111
0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x01, 0x06,
1212
0x6c, 0x6f, 0x67, 0x01, 0x16, 0x48, 0x65, 0x6c,
1313
0x6c, 0x6f, 0x20, 0x57, 0x6f, 0x72, 0x6c, 0x64,
14-
0x0d, 0xc0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
15-
0x0c, 0x20, 0x0a, 0x01, 0xa2, 0x01, 0x00, 0x00,
14+
0x0d, 0xca, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00,
15+
0x0c, 0x20, 0x0a, 0x01, 0xa4, 0x01, 0x00, 0x00,
1616
0x00, 0x03, 0x00, 0x00, 0x19, 0x00, 0x08, 0xeb,
17-
0x02, 0x29, 0x39, 0xe1, 0x00, 0x00, 0x00, 0x43,
18-
0xe2, 0x00, 0x00, 0x00, 0x04, 0xe3, 0x00, 0x00,
19-
0x00, 0x24, 0x01, 0x00, 0x0e, 0x06, 0x2f, 0xc0,
17+
0x02, 0x29, 0x39, 0xe6, 0x00, 0x00, 0x00, 0x43,
18+
0xe7, 0x00, 0x00, 0x00, 0x04, 0xe8, 0x00, 0x00,
19+
0x00, 0x24, 0x01, 0x00, 0x0e, 0x06, 0x2f, 0xca,
2020
0x03, 0x01, 0x01, 0x02, 0x48, 0x0e, 0x00,
2121
};
2222

gen/hello_module.c

+19-19
Original file line numberDiff line numberDiff line change
@@ -9,17 +9,17 @@ const uint8_t qjsc_fib_module[290] = {
99
0x70, 0x6c, 0x65, 0x73, 0x2f, 0x66, 0x69, 0x62,
1010
0x5f, 0x6d, 0x6f, 0x64, 0x75, 0x6c, 0x65, 0x2e,
1111
0x6a, 0x73, 0x01, 0x06, 0x66, 0x69, 0x62, 0x01,
12-
0x02, 0x6e, 0x0d, 0xc0, 0x03, 0x00, 0x01, 0x00,
13-
0x00, 0xc2, 0x03, 0x00, 0x00, 0x00, 0x0c, 0x20,
14-
0x0a, 0x01, 0xa2, 0x01, 0x00, 0x00, 0x00, 0x01,
15-
0x01, 0x01, 0x09, 0x00, 0xc2, 0x03, 0x00, 0x01,
16-
0x0c, 0x43, 0x0a, 0x01, 0xc2, 0x03, 0x01, 0x00,
17-
0x01, 0x04, 0x01, 0x00, 0x1a, 0x01, 0xc4, 0x03,
18-
0x00, 0x01, 0x00, 0xc2, 0x03, 0x00, 0x00, 0xd2,
12+
0x02, 0x6e, 0x0d, 0xca, 0x03, 0x00, 0x01, 0x00,
13+
0x00, 0xcc, 0x03, 0x00, 0x00, 0x00, 0x0c, 0x20,
14+
0x0a, 0x01, 0xa4, 0x01, 0x00, 0x00, 0x00, 0x01,
15+
0x01, 0x01, 0x09, 0x00, 0xcc, 0x03, 0x00, 0x01,
16+
0x0c, 0x43, 0x0a, 0x01, 0xcc, 0x03, 0x01, 0x00,
17+
0x01, 0x04, 0x01, 0x00, 0x1a, 0x01, 0xce, 0x03,
18+
0x00, 0x01, 0x00, 0xcc, 0x03, 0x00, 0x00, 0xd2,
1919
0xb5, 0xa8, 0xeb, 0x03, 0xb5, 0x28, 0xd2, 0xb6,
2020
0xad, 0xeb, 0x03, 0xb6, 0x28, 0xde, 0xd2, 0xb6,
2121
0x9f, 0xf0, 0xde, 0xd2, 0xb7, 0x9f, 0xf0, 0x9e,
22-
0x28, 0xc0, 0x03, 0x02, 0x08, 0x0e, 0x09, 0x0c,
22+
0x28, 0xca, 0x03, 0x02, 0x08, 0x0e, 0x09, 0x0c,
2323
0x27, 0x0a, 0x28, 0x02, 0x07, 0x08, 0x11, 0x0a,
2424
0x07, 0x08, 0x07, 0x08, 0x8d, 0x01, 0x66, 0x75,
2525
0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x66,
@@ -40,7 +40,7 @@ const uint8_t qjsc_fib_module[290] = {
4040
0x20, 0x31, 0x29, 0x20, 0x2b, 0x20, 0x66, 0x69,
4141
0x62, 0x28, 0x6e, 0x20, 0x2d, 0x20, 0x32, 0x29,
4242
0x3b, 0x0a, 0x7d, 0x08, 0xeb, 0x05, 0xc0, 0x00,
43-
0xe2, 0x29, 0x06, 0x2f, 0xc0, 0x03, 0x01, 0x01,
43+
0xe2, 0x29, 0x06, 0x2f, 0xca, 0x03, 0x01, 0x01,
4444
0x00, 0x00,
4545
};
4646

@@ -58,17 +58,17 @@ const uint8_t qjsc_hello_module[187] = {
5858
0x01, 0x16, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x20,
5959
0x57, 0x6f, 0x72, 0x6c, 0x64, 0x01, 0x10, 0x66,
6060
0x69, 0x62, 0x28, 0x31, 0x30, 0x29, 0x3d, 0x0d,
61-
0xc0, 0x03, 0x01, 0xc2, 0x03, 0x00, 0x00, 0x01,
62-
0x00, 0xc4, 0x03, 0x00, 0x00, 0x0c, 0x20, 0x0a,
63-
0x01, 0xa2, 0x01, 0x00, 0x00, 0x00, 0x05, 0x01,
64-
0x00, 0x32, 0x00, 0xc4, 0x03, 0x00, 0x0c, 0x08,
65-
0xeb, 0x02, 0x29, 0x39, 0xe3, 0x00, 0x00, 0x00,
66-
0x43, 0xe4, 0x00, 0x00, 0x00, 0x04, 0xe5, 0x00,
67-
0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x39, 0xe3,
68-
0x00, 0x00, 0x00, 0x43, 0xe4, 0x00, 0x00, 0x00,
69-
0x04, 0xe6, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00,
61+
0xca, 0x03, 0x01, 0xcc, 0x03, 0x00, 0x00, 0x01,
62+
0x00, 0xce, 0x03, 0x00, 0x00, 0x0c, 0x20, 0x0a,
63+
0x01, 0xa4, 0x01, 0x00, 0x00, 0x00, 0x05, 0x01,
64+
0x00, 0x32, 0x00, 0xce, 0x03, 0x00, 0x0c, 0x08,
65+
0xeb, 0x02, 0x29, 0x39, 0xe8, 0x00, 0x00, 0x00,
66+
0x43, 0xe9, 0x00, 0x00, 0x00, 0x04, 0xea, 0x00,
67+
0x00, 0x00, 0x24, 0x01, 0x00, 0x0e, 0x39, 0xe8,
68+
0x00, 0x00, 0x00, 0x43, 0xe9, 0x00, 0x00, 0x00,
69+
0x04, 0xeb, 0x00, 0x00, 0x00, 0x66, 0x00, 0x00,
7070
0xbd, 0x0a, 0xf0, 0x24, 0x02, 0x00, 0x0e, 0x06,
71-
0x2f, 0xc0, 0x03, 0x01, 0x01, 0x0c, 0x00, 0x04,
71+
0x2f, 0xca, 0x03, 0x01, 0x01, 0x0c, 0x00, 0x04,
7272
0x08, 0x00, 0x34, 0x10, 0x30, 0x0f, 0x34, 0x10,
7373
0x2a, 0x20, 0x00,
7474
};

0 commit comments

Comments
 (0)