@scriptc/compiler 0.0.0 → 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +202 -0
- package/ambient/package.json +3 -0
- package/ambient/scriptc-node-fallback.d.ts +3001 -0
- package/ambient/scriptc-overrides.d.ts +95 -0
- package/ambient/scriptc.d.ts +74 -0
- package/dist/backend/cc.d.ts +169 -0
- package/dist/backend/cc.js +897 -0
- package/dist/backend/cc.js.map +1 -0
- package/dist/backend/emission/emit-async.d.ts +145 -0
- package/dist/backend/emission/emit-async.js +996 -0
- package/dist/backend/emission/emit-async.js.map +1 -0
- package/dist/backend/emission/emit-exprs.d.ts +3 -0
- package/dist/backend/emission/emit-exprs.js +5947 -0
- package/dist/backend/emission/emit-exprs.js.map +1 -0
- package/dist/backend/emission/emit-island.d.ts +45 -0
- package/dist/backend/emission/emit-island.js +271 -0
- package/dist/backend/emission/emit-island.js.map +1 -0
- package/dist/backend/emission/emit-shapes.d.ts +142 -0
- package/dist/backend/emission/emit-shapes.js +575 -0
- package/dist/backend/emission/emit-shapes.js.map +1 -0
- package/dist/backend/emission/emit-stmts.d.ts +78 -0
- package/dist/backend/emission/emit-stmts.js +960 -0
- package/dist/backend/emission/emit-stmts.js.map +1 -0
- package/dist/backend/emission/emit-types.d.ts +65 -0
- package/dist/backend/emission/emit-types.js +652 -0
- package/dist/backend/emission/emit-types.js.map +1 -0
- package/dist/backend/emission/emit-walkers.d.ts +154 -0
- package/dist/backend/emission/emit-walkers.js +1587 -0
- package/dist/backend/emission/emit-walkers.js.map +1 -0
- package/dist/backend/emission/emitter.d.ts +452 -0
- package/dist/backend/emission/emitter.js +1249 -0
- package/dist/backend/emission/emitter.js.map +1 -0
- package/dist/backend/emission/may-throw.d.ts +15 -0
- package/dist/backend/emission/may-throw.js +250 -0
- package/dist/backend/emission/may-throw.js.map +1 -0
- package/dist/backend/llvm/blocks.d.ts +21 -0
- package/dist/backend/llvm/blocks.js +68 -0
- package/dist/backend/llvm/blocks.js.map +1 -0
- package/dist/backend/llvm/classes.d.ts +84 -0
- package/dist/backend/llvm/classes.js +438 -0
- package/dist/backend/llvm/classes.js.map +1 -0
- package/dist/backend/llvm/dyn.d.ts +123 -0
- package/dist/backend/llvm/dyn.js +2624 -0
- package/dist/backend/llvm/dyn.js.map +1 -0
- package/dist/backend/llvm/emitter.d.ts +3 -0
- package/dist/backend/llvm/emitter.js +10087 -0
- package/dist/backend/llvm/emitter.js.map +1 -0
- package/dist/backend/llvm/shapes.d.ts +78 -0
- package/dist/backend/llvm/shapes.js +754 -0
- package/dist/backend/llvm/shapes.js.map +1 -0
- package/dist/backend/llvm/unsupported.d.ts +6 -0
- package/dist/backend/llvm/unsupported.js +12 -0
- package/dist/backend/llvm/unsupported.js.map +1 -0
- package/dist/backend/llvm/walkers.d.ts +58 -0
- package/dist/backend/llvm/walkers.js +793 -0
- package/dist/backend/llvm/walkers.js.map +1 -0
- package/dist/backend/mangle.d.ts +124 -0
- package/dist/backend/mangle.js +232 -0
- package/dist/backend/mangle.js.map +1 -0
- package/dist/coverage/report.d.ts +64 -0
- package/dist/coverage/report.js +226 -0
- package/dist/coverage/report.js.map +1 -0
- package/dist/diagnostics/diagnostic.d.ts +140 -0
- package/dist/diagnostics/diagnostic.js +458 -0
- package/dist/diagnostics/diagnostic.js.map +1 -0
- package/dist/diagnostics/render.d.ts +11 -0
- package/dist/diagnostics/render.js +58 -0
- package/dist/diagnostics/render.js.map +1 -0
- package/dist/frontend/cjs-lexer.d.ts +20 -0
- package/dist/frontend/cjs-lexer.js +813 -0
- package/dist/frontend/cjs-lexer.js.map +1 -0
- package/dist/frontend/lowering/http2-constants.d.ts +1 -0
- package/dist/frontend/lowering/http2-constants.js +251 -0
- package/dist/frontend/lowering/http2-constants.js.map +1 -0
- package/dist/frontend/lowering/lib-boundary.d.ts +6 -0
- package/dist/frontend/lowering/lib-boundary.js +143 -0
- package/dist/frontend/lowering/lib-boundary.js.map +1 -0
- package/dist/frontend/lowering/lower-assert.d.ts +18 -0
- package/dist/frontend/lowering/lower-assert.js +1269 -0
- package/dist/frontend/lowering/lower-assert.js.map +1 -0
- package/dist/frontend/lowering/lower-builtins.d.ts +511 -0
- package/dist/frontend/lowering/lower-builtins.js +5249 -0
- package/dist/frontend/lowering/lower-builtins.js.map +1 -0
- package/dist/frontend/lowering/lower-calls.d.ts +581 -0
- package/dist/frontend/lowering/lower-calls.js +6281 -0
- package/dist/frontend/lowering/lower-calls.js.map +1 -0
- package/dist/frontend/lowering/lower-classes.d.ts +727 -0
- package/dist/frontend/lowering/lower-classes.js +4701 -0
- package/dist/frontend/lowering/lower-classes.js.map +1 -0
- package/dist/frontend/lowering/lower-comptime.d.ts +53 -0
- package/dist/frontend/lowering/lower-comptime.js +244 -0
- package/dist/frontend/lowering/lower-comptime.js.map +1 -0
- package/dist/frontend/lowering/lower-containers.d.ts +483 -0
- package/dist/frontend/lowering/lower-containers.js +6281 -0
- package/dist/frontend/lowering/lower-containers.js.map +1 -0
- package/dist/frontend/lowering/lower-dgram.d.ts +20 -0
- package/dist/frontend/lowering/lower-dgram.js +319 -0
- package/dist/frontend/lowering/lower-dgram.js.map +1 -0
- package/dist/frontend/lowering/lower-emitter.d.ts +10 -0
- package/dist/frontend/lowering/lower-emitter.js +688 -0
- package/dist/frontend/lowering/lower-emitter.js.map +1 -0
- package/dist/frontend/lowering/lower-enums.d.ts +22 -0
- package/dist/frontend/lowering/lower-enums.js +235 -0
- package/dist/frontend/lowering/lower-enums.js.map +1 -0
- package/dist/frontend/lowering/lower-expando.d.ts +35 -0
- package/dist/frontend/lowering/lower-expando.js +276 -0
- package/dist/frontend/lowering/lower-expando.js.map +1 -0
- package/dist/frontend/lowering/lower-exprs.d.ts +524 -0
- package/dist/frontend/lowering/lower-exprs.js +8099 -0
- package/dist/frontend/lowering/lower-exprs.js.map +1 -0
- package/dist/frontend/lowering/lower-generators.d.ts +50 -0
- package/dist/frontend/lowering/lower-generators.js +421 -0
- package/dist/frontend/lowering/lower-generators.js.map +1 -0
- package/dist/frontend/lowering/lower-inspect.d.ts +20 -0
- package/dist/frontend/lowering/lower-inspect.js +1069 -0
- package/dist/frontend/lowering/lower-inspect.js.map +1 -0
- package/dist/frontend/lowering/lower-island.d.ts +108 -0
- package/dist/frontend/lowering/lower-island.js +650 -0
- package/dist/frontend/lowering/lower-island.js.map +1 -0
- package/dist/frontend/lowering/lower-mixins.d.ts +96 -0
- package/dist/frontend/lowering/lower-mixins.js +534 -0
- package/dist/frontend/lowering/lower-mixins.js.map +1 -0
- package/dist/frontend/lowering/lower-modules.d.ts +135 -0
- package/dist/frontend/lowering/lower-modules.js +1613 -0
- package/dist/frontend/lowering/lower-modules.js.map +1 -0
- package/dist/frontend/lowering/lower-namespaces.d.ts +168 -0
- package/dist/frontend/lowering/lower-namespaces.js +706 -0
- package/dist/frontend/lowering/lower-namespaces.js.map +1 -0
- package/dist/frontend/lowering/lower-server.d.ts +90 -0
- package/dist/frontend/lowering/lower-server.js +3471 -0
- package/dist/frontend/lowering/lower-server.js.map +1 -0
- package/dist/frontend/lowering/lower-stmts.d.ts +361 -0
- package/dist/frontend/lowering/lower-stmts.js +5341 -0
- package/dist/frontend/lowering/lower-stmts.js.map +1 -0
- package/dist/frontend/lowering/lower-stream.d.ts +88 -0
- package/dist/frontend/lowering/lower-stream.js +1533 -0
- package/dist/frontend/lowering/lower-stream.js.map +1 -0
- package/dist/frontend/lowering/lower-test.d.ts +27 -0
- package/dist/frontend/lowering/lower-test.js +353 -0
- package/dist/frontend/lowering/lower-test.js.map +1 -0
- package/dist/frontend/lowering/lowerer.d.ts +1748 -0
- package/dist/frontend/lowering/lowerer.js +6256 -0
- package/dist/frontend/lowering/lowerer.js.map +1 -0
- package/dist/frontend/lowering/surfaces.d.ts +272 -0
- package/dist/frontend/lowering/surfaces.js +1096 -0
- package/dist/frontend/lowering/surfaces.js.map +1 -0
- package/dist/frontend/npm-static.d.ts +55 -0
- package/dist/frontend/npm-static.js +300 -0
- package/dist/frontend/npm-static.js.map +1 -0
- package/dist/frontend/npm.d.ts +330 -0
- package/dist/frontend/npm.js +1259 -0
- package/dist/frontend/npm.js.map +1 -0
- package/dist/frontend/program.d.ts +186 -0
- package/dist/frontend/program.js +2172 -0
- package/dist/frontend/program.js.map +1 -0
- package/dist/frontend/provenance-registry.d.ts +48 -0
- package/dist/frontend/provenance-registry.js +87 -0
- package/dist/frontend/provenance-registry.js.map +1 -0
- package/dist/frontend/provenance.d.ts +6 -0
- package/dist/frontend/provenance.js +459 -0
- package/dist/frontend/provenance.js.map +1 -0
- package/dist/frontend/resolve.d.ts +56 -0
- package/dist/frontend/resolve.js +682 -0
- package/dist/frontend/resolve.js.map +1 -0
- package/dist/frontend/shared.d.ts +60 -0
- package/dist/frontend/shared.js +232 -0
- package/dist/frontend/shared.js.map +1 -0
- package/dist/frontend/ts7/adapter.d.ts +7 -0
- package/dist/frontend/ts7/adapter.js +54 -0
- package/dist/frontend/ts7/adapter.js.map +1 -0
- package/dist/frontend/ts7/ast.d.ts +50 -0
- package/dist/frontend/ts7/ast.js +211 -0
- package/dist/frontend/ts7/ast.js.map +1 -0
- package/dist/frontend/ts7/census-check.d.ts +1 -0
- package/dist/frontend/ts7/census-check.js +12 -0
- package/dist/frontend/ts7/census-check.js.map +1 -0
- package/dist/frontend/ts7/checker.d.ts +140 -0
- package/dist/frontend/ts7/checker.js +544 -0
- package/dist/frontend/ts7/checker.js.map +1 -0
- package/dist/frontend/ts7/enums.d.ts +18 -0
- package/dist/frontend/ts7/enums.js +43 -0
- package/dist/frontend/ts7/enums.js.map +1 -0
- package/dist/frontend/ts7/program.d.ts +99 -0
- package/dist/frontend/ts7/program.js +278 -0
- package/dist/frontend/ts7/program.js.map +1 -0
- package/dist/frontend/ts7/world-check.d.ts +3 -0
- package/dist/frontend/ts7/world-check.js +34 -0
- package/dist/frontend/ts7/world-check.js.map +1 -0
- package/dist/frontend/types.d.ts +205 -0
- package/dist/frontend/types.js +2485 -0
- package/dist/frontend/types.js.map +1 -0
- package/dist/index.d.ts +85 -0
- package/dist/index.js +424 -0
- package/dist/index.js.map +1 -0
- package/dist/ir/nodes.d.ts +4334 -0
- package/dist/ir/nodes.js +1906 -0
- package/dist/ir/nodes.js.map +1 -0
- package/dist/ir/serialize.d.ts +4 -0
- package/dist/ir/serialize.js +34 -0
- package/dist/ir/serialize.js.map +1 -0
- package/dist/ir/validate.d.ts +36 -0
- package/dist/ir/validate.js +4884 -0
- package/dist/ir/validate.js.map +1 -0
- package/package.json +30 -6
- package/README.md +0 -3
- package/index.js +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cjs-lexer.js","sourceRoot":"","sources":["../../src/frontend/cjs-lexer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const HTTP2_CONSTANTS: Record<string, number | string>;
|
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
/* node:http2 constants — the full table Node v24.15.0 exposes as
|
|
2
|
+
* http2.constants (240 members: NGHTTP2_* protocol codes, NGHTTP2_ERR_*
|
|
3
|
+
* library codes, HTTP2_HEADER_* names, HTTP2_METHOD_* verbs, and the
|
|
4
|
+
* HTTP_STATUS_* table), generated with
|
|
5
|
+
* node -p "require('http2').constants"
|
|
6
|
+
* and baked as literals at every access site: the object itself never
|
|
7
|
+
* materializes at runtime (the fs.constants precedent, scaled up).
|
|
8
|
+
* Every value is a number or a string, so each read is a numLit/strLit. */
|
|
9
|
+
export const HTTP2_CONSTANTS = {
|
|
10
|
+
"NGHTTP2_ERR_FRAME_SIZE_ERROR": -522,
|
|
11
|
+
"NGHTTP2_SESSION_SERVER": 0,
|
|
12
|
+
"NGHTTP2_SESSION_CLIENT": 1,
|
|
13
|
+
"NGHTTP2_STREAM_STATE_IDLE": 1,
|
|
14
|
+
"NGHTTP2_STREAM_STATE_OPEN": 2,
|
|
15
|
+
"NGHTTP2_STREAM_STATE_RESERVED_LOCAL": 3,
|
|
16
|
+
"NGHTTP2_STREAM_STATE_RESERVED_REMOTE": 4,
|
|
17
|
+
"NGHTTP2_STREAM_STATE_HALF_CLOSED_LOCAL": 5,
|
|
18
|
+
"NGHTTP2_STREAM_STATE_HALF_CLOSED_REMOTE": 6,
|
|
19
|
+
"NGHTTP2_STREAM_STATE_CLOSED": 7,
|
|
20
|
+
"NGHTTP2_FLAG_NONE": 0,
|
|
21
|
+
"NGHTTP2_FLAG_END_STREAM": 1,
|
|
22
|
+
"NGHTTP2_FLAG_END_HEADERS": 4,
|
|
23
|
+
"NGHTTP2_FLAG_ACK": 1,
|
|
24
|
+
"NGHTTP2_FLAG_PADDED": 8,
|
|
25
|
+
"NGHTTP2_FLAG_PRIORITY": 32,
|
|
26
|
+
"DEFAULT_SETTINGS_HEADER_TABLE_SIZE": 4096,
|
|
27
|
+
"DEFAULT_SETTINGS_ENABLE_PUSH": 1,
|
|
28
|
+
"DEFAULT_SETTINGS_MAX_CONCURRENT_STREAMS": 4294967295,
|
|
29
|
+
"DEFAULT_SETTINGS_INITIAL_WINDOW_SIZE": 65535,
|
|
30
|
+
"DEFAULT_SETTINGS_MAX_FRAME_SIZE": 16384,
|
|
31
|
+
"DEFAULT_SETTINGS_MAX_HEADER_LIST_SIZE": 65535,
|
|
32
|
+
"DEFAULT_SETTINGS_ENABLE_CONNECT_PROTOCOL": 0,
|
|
33
|
+
"MAX_MAX_FRAME_SIZE": 16777215,
|
|
34
|
+
"MIN_MAX_FRAME_SIZE": 16384,
|
|
35
|
+
"MAX_INITIAL_WINDOW_SIZE": 2147483647,
|
|
36
|
+
"NGHTTP2_SETTINGS_HEADER_TABLE_SIZE": 1,
|
|
37
|
+
"NGHTTP2_SETTINGS_ENABLE_PUSH": 2,
|
|
38
|
+
"NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS": 3,
|
|
39
|
+
"NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE": 4,
|
|
40
|
+
"NGHTTP2_SETTINGS_MAX_FRAME_SIZE": 5,
|
|
41
|
+
"NGHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE": 6,
|
|
42
|
+
"NGHTTP2_SETTINGS_ENABLE_CONNECT_PROTOCOL": 8,
|
|
43
|
+
"PADDING_STRATEGY_NONE": 0,
|
|
44
|
+
"PADDING_STRATEGY_ALIGNED": 1,
|
|
45
|
+
"PADDING_STRATEGY_MAX": 2,
|
|
46
|
+
"PADDING_STRATEGY_CALLBACK": 1,
|
|
47
|
+
"NGHTTP2_NO_ERROR": 0,
|
|
48
|
+
"NGHTTP2_PROTOCOL_ERROR": 1,
|
|
49
|
+
"NGHTTP2_INTERNAL_ERROR": 2,
|
|
50
|
+
"NGHTTP2_FLOW_CONTROL_ERROR": 3,
|
|
51
|
+
"NGHTTP2_SETTINGS_TIMEOUT": 4,
|
|
52
|
+
"NGHTTP2_STREAM_CLOSED": 5,
|
|
53
|
+
"NGHTTP2_FRAME_SIZE_ERROR": 6,
|
|
54
|
+
"NGHTTP2_REFUSED_STREAM": 7,
|
|
55
|
+
"NGHTTP2_CANCEL": 8,
|
|
56
|
+
"NGHTTP2_COMPRESSION_ERROR": 9,
|
|
57
|
+
"NGHTTP2_CONNECT_ERROR": 10,
|
|
58
|
+
"NGHTTP2_ENHANCE_YOUR_CALM": 11,
|
|
59
|
+
"NGHTTP2_INADEQUATE_SECURITY": 12,
|
|
60
|
+
"NGHTTP2_HTTP_1_1_REQUIRED": 13,
|
|
61
|
+
"NGHTTP2_DEFAULT_WEIGHT": 16,
|
|
62
|
+
"HTTP2_HEADER_STATUS": ":status",
|
|
63
|
+
"HTTP2_HEADER_METHOD": ":method",
|
|
64
|
+
"HTTP2_HEADER_AUTHORITY": ":authority",
|
|
65
|
+
"HTTP2_HEADER_SCHEME": ":scheme",
|
|
66
|
+
"HTTP2_HEADER_PATH": ":path",
|
|
67
|
+
"HTTP2_HEADER_PROTOCOL": ":protocol",
|
|
68
|
+
"HTTP2_HEADER_ACCEPT_ENCODING": "accept-encoding",
|
|
69
|
+
"HTTP2_HEADER_ACCEPT_LANGUAGE": "accept-language",
|
|
70
|
+
"HTTP2_HEADER_ACCEPT_RANGES": "accept-ranges",
|
|
71
|
+
"HTTP2_HEADER_ACCEPT": "accept",
|
|
72
|
+
"HTTP2_HEADER_ACCESS_CONTROL_ALLOW_CREDENTIALS": "access-control-allow-credentials",
|
|
73
|
+
"HTTP2_HEADER_ACCESS_CONTROL_ALLOW_HEADERS": "access-control-allow-headers",
|
|
74
|
+
"HTTP2_HEADER_ACCESS_CONTROL_ALLOW_METHODS": "access-control-allow-methods",
|
|
75
|
+
"HTTP2_HEADER_ACCESS_CONTROL_ALLOW_ORIGIN": "access-control-allow-origin",
|
|
76
|
+
"HTTP2_HEADER_ACCESS_CONTROL_EXPOSE_HEADERS": "access-control-expose-headers",
|
|
77
|
+
"HTTP2_HEADER_ACCESS_CONTROL_REQUEST_HEADERS": "access-control-request-headers",
|
|
78
|
+
"HTTP2_HEADER_ACCESS_CONTROL_REQUEST_METHOD": "access-control-request-method",
|
|
79
|
+
"HTTP2_HEADER_AGE": "age",
|
|
80
|
+
"HTTP2_HEADER_AUTHORIZATION": "authorization",
|
|
81
|
+
"HTTP2_HEADER_CACHE_CONTROL": "cache-control",
|
|
82
|
+
"HTTP2_HEADER_CONNECTION": "connection",
|
|
83
|
+
"HTTP2_HEADER_CONTENT_DISPOSITION": "content-disposition",
|
|
84
|
+
"HTTP2_HEADER_CONTENT_ENCODING": "content-encoding",
|
|
85
|
+
"HTTP2_HEADER_CONTENT_LENGTH": "content-length",
|
|
86
|
+
"HTTP2_HEADER_CONTENT_TYPE": "content-type",
|
|
87
|
+
"HTTP2_HEADER_COOKIE": "cookie",
|
|
88
|
+
"HTTP2_HEADER_DATE": "date",
|
|
89
|
+
"HTTP2_HEADER_ETAG": "etag",
|
|
90
|
+
"HTTP2_HEADER_FORWARDED": "forwarded",
|
|
91
|
+
"HTTP2_HEADER_HOST": "host",
|
|
92
|
+
"HTTP2_HEADER_IF_MODIFIED_SINCE": "if-modified-since",
|
|
93
|
+
"HTTP2_HEADER_IF_NONE_MATCH": "if-none-match",
|
|
94
|
+
"HTTP2_HEADER_IF_RANGE": "if-range",
|
|
95
|
+
"HTTP2_HEADER_LAST_MODIFIED": "last-modified",
|
|
96
|
+
"HTTP2_HEADER_LINK": "link",
|
|
97
|
+
"HTTP2_HEADER_LOCATION": "location",
|
|
98
|
+
"HTTP2_HEADER_RANGE": "range",
|
|
99
|
+
"HTTP2_HEADER_REFERER": "referer",
|
|
100
|
+
"HTTP2_HEADER_SERVER": "server",
|
|
101
|
+
"HTTP2_HEADER_SET_COOKIE": "set-cookie",
|
|
102
|
+
"HTTP2_HEADER_STRICT_TRANSPORT_SECURITY": "strict-transport-security",
|
|
103
|
+
"HTTP2_HEADER_TRANSFER_ENCODING": "transfer-encoding",
|
|
104
|
+
"HTTP2_HEADER_TE": "te",
|
|
105
|
+
"HTTP2_HEADER_UPGRADE_INSECURE_REQUESTS": "upgrade-insecure-requests",
|
|
106
|
+
"HTTP2_HEADER_UPGRADE": "upgrade",
|
|
107
|
+
"HTTP2_HEADER_USER_AGENT": "user-agent",
|
|
108
|
+
"HTTP2_HEADER_VARY": "vary",
|
|
109
|
+
"HTTP2_HEADER_X_CONTENT_TYPE_OPTIONS": "x-content-type-options",
|
|
110
|
+
"HTTP2_HEADER_X_FRAME_OPTIONS": "x-frame-options",
|
|
111
|
+
"HTTP2_HEADER_KEEP_ALIVE": "keep-alive",
|
|
112
|
+
"HTTP2_HEADER_PROXY_CONNECTION": "proxy-connection",
|
|
113
|
+
"HTTP2_HEADER_X_XSS_PROTECTION": "x-xss-protection",
|
|
114
|
+
"HTTP2_HEADER_ALT_SVC": "alt-svc",
|
|
115
|
+
"HTTP2_HEADER_CONTENT_SECURITY_POLICY": "content-security-policy",
|
|
116
|
+
"HTTP2_HEADER_EARLY_DATA": "early-data",
|
|
117
|
+
"HTTP2_HEADER_EXPECT_CT": "expect-ct",
|
|
118
|
+
"HTTP2_HEADER_ORIGIN": "origin",
|
|
119
|
+
"HTTP2_HEADER_PURPOSE": "purpose",
|
|
120
|
+
"HTTP2_HEADER_TIMING_ALLOW_ORIGIN": "timing-allow-origin",
|
|
121
|
+
"HTTP2_HEADER_X_FORWARDED_FOR": "x-forwarded-for",
|
|
122
|
+
"HTTP2_HEADER_PRIORITY": "priority",
|
|
123
|
+
"HTTP2_HEADER_ACCEPT_CHARSET": "accept-charset",
|
|
124
|
+
"HTTP2_HEADER_ACCESS_CONTROL_MAX_AGE": "access-control-max-age",
|
|
125
|
+
"HTTP2_HEADER_ALLOW": "allow",
|
|
126
|
+
"HTTP2_HEADER_CONTENT_LANGUAGE": "content-language",
|
|
127
|
+
"HTTP2_HEADER_CONTENT_LOCATION": "content-location",
|
|
128
|
+
"HTTP2_HEADER_CONTENT_MD5": "content-md5",
|
|
129
|
+
"HTTP2_HEADER_CONTENT_RANGE": "content-range",
|
|
130
|
+
"HTTP2_HEADER_DNT": "dnt",
|
|
131
|
+
"HTTP2_HEADER_EXPECT": "expect",
|
|
132
|
+
"HTTP2_HEADER_EXPIRES": "expires",
|
|
133
|
+
"HTTP2_HEADER_FROM": "from",
|
|
134
|
+
"HTTP2_HEADER_IF_MATCH": "if-match",
|
|
135
|
+
"HTTP2_HEADER_IF_UNMODIFIED_SINCE": "if-unmodified-since",
|
|
136
|
+
"HTTP2_HEADER_MAX_FORWARDS": "max-forwards",
|
|
137
|
+
"HTTP2_HEADER_PREFER": "prefer",
|
|
138
|
+
"HTTP2_HEADER_PROXY_AUTHENTICATE": "proxy-authenticate",
|
|
139
|
+
"HTTP2_HEADER_PROXY_AUTHORIZATION": "proxy-authorization",
|
|
140
|
+
"HTTP2_HEADER_REFRESH": "refresh",
|
|
141
|
+
"HTTP2_HEADER_RETRY_AFTER": "retry-after",
|
|
142
|
+
"HTTP2_HEADER_TRAILER": "trailer",
|
|
143
|
+
"HTTP2_HEADER_TK": "tk",
|
|
144
|
+
"HTTP2_HEADER_VIA": "via",
|
|
145
|
+
"HTTP2_HEADER_WARNING": "warning",
|
|
146
|
+
"HTTP2_HEADER_WWW_AUTHENTICATE": "www-authenticate",
|
|
147
|
+
"HTTP2_HEADER_HTTP2_SETTINGS": "http2-settings",
|
|
148
|
+
"HTTP2_METHOD_ACL": "ACL",
|
|
149
|
+
"HTTP2_METHOD_BASELINE_CONTROL": "BASELINE-CONTROL",
|
|
150
|
+
"HTTP2_METHOD_BIND": "BIND",
|
|
151
|
+
"HTTP2_METHOD_CHECKIN": "CHECKIN",
|
|
152
|
+
"HTTP2_METHOD_CHECKOUT": "CHECKOUT",
|
|
153
|
+
"HTTP2_METHOD_CONNECT": "CONNECT",
|
|
154
|
+
"HTTP2_METHOD_COPY": "COPY",
|
|
155
|
+
"HTTP2_METHOD_DELETE": "DELETE",
|
|
156
|
+
"HTTP2_METHOD_GET": "GET",
|
|
157
|
+
"HTTP2_METHOD_HEAD": "HEAD",
|
|
158
|
+
"HTTP2_METHOD_LABEL": "LABEL",
|
|
159
|
+
"HTTP2_METHOD_LINK": "LINK",
|
|
160
|
+
"HTTP2_METHOD_LOCK": "LOCK",
|
|
161
|
+
"HTTP2_METHOD_MERGE": "MERGE",
|
|
162
|
+
"HTTP2_METHOD_MKACTIVITY": "MKACTIVITY",
|
|
163
|
+
"HTTP2_METHOD_MKCALENDAR": "MKCALENDAR",
|
|
164
|
+
"HTTP2_METHOD_MKCOL": "MKCOL",
|
|
165
|
+
"HTTP2_METHOD_MKREDIRECTREF": "MKREDIRECTREF",
|
|
166
|
+
"HTTP2_METHOD_MKWORKSPACE": "MKWORKSPACE",
|
|
167
|
+
"HTTP2_METHOD_MOVE": "MOVE",
|
|
168
|
+
"HTTP2_METHOD_OPTIONS": "OPTIONS",
|
|
169
|
+
"HTTP2_METHOD_ORDERPATCH": "ORDERPATCH",
|
|
170
|
+
"HTTP2_METHOD_PATCH": "PATCH",
|
|
171
|
+
"HTTP2_METHOD_POST": "POST",
|
|
172
|
+
"HTTP2_METHOD_PRI": "PRI",
|
|
173
|
+
"HTTP2_METHOD_PROPFIND": "PROPFIND",
|
|
174
|
+
"HTTP2_METHOD_PROPPATCH": "PROPPATCH",
|
|
175
|
+
"HTTP2_METHOD_PUT": "PUT",
|
|
176
|
+
"HTTP2_METHOD_REBIND": "REBIND",
|
|
177
|
+
"HTTP2_METHOD_REPORT": "REPORT",
|
|
178
|
+
"HTTP2_METHOD_SEARCH": "SEARCH",
|
|
179
|
+
"HTTP2_METHOD_TRACE": "TRACE",
|
|
180
|
+
"HTTP2_METHOD_UNBIND": "UNBIND",
|
|
181
|
+
"HTTP2_METHOD_UNCHECKOUT": "UNCHECKOUT",
|
|
182
|
+
"HTTP2_METHOD_UNLINK": "UNLINK",
|
|
183
|
+
"HTTP2_METHOD_UNLOCK": "UNLOCK",
|
|
184
|
+
"HTTP2_METHOD_UPDATE": "UPDATE",
|
|
185
|
+
"HTTP2_METHOD_UPDATEREDIRECTREF": "UPDATEREDIRECTREF",
|
|
186
|
+
"HTTP2_METHOD_VERSION_CONTROL": "VERSION-CONTROL",
|
|
187
|
+
"HTTP_STATUS_CONTINUE": 100,
|
|
188
|
+
"HTTP_STATUS_SWITCHING_PROTOCOLS": 101,
|
|
189
|
+
"HTTP_STATUS_PROCESSING": 102,
|
|
190
|
+
"HTTP_STATUS_EARLY_HINTS": 103,
|
|
191
|
+
"HTTP_STATUS_OK": 200,
|
|
192
|
+
"HTTP_STATUS_CREATED": 201,
|
|
193
|
+
"HTTP_STATUS_ACCEPTED": 202,
|
|
194
|
+
"HTTP_STATUS_NON_AUTHORITATIVE_INFORMATION": 203,
|
|
195
|
+
"HTTP_STATUS_NO_CONTENT": 204,
|
|
196
|
+
"HTTP_STATUS_RESET_CONTENT": 205,
|
|
197
|
+
"HTTP_STATUS_PARTIAL_CONTENT": 206,
|
|
198
|
+
"HTTP_STATUS_MULTI_STATUS": 207,
|
|
199
|
+
"HTTP_STATUS_ALREADY_REPORTED": 208,
|
|
200
|
+
"HTTP_STATUS_IM_USED": 226,
|
|
201
|
+
"HTTP_STATUS_MULTIPLE_CHOICES": 300,
|
|
202
|
+
"HTTP_STATUS_MOVED_PERMANENTLY": 301,
|
|
203
|
+
"HTTP_STATUS_FOUND": 302,
|
|
204
|
+
"HTTP_STATUS_SEE_OTHER": 303,
|
|
205
|
+
"HTTP_STATUS_NOT_MODIFIED": 304,
|
|
206
|
+
"HTTP_STATUS_USE_PROXY": 305,
|
|
207
|
+
"HTTP_STATUS_TEMPORARY_REDIRECT": 307,
|
|
208
|
+
"HTTP_STATUS_PERMANENT_REDIRECT": 308,
|
|
209
|
+
"HTTP_STATUS_BAD_REQUEST": 400,
|
|
210
|
+
"HTTP_STATUS_UNAUTHORIZED": 401,
|
|
211
|
+
"HTTP_STATUS_PAYMENT_REQUIRED": 402,
|
|
212
|
+
"HTTP_STATUS_FORBIDDEN": 403,
|
|
213
|
+
"HTTP_STATUS_NOT_FOUND": 404,
|
|
214
|
+
"HTTP_STATUS_METHOD_NOT_ALLOWED": 405,
|
|
215
|
+
"HTTP_STATUS_NOT_ACCEPTABLE": 406,
|
|
216
|
+
"HTTP_STATUS_PROXY_AUTHENTICATION_REQUIRED": 407,
|
|
217
|
+
"HTTP_STATUS_REQUEST_TIMEOUT": 408,
|
|
218
|
+
"HTTP_STATUS_CONFLICT": 409,
|
|
219
|
+
"HTTP_STATUS_GONE": 410,
|
|
220
|
+
"HTTP_STATUS_LENGTH_REQUIRED": 411,
|
|
221
|
+
"HTTP_STATUS_PRECONDITION_FAILED": 412,
|
|
222
|
+
"HTTP_STATUS_PAYLOAD_TOO_LARGE": 413,
|
|
223
|
+
"HTTP_STATUS_URI_TOO_LONG": 414,
|
|
224
|
+
"HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE": 415,
|
|
225
|
+
"HTTP_STATUS_RANGE_NOT_SATISFIABLE": 416,
|
|
226
|
+
"HTTP_STATUS_EXPECTATION_FAILED": 417,
|
|
227
|
+
"HTTP_STATUS_TEAPOT": 418,
|
|
228
|
+
"HTTP_STATUS_MISDIRECTED_REQUEST": 421,
|
|
229
|
+
"HTTP_STATUS_UNPROCESSABLE_ENTITY": 422,
|
|
230
|
+
"HTTP_STATUS_LOCKED": 423,
|
|
231
|
+
"HTTP_STATUS_FAILED_DEPENDENCY": 424,
|
|
232
|
+
"HTTP_STATUS_TOO_EARLY": 425,
|
|
233
|
+
"HTTP_STATUS_UPGRADE_REQUIRED": 426,
|
|
234
|
+
"HTTP_STATUS_PRECONDITION_REQUIRED": 428,
|
|
235
|
+
"HTTP_STATUS_TOO_MANY_REQUESTS": 429,
|
|
236
|
+
"HTTP_STATUS_REQUEST_HEADER_FIELDS_TOO_LARGE": 431,
|
|
237
|
+
"HTTP_STATUS_UNAVAILABLE_FOR_LEGAL_REASONS": 451,
|
|
238
|
+
"HTTP_STATUS_INTERNAL_SERVER_ERROR": 500,
|
|
239
|
+
"HTTP_STATUS_NOT_IMPLEMENTED": 501,
|
|
240
|
+
"HTTP_STATUS_BAD_GATEWAY": 502,
|
|
241
|
+
"HTTP_STATUS_SERVICE_UNAVAILABLE": 503,
|
|
242
|
+
"HTTP_STATUS_GATEWAY_TIMEOUT": 504,
|
|
243
|
+
"HTTP_STATUS_HTTP_VERSION_NOT_SUPPORTED": 505,
|
|
244
|
+
"HTTP_STATUS_VARIANT_ALSO_NEGOTIATES": 506,
|
|
245
|
+
"HTTP_STATUS_INSUFFICIENT_STORAGE": 507,
|
|
246
|
+
"HTTP_STATUS_LOOP_DETECTED": 508,
|
|
247
|
+
"HTTP_STATUS_BANDWIDTH_LIMIT_EXCEEDED": 509,
|
|
248
|
+
"HTTP_STATUS_NOT_EXTENDED": 510,
|
|
249
|
+
"HTTP_STATUS_NETWORK_AUTHENTICATION_REQUIRED": 511,
|
|
250
|
+
};
|
|
251
|
+
//# sourceMappingURL=http2-constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http2-constants.js","sourceRoot":"","sources":["../../../src/frontend/lowering/http2-constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Lowerer } from "./lowerer.js";
|
|
2
|
+
/** Walks one lowered statement's IR in place, coercing or fencing every
|
|
3
|
+
* signature-table argument slot. Idempotent: a wrapped argument matches its
|
|
4
|
+
* slot on a revisit (nested statement lists are walked by their own
|
|
5
|
+
* lowerStmts call first, then again inside the enclosing statement). */
|
|
6
|
+
export declare function enforceLibBoundary(L: Lowerer, node: unknown): void;
|
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { PoisonError } from "./lowerer.js";
|
|
2
|
+
import { canAdaptDynFuncTo, STRING, isUnitType, typeEquals } from "../../ir/nodes.js";
|
|
3
|
+
import { LIB_FN_SIGS, REGEX_INTRINSIC_SIGS, STR_INTRINSIC_SIGS } from "../../ir/validate.js";
|
|
4
|
+
import { unionMismatchDiag, unsupportedDiag } from "../../diagnostics/diagnostic.js";
|
|
5
|
+
/** What a dynCheck can validate — coerceToExpected's dyn→typed domain,
|
|
6
|
+
* kept in lockstep with the wrap it emits there. Adaptable FUNCTION
|
|
7
|
+
* targets are in (the checked-dynamic function boundary: a dyn-wrapped
|
|
8
|
+
* callback flowing into setTimeout's `() => void` slot adapts through
|
|
9
|
+
* the per-target shim). */
|
|
10
|
+
function dynCheckable(L, want) {
|
|
11
|
+
if (L.jsonSafe(want))
|
|
12
|
+
return true;
|
|
13
|
+
if (want.kind === "bytes" && want.elem === "u8")
|
|
14
|
+
return true;
|
|
15
|
+
if (want.kind === "object" && want.className === "%Error")
|
|
16
|
+
return true;
|
|
17
|
+
if (want.kind === "func") {
|
|
18
|
+
return canAdaptDynFuncTo(want, (id) => L.shapes.get(id), (id) => L.unions.get(id));
|
|
19
|
+
}
|
|
20
|
+
if (want.kind === "union") {
|
|
21
|
+
const def = L.unions.get(want.unionId);
|
|
22
|
+
return !!def && def.arms.every((a) => a.kind === "undefinedT" || L.jsonSafe(a));
|
|
23
|
+
}
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
/** The checked coercion for one argument slot, or the named fence. Returns
|
|
27
|
+
* the (possibly wrapped) expression; throws PoisonError on a fence so the
|
|
28
|
+
* statement takes the runtime-fence path in JS sources. */
|
|
29
|
+
function coerceSlot(L, arg, want, what) {
|
|
30
|
+
if (typeEquals(arg.type, want))
|
|
31
|
+
return arg;
|
|
32
|
+
if (arg.type.kind === "dyn" && want.kind !== "dyn") {
|
|
33
|
+
if (dynCheckable(L, want)) {
|
|
34
|
+
return { kind: "dynCheck", value: arg, type: want, loc: arg.loc };
|
|
35
|
+
}
|
|
36
|
+
fence(L, "SC1100", arg.loc, `passing 'unknown' values where '${L.fmt(want)}' is expected (${what})`);
|
|
37
|
+
}
|
|
38
|
+
if (isUnitType(arg.type) && want.kind !== "union" && !isUnitType(want)) {
|
|
39
|
+
fence(L, "SC1090", arg.loc, `'${arg.type.kind === "undefinedT" ? "undefined" : "null"}' values where '${L.fmt(want)}' is expected (${what})`);
|
|
40
|
+
}
|
|
41
|
+
if (arg.type.kind === "union" && want.kind !== "union" && !containsDynOrUnit(want)) {
|
|
42
|
+
L.pushDiag(unionMismatchDiag(L.fmt(want), L.fmt(arg.type), arg.loc));
|
|
43
|
+
throw new PoisonError();
|
|
44
|
+
}
|
|
45
|
+
// Every other mismatch: leave it for the validator (the backstop). The
|
|
46
|
+
// signature tables carry program-independent slots only; the shapes this
|
|
47
|
+
// pass exists for are the dyn/unit/union escapes above.
|
|
48
|
+
return arg;
|
|
49
|
+
}
|
|
50
|
+
function containsDynOrUnit(t) {
|
|
51
|
+
return t.kind === "dyn" || isUnitType(t);
|
|
52
|
+
}
|
|
53
|
+
function fence(L, code, loc, feature) {
|
|
54
|
+
L.pushDiag(unsupportedDiag(code, loc, feature));
|
|
55
|
+
throw new PoisonError();
|
|
56
|
+
}
|
|
57
|
+
/** Walks one lowered statement's IR in place, coercing or fencing every
|
|
58
|
+
* signature-table argument slot. Idempotent: a wrapped argument matches its
|
|
59
|
+
* slot on a revisit (nested statement lists are walked by their own
|
|
60
|
+
* lowerStmts call first, then again inside the enclosing statement). */
|
|
61
|
+
export function enforceLibBoundary(L, node) {
|
|
62
|
+
if (node === null || typeof node !== "object")
|
|
63
|
+
return;
|
|
64
|
+
if (Array.isArray(node)) {
|
|
65
|
+
for (const item of node)
|
|
66
|
+
enforceLibBoundary(L, item);
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
const rec = node;
|
|
70
|
+
for (const key of Object.keys(rec)) {
|
|
71
|
+
if (key !== "loc")
|
|
72
|
+
enforceLibBoundary(L, rec[key]);
|
|
73
|
+
}
|
|
74
|
+
const kind = rec["kind"];
|
|
75
|
+
if (kind === "libCall") {
|
|
76
|
+
const e = rec;
|
|
77
|
+
const sig = LIB_FN_SIGS[e.fn];
|
|
78
|
+
if (!sig)
|
|
79
|
+
return;
|
|
80
|
+
e.args.forEach((a, i) => {
|
|
81
|
+
const want = sig.argTypes[i];
|
|
82
|
+
if (want)
|
|
83
|
+
e.args[i] = coerceSlot(L, a, want, `argument ${i + 1} of ${e.fn}`);
|
|
84
|
+
});
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
if (kind === "strIntrinsic") {
|
|
88
|
+
const e = rec;
|
|
89
|
+
e.receiver = coerceSlot(L, e.receiver, STRING, `the receiver of .${e.method}`);
|
|
90
|
+
const sig = STR_INTRINSIC_SIGS[e.method];
|
|
91
|
+
if (!sig)
|
|
92
|
+
return;
|
|
93
|
+
e.args.forEach((a, i) => {
|
|
94
|
+
const want = sig.argTypes[i];
|
|
95
|
+
if (want)
|
|
96
|
+
e.args[i] = coerceSlot(L, a, want, `argument ${i + 1} of .${e.method}`);
|
|
97
|
+
});
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
if (kind === "regexIntrinsic") {
|
|
101
|
+
const e = rec;
|
|
102
|
+
const sig = REGEX_INTRINSIC_SIGS[e.method];
|
|
103
|
+
if (!sig)
|
|
104
|
+
return;
|
|
105
|
+
e.receiver = coerceSlot(L, e.receiver, sig.receiver, `the receiver of .${e.method}`);
|
|
106
|
+
e.args.forEach((a, i) => {
|
|
107
|
+
const want = sig.argTypes[i];
|
|
108
|
+
if (want)
|
|
109
|
+
e.args[i] = coerceSlot(L, a, want, `argument ${i + 1} of .${e.method}`);
|
|
110
|
+
});
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
if (kind === "arrIntrinsic") {
|
|
114
|
+
const e = rec;
|
|
115
|
+
if (e.receiver.type.kind === "dyn" || isUnitType(e.receiver.type)) {
|
|
116
|
+
// No element type exists to validate a dyn receiver against — the
|
|
117
|
+
// honest answer is the operations-on-unknown fence. Other non-array
|
|
118
|
+
// receivers stay the validator's ICE (frontend breakage, not a
|
|
119
|
+
// checked-dynamic escape).
|
|
120
|
+
fence(L, "SC1100", e.receiver.loc, `'.${e.method}()' on '${L.fmt(e.receiver.type)}' array receivers`);
|
|
121
|
+
}
|
|
122
|
+
return;
|
|
123
|
+
}
|
|
124
|
+
if (kind === "callValue") {
|
|
125
|
+
const e = rec;
|
|
126
|
+
if (e.callee.type.kind === "dyn" || isUnitType(e.callee.type)) {
|
|
127
|
+
fence(L, "SC1100", e.loc, `calling '${L.fmt(e.callee.type)}' values`);
|
|
128
|
+
}
|
|
129
|
+
if (e.callee.type.kind !== "func")
|
|
130
|
+
return; // validator's ICE otherwise
|
|
131
|
+
const params = e.callee.type.params;
|
|
132
|
+
if (e.args.length !== params.length) {
|
|
133
|
+
fence(L, "SC1090", e.loc, `calling a function value with ${e.args.length} argument${e.args.length === 1 ? "" : "s"} where its lowered signature takes ${params.length}`);
|
|
134
|
+
}
|
|
135
|
+
e.args.forEach((a, i) => {
|
|
136
|
+
const want = params[i];
|
|
137
|
+
if (want)
|
|
138
|
+
e.args[i] = coerceSlot(L, a, want, `argument ${i + 1} of the call`);
|
|
139
|
+
});
|
|
140
|
+
return;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
//# sourceMappingURL=lib-boundary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lib-boundary.js","sourceRoot":"","sources":["../../../src/frontend/lowering/lib-boundary.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import * as ts from "../ts7/adapter.js";
|
|
2
|
+
import type { Lowerer } from "./lowerer.js";
|
|
3
|
+
import { IrExpr, SrcLoc } from "../../ir/nodes.js";
|
|
4
|
+
/** The module-function dispatch — the spoke's entry, called from both the
|
|
5
|
+
* named-import and namespace/default-import call paths. Null for other
|
|
6
|
+
* modules and for members with no lowering (the module tables' fence
|
|
7
|
+
* takes over, module-qualified with the surfaces.ts hints). */
|
|
8
|
+
export declare function lowerAssertModuleCall(L: Lowerer, expr: ts.CallExpression, bi: {
|
|
9
|
+
module: string;
|
|
10
|
+
member: string;
|
|
11
|
+
}, loc: SrcLoc): IrExpr | null;
|
|
12
|
+
/** The callable-module form: `assert(x)` where the callee identifier IS
|
|
13
|
+
* the assert module binding — a default import (`import assert from
|
|
14
|
+
* "node:assert"`) or the CJS `const assert = require("assert")`. Node's
|
|
15
|
+
* module object is assert.ok itself. A NAMESPACE import binding is not
|
|
16
|
+
* callable in Node (ES namespace objects throw TypeError), so that form
|
|
17
|
+
* fences instead of compiling a crash. Null for non-assert callees. */
|
|
18
|
+
export declare function lowerAssertDirectCall(L: Lowerer, expr: ts.CallExpression, loc: SrcLoc): IrExpr | null;
|