@typespec/compiler 0.41.0
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 +21 -0
- package/README.md +9 -0
- package/cmd/tsp-server.js +3 -0
- package/cmd/tsp.js +3 -0
- package/dist/cmd/runner.d.ts +9 -0
- package/dist/cmd/runner.d.ts.map +1 -0
- package/dist/cmd/runner.js +62 -0
- package/dist/cmd/runner.js.map +1 -0
- package/dist/config/config-interpolation.d.ts +11 -0
- package/dist/config/config-interpolation.d.ts.map +1 -0
- package/dist/config/config-interpolation.js +109 -0
- package/dist/config/config-interpolation.js.map +1 -0
- package/dist/config/config-loader.d.ts +25 -0
- package/dist/config/config-loader.d.ts.map +1 -0
- package/dist/config/config-loader.js +182 -0
- package/dist/config/config-loader.js.map +1 -0
- package/dist/config/config-schema.d.ts +4 -0
- package/dist/config/config-schema.d.ts.map +1 -0
- package/dist/config/config-schema.js +84 -0
- package/dist/config/config-schema.js.map +1 -0
- package/dist/config/index.d.ts +3 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +3 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/types.d.ts +79 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +2 -0
- package/dist/config/types.js.map +1 -0
- package/dist/core/binder.d.ts +29 -0
- package/dist/core/binder.d.ts.map +1 -0
- package/dist/core/binder.js +455 -0
- package/dist/core/binder.js.map +1 -0
- package/dist/core/charcode.d.ts +130 -0
- package/dist/core/charcode.d.ts.map +1 -0
- package/dist/core/charcode.js +115 -0
- package/dist/core/charcode.js.map +1 -0
- package/dist/core/checker.d.ts +138 -0
- package/dist/core/checker.d.ts.map +1 -0
- package/dist/core/checker.js +4070 -0
- package/dist/core/checker.js.map +1 -0
- package/dist/core/cli/args.d.ts +18 -0
- package/dist/core/cli/args.d.ts.map +1 -0
- package/dist/core/cli/args.js +108 -0
- package/dist/core/cli/args.js.map +1 -0
- package/dist/core/cli/cli.d.ts +2 -0
- package/dist/core/cli/cli.d.ts.map +1 -0
- package/dist/core/cli/cli.js +477 -0
- package/dist/core/cli/cli.js.map +1 -0
- package/dist/core/cli/index.d.ts +2 -0
- package/dist/core/cli/index.d.ts.map +1 -0
- package/dist/core/cli/index.js +2 -0
- package/dist/core/cli/index.js.map +1 -0
- package/dist/core/decorator-utils.d.ts +108 -0
- package/dist/core/decorator-utils.d.ts.map +1 -0
- package/dist/core/decorator-utils.js +326 -0
- package/dist/core/decorator-utils.js.map +1 -0
- package/dist/core/diagnostics.d.ts +93 -0
- package/dist/core/diagnostics.d.ts.map +1 -0
- package/dist/core/diagnostics.js +315 -0
- package/dist/core/diagnostics.js.map +1 -0
- package/dist/core/emitter-utils.d.ts +14 -0
- package/dist/core/emitter-utils.d.ts.map +1 -0
- package/dist/core/emitter-utils.js +16 -0
- package/dist/core/emitter-utils.js.map +1 -0
- package/dist/core/formatter-fs.d.ts +21 -0
- package/dist/core/formatter-fs.d.ts.map +1 -0
- package/dist/core/formatter-fs.js +79 -0
- package/dist/core/formatter-fs.js.map +1 -0
- package/dist/core/formatter.d.ts +10 -0
- package/dist/core/formatter.d.ts.map +1 -0
- package/dist/core/formatter.js +24 -0
- package/dist/core/formatter.js.map +1 -0
- package/dist/core/helpers/discriminator-utils.d.ts +14 -0
- package/dist/core/helpers/discriminator-utils.d.ts.map +1 -0
- package/dist/core/helpers/discriminator-utils.js +169 -0
- package/dist/core/helpers/discriminator-utils.js.map +1 -0
- package/dist/core/helpers/index.d.ts +6 -0
- package/dist/core/helpers/index.d.ts.map +1 -0
- package/dist/core/helpers/index.js +6 -0
- package/dist/core/helpers/index.js.map +1 -0
- package/dist/core/helpers/operation-utils.d.ts +15 -0
- package/dist/core/helpers/operation-utils.d.ts.map +1 -0
- package/dist/core/helpers/operation-utils.js +35 -0
- package/dist/core/helpers/operation-utils.js.map +1 -0
- package/dist/core/helpers/projected-names-utils.d.ts +20 -0
- package/dist/core/helpers/projected-names-utils.d.ts.map +1 -0
- package/dist/core/helpers/projected-names-utils.js +40 -0
- package/dist/core/helpers/projected-names-utils.js.map +1 -0
- package/dist/core/helpers/type-name-utils.d.ts +14 -0
- package/dist/core/helpers/type-name-utils.d.ts.map +1 -0
- package/dist/core/helpers/type-name-utils.js +122 -0
- package/dist/core/helpers/type-name-utils.js.map +1 -0
- package/dist/core/helpers/usage-resolver.d.ts +20 -0
- package/dist/core/helpers/usage-resolver.d.ts.map +1 -0
- package/dist/core/helpers/usage-resolver.js +108 -0
- package/dist/core/helpers/usage-resolver.js.map +1 -0
- package/dist/core/index.d.ts +26 -0
- package/dist/core/index.d.ts.map +1 -0
- package/dist/core/index.js +26 -0
- package/dist/core/index.js.map +1 -0
- package/dist/core/install.d.ts +2 -0
- package/dist/core/install.d.ts.map +1 -0
- package/dist/core/install.js +26 -0
- package/dist/core/install.js.map +1 -0
- package/dist/core/library.d.ts +34 -0
- package/dist/core/library.d.ts.map +1 -0
- package/dist/core/library.js +100 -0
- package/dist/core/library.js.map +1 -0
- package/dist/core/logger/console-sink.browser.d.ts +4 -0
- package/dist/core/logger/console-sink.browser.d.ts.map +1 -0
- package/dist/core/logger/console-sink.browser.js +14 -0
- package/dist/core/logger/console-sink.browser.js.map +1 -0
- package/dist/core/logger/console-sink.d.ts +9 -0
- package/dist/core/logger/console-sink.d.ts.map +1 -0
- package/dist/core/logger/console-sink.js +81 -0
- package/dist/core/logger/console-sink.js.map +1 -0
- package/dist/core/logger/index.d.ts +3 -0
- package/dist/core/logger/index.d.ts.map +1 -0
- package/dist/core/logger/index.js +3 -0
- package/dist/core/logger/index.js.map +1 -0
- package/dist/core/logger/logger.d.ts +7 -0
- package/dist/core/logger/logger.d.ts.map +1 -0
- package/dist/core/logger/logger.js +32 -0
- package/dist/core/logger/logger.js.map +1 -0
- package/dist/core/logger/tracer.d.ts +3 -0
- package/dist/core/logger/tracer.d.ts.map +1 -0
- package/dist/core/logger/tracer.js +91 -0
- package/dist/core/logger/tracer.js.map +1 -0
- package/dist/core/manifest.d.ts +21 -0
- package/dist/core/manifest.d.ts.map +1 -0
- package/dist/core/manifest.js +8 -0
- package/dist/core/manifest.js.map +1 -0
- package/dist/core/messages.d.ts +2253 -0
- package/dist/core/messages.d.ts.map +1 -0
- package/dist/core/messages.js +749 -0
- package/dist/core/messages.js.map +1 -0
- package/dist/core/module-resolver.d.ts +84 -0
- package/dist/core/module-resolver.d.ts.map +1 -0
- package/dist/core/module-resolver.js +170 -0
- package/dist/core/module-resolver.js.map +1 -0
- package/dist/core/node-host.browser.d.ts +2 -0
- package/dist/core/node-host.browser.d.ts.map +1 -0
- package/dist/core/node-host.browser.js +2 -0
- package/dist/core/node-host.browser.js.map +1 -0
- package/dist/core/node-host.d.ts +7 -0
- package/dist/core/node-host.d.ts.map +1 -0
- package/dist/core/node-host.js +43 -0
- package/dist/core/node-host.js.map +1 -0
- package/dist/core/nonascii.d.ts +2 -0
- package/dist/core/nonascii.d.ts.map +1 -0
- package/dist/core/nonascii.js +712 -0
- package/dist/core/nonascii.js.map +1 -0
- package/dist/core/options.d.ts +46 -0
- package/dist/core/options.d.ts.map +1 -0
- package/dist/core/options.js +2 -0
- package/dist/core/options.js.map +1 -0
- package/dist/core/parser.d.ts +17 -0
- package/dist/core/parser.d.ts.map +1 -0
- package/dist/core/parser.js +2561 -0
- package/dist/core/parser.js.map +1 -0
- package/dist/core/path-utils.d.ts +193 -0
- package/dist/core/path-utils.d.ts.map +1 -0
- package/dist/core/path-utils.js +427 -0
- package/dist/core/path-utils.js.map +1 -0
- package/dist/core/program.d.ts +104 -0
- package/dist/core/program.d.ts.map +1 -0
- package/dist/core/program.js +898 -0
- package/dist/core/program.js.map +1 -0
- package/dist/core/projection-members.d.ts +8 -0
- package/dist/core/projection-members.d.ts.map +1 -0
- package/dist/core/projection-members.js +387 -0
- package/dist/core/projection-members.js.map +1 -0
- package/dist/core/projector.d.ts +26 -0
- package/dist/core/projector.d.ts.map +1 -0
- package/dist/core/projector.js +523 -0
- package/dist/core/projector.js.map +1 -0
- package/dist/core/scanner.d.ts +125 -0
- package/dist/core/scanner.d.ts.map +1 -0
- package/dist/core/scanner.js +1012 -0
- package/dist/core/scanner.js.map +1 -0
- package/dist/core/schema-validator.d.ts +6 -0
- package/dist/core/schema-validator.d.ts.map +1 -0
- package/dist/core/schema-validator.js +38 -0
- package/dist/core/schema-validator.js.map +1 -0
- package/dist/core/semantic-walker.d.ts +53 -0
- package/dist/core/semantic-walker.d.ts.map +1 -0
- package/dist/core/semantic-walker.js +355 -0
- package/dist/core/semantic-walker.js.map +1 -0
- package/dist/core/type-utils.d.ts +49 -0
- package/dist/core/type-utils.d.ts.map +1 -0
- package/dist/core/type-utils.js +95 -0
- package/dist/core/type-utils.js.map +1 -0
- package/dist/core/types.d.ts +1345 -0
- package/dist/core/types.d.ts.map +1 -0
- package/dist/core/types.js +105 -0
- package/dist/core/types.js.map +1 -0
- package/dist/core/util.d.ts +150 -0
- package/dist/core/util.d.ts.map +1 -0
- package/dist/core/util.js +417 -0
- package/dist/core/util.js.map +1 -0
- package/dist/emitter-framework/asset-emitter.d.ts +5 -0
- package/dist/emitter-framework/asset-emitter.d.ts.map +1 -0
- package/dist/emitter-framework/asset-emitter.js +610 -0
- package/dist/emitter-framework/asset-emitter.js.map +1 -0
- package/dist/emitter-framework/builders/array-builder.d.ts +7 -0
- package/dist/emitter-framework/builders/array-builder.d.ts.map +1 -0
- package/dist/emitter-framework/builders/array-builder.js +45 -0
- package/dist/emitter-framework/builders/array-builder.js.map +1 -0
- package/dist/emitter-framework/builders/object-builder.d.ts +9 -0
- package/dist/emitter-framework/builders/object-builder.d.ts.map +1 -0
- package/dist/emitter-framework/builders/object-builder.js +30 -0
- package/dist/emitter-framework/builders/object-builder.js.map +1 -0
- package/dist/emitter-framework/builders/string-builder.d.ts +13 -0
- package/dist/emitter-framework/builders/string-builder.d.ts.map +1 -0
- package/dist/emitter-framework/builders/string-builder.js +98 -0
- package/dist/emitter-framework/builders/string-builder.js.map +1 -0
- package/dist/emitter-framework/custom-key-map.d.ts +29 -0
- package/dist/emitter-framework/custom-key-map.d.ts.map +1 -0
- package/dist/emitter-framework/custom-key-map.js +62 -0
- package/dist/emitter-framework/custom-key-map.js.map +1 -0
- package/dist/emitter-framework/index.d.ts +8 -0
- package/dist/emitter-framework/index.d.ts.map +1 -0
- package/dist/emitter-framework/index.js +8 -0
- package/dist/emitter-framework/index.js.map +1 -0
- package/dist/emitter-framework/placeholder.d.ts +12 -0
- package/dist/emitter-framework/placeholder.d.ts.map +1 -0
- package/dist/emitter-framework/placeholder.js +27 -0
- package/dist/emitter-framework/placeholder.js.map +1 -0
- package/dist/emitter-framework/type-emitter.d.ts +314 -0
- package/dist/emitter-framework/type-emitter.d.ts.map +1 -0
- package/dist/emitter-framework/type-emitter.js +612 -0
- package/dist/emitter-framework/type-emitter.js.map +1 -0
- package/dist/emitter-framework/types.d.ts +124 -0
- package/dist/emitter-framework/types.d.ts.map +1 -0
- package/dist/emitter-framework/types.js +39 -0
- package/dist/emitter-framework/types.js.map +1 -0
- package/dist/formatter/index.d.ts +11 -0
- package/dist/formatter/index.d.ts.map +1 -0
- package/dist/formatter/index.js +28 -0
- package/dist/formatter/index.js.map +1 -0
- package/dist/formatter/parser.d.ts +16 -0
- package/dist/formatter/parser.d.ts.map +1 -0
- package/dist/formatter/parser.js +23 -0
- package/dist/formatter/parser.js.map +1 -0
- package/dist/formatter/print/comment-handler.d.ts +7 -0
- package/dist/formatter/print/comment-handler.d.ts.map +1 -0
- package/dist/formatter/print/comment-handler.js +81 -0
- package/dist/formatter/print/comment-handler.js.map +1 -0
- package/dist/formatter/print/index.d.ts +3 -0
- package/dist/formatter/print/index.d.ts.map +1 -0
- package/dist/formatter/print/index.js +3 -0
- package/dist/formatter/print/index.js.map +1 -0
- package/dist/formatter/print/needs-parens.d.ts +10 -0
- package/dist/formatter/print/needs-parens.d.ts.map +1 -0
- package/dist/formatter/print/needs-parens.js +27 -0
- package/dist/formatter/print/needs-parens.js.map +1 -0
- package/dist/formatter/print/printer.d.ts +62 -0
- package/dist/formatter/print/printer.d.ts.map +1 -0
- package/dist/formatter/print/printer.js +1025 -0
- package/dist/formatter/print/printer.js.map +1 -0
- package/dist/formatter/print/types.d.ts +9 -0
- package/dist/formatter/print/types.d.ts.map +1 -0
- package/dist/formatter/print/types.js +2 -0
- package/dist/formatter/print/types.js.map +1 -0
- package/dist/init/index.d.ts +2 -0
- package/dist/init/index.d.ts.map +1 -0
- package/dist/init/index.js +2 -0
- package/dist/init/index.js.map +1 -0
- package/dist/init/init-template.d.ts +45 -0
- package/dist/init/init-template.d.ts.map +1 -0
- package/dist/init/init-template.js +45 -0
- package/dist/init/init-template.js.map +1 -0
- package/dist/init/init.d.ts +49 -0
- package/dist/init/init.d.ts.map +1 -0
- package/dist/init/init.js +224 -0
- package/dist/init/init.js.map +1 -0
- package/dist/lib/decorators.d.ts +222 -0
- package/dist/lib/decorators.d.ts.map +1 -0
- package/dist/lib/decorators.js +745 -0
- package/dist/lib/decorators.js.map +1 -0
- package/dist/lib/service.d.ts +38 -0
- package/dist/lib/service.d.ts.map +1 -0
- package/dist/lib/service.js +78 -0
- package/dist/lib/service.js.map +1 -0
- package/dist/manifest.js +4 -0
- package/dist/server/completion.d.ts +10 -0
- package/dist/server/completion.d.ts.map +1 -0
- package/dist/server/completion.js +207 -0
- package/dist/server/completion.js.map +1 -0
- package/dist/server/index.d.ts +3 -0
- package/dist/server/index.d.ts.map +1 -0
- package/dist/server/index.js +3 -0
- package/dist/server/index.js.map +1 -0
- package/dist/server/language-config.d.ts +195 -0
- package/dist/server/language-config.d.ts.map +1 -0
- package/dist/server/language-config.js +102 -0
- package/dist/server/language-config.js.map +1 -0
- package/dist/server/server.d.ts +2 -0
- package/dist/server/server.d.ts.map +1 -0
- package/dist/server/server.js +131 -0
- package/dist/server/server.js.map +1 -0
- package/dist/server/serverlib.d.ts +72 -0
- package/dist/server/serverlib.d.ts.map +1 -0
- package/dist/server/serverlib.js +1034 -0
- package/dist/server/serverlib.js.map +1 -0
- package/dist/server/symbol-structure.d.ts +4 -0
- package/dist/server/symbol-structure.d.ts.map +1 -0
- package/dist/server/symbol-structure.js +121 -0
- package/dist/server/symbol-structure.js.map +1 -0
- package/dist/server/tmlanguage.d.ts +3 -0
- package/dist/server/tmlanguage.d.ts.map +1 -0
- package/dist/server/tmlanguage.js +713 -0
- package/dist/server/tmlanguage.js.map +1 -0
- package/dist/server/type-details.d.ts +11 -0
- package/dist/server/type-details.d.ts.map +1 -0
- package/dist/server/type-details.js +72 -0
- package/dist/server/type-details.js.map +1 -0
- package/dist/server/type-signature.d.ts +2 -0
- package/dist/server/type-signature.d.ts.map +1 -0
- package/dist/server/type-signature.js +108 -0
- package/dist/server/type-signature.js.map +1 -0
- package/dist/testing/expect.d.ts +49 -0
- package/dist/testing/expect.d.ts.map +1 -0
- package/dist/testing/expect.js +83 -0
- package/dist/testing/expect.js.map +1 -0
- package/dist/testing/index.d.ts +6 -0
- package/dist/testing/index.d.ts.map +1 -0
- package/dist/testing/index.js +6 -0
- package/dist/testing/index.js.map +1 -0
- package/dist/testing/test-host.d.ts +14 -0
- package/dist/testing/test-host.d.ts.map +1 -0
- package/dist/testing/test-host.js +271 -0
- package/dist/testing/test-host.js.map +1 -0
- package/dist/testing/test-server-host.d.ts +39 -0
- package/dist/testing/test-server-host.d.ts.map +1 -0
- package/dist/testing/test-server-host.js +112 -0
- package/dist/testing/test-server-host.js.map +1 -0
- package/dist/testing/test-utils.d.ts +22 -0
- package/dist/testing/test-utils.d.ts.map +1 -0
- package/dist/testing/test-utils.js +60 -0
- package/dist/testing/test-utils.js.map +1 -0
- package/dist/testing/types.d.ts +69 -0
- package/dist/testing/types.d.ts.map +1 -0
- package/dist/testing/types.js +7 -0
- package/dist/testing/types.js.map +1 -0
- package/dist/typespec.tmLanguage +1760 -0
- package/lib/decorators.tsp +420 -0
- package/lib/lib.tsp +158 -0
- package/lib/main.tsp +4 -0
- package/lib/projected-names.tsp +94 -0
- package/lib/reflection.tsp +10 -0
- package/package.json +119 -0
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
export declare const enum CharCode {
|
|
2
|
+
Null = 0,
|
|
3
|
+
MaxAscii = 127,
|
|
4
|
+
ByteOrderMark = 65279,
|
|
5
|
+
LineFeed = 10,
|
|
6
|
+
CarriageReturn = 13,
|
|
7
|
+
Space = 32,
|
|
8
|
+
Tab = 9,
|
|
9
|
+
VerticalTab = 11,
|
|
10
|
+
FormFeed = 12,
|
|
11
|
+
NextLine = 133,
|
|
12
|
+
LeftToRightMark = 8206,
|
|
13
|
+
RightToLeftMark = 8207,
|
|
14
|
+
LineSeparator = 8232,
|
|
15
|
+
ParagraphSeparator = 8233,
|
|
16
|
+
_0 = 48,
|
|
17
|
+
_1 = 49,
|
|
18
|
+
_2 = 50,
|
|
19
|
+
_3 = 51,
|
|
20
|
+
_4 = 52,
|
|
21
|
+
_5 = 53,
|
|
22
|
+
_6 = 54,
|
|
23
|
+
_7 = 55,
|
|
24
|
+
_8 = 56,
|
|
25
|
+
_9 = 57,
|
|
26
|
+
a = 97,
|
|
27
|
+
b = 98,
|
|
28
|
+
c = 99,
|
|
29
|
+
d = 100,
|
|
30
|
+
e = 101,
|
|
31
|
+
f = 102,
|
|
32
|
+
g = 103,
|
|
33
|
+
h = 104,
|
|
34
|
+
i = 105,
|
|
35
|
+
j = 106,
|
|
36
|
+
k = 107,
|
|
37
|
+
l = 108,
|
|
38
|
+
m = 109,
|
|
39
|
+
n = 110,
|
|
40
|
+
o = 111,
|
|
41
|
+
p = 112,
|
|
42
|
+
q = 113,
|
|
43
|
+
r = 114,
|
|
44
|
+
s = 115,
|
|
45
|
+
t = 116,
|
|
46
|
+
u = 117,
|
|
47
|
+
v = 118,
|
|
48
|
+
w = 119,
|
|
49
|
+
x = 120,
|
|
50
|
+
y = 121,
|
|
51
|
+
z = 122,
|
|
52
|
+
A = 65,
|
|
53
|
+
B = 66,
|
|
54
|
+
C = 67,
|
|
55
|
+
D = 68,
|
|
56
|
+
E = 69,
|
|
57
|
+
F = 70,
|
|
58
|
+
G = 71,
|
|
59
|
+
H = 72,
|
|
60
|
+
I = 73,
|
|
61
|
+
J = 74,
|
|
62
|
+
K = 75,
|
|
63
|
+
L = 76,
|
|
64
|
+
M = 77,
|
|
65
|
+
N = 78,
|
|
66
|
+
O = 79,
|
|
67
|
+
P = 80,
|
|
68
|
+
Q = 81,
|
|
69
|
+
R = 82,
|
|
70
|
+
S = 83,
|
|
71
|
+
T = 84,
|
|
72
|
+
U = 85,
|
|
73
|
+
V = 86,
|
|
74
|
+
W = 87,
|
|
75
|
+
X = 88,
|
|
76
|
+
Y = 89,
|
|
77
|
+
Z = 90,
|
|
78
|
+
_ = 95,
|
|
79
|
+
$ = 36,
|
|
80
|
+
Ampersand = 38,
|
|
81
|
+
Asterisk = 42,
|
|
82
|
+
At = 64,
|
|
83
|
+
Backslash = 92,
|
|
84
|
+
Backtick = 96,
|
|
85
|
+
Bar = 124,
|
|
86
|
+
Caret = 94,
|
|
87
|
+
CloseBrace = 125,
|
|
88
|
+
CloseBracket = 93,
|
|
89
|
+
CloseParen = 41,
|
|
90
|
+
Colon = 58,
|
|
91
|
+
Comma = 44,
|
|
92
|
+
Dot = 46,
|
|
93
|
+
DoubleQuote = 34,
|
|
94
|
+
Equals = 61,
|
|
95
|
+
Exclamation = 33,
|
|
96
|
+
GreaterThan = 62,
|
|
97
|
+
Hash = 35,
|
|
98
|
+
LessThan = 60,
|
|
99
|
+
Minus = 45,
|
|
100
|
+
OpenBrace = 123,
|
|
101
|
+
OpenBracket = 91,
|
|
102
|
+
OpenParen = 40,
|
|
103
|
+
Percent = 37,
|
|
104
|
+
Plus = 43,
|
|
105
|
+
Question = 63,
|
|
106
|
+
Semicolon = 59,
|
|
107
|
+
SingleQuote = 39,
|
|
108
|
+
Slash = 47,
|
|
109
|
+
Tilde = 126
|
|
110
|
+
}
|
|
111
|
+
export declare function utf16CodeUnits(codePoint: number): 1 | 2;
|
|
112
|
+
export declare function isHighSurrogate(ch: number): boolean;
|
|
113
|
+
export declare function isLowSurrogate(ch: number): boolean;
|
|
114
|
+
export declare function isLineBreak(ch: number): boolean;
|
|
115
|
+
export declare function isAsciiWhiteSpaceSingleLine(ch: number): boolean;
|
|
116
|
+
export declare function isNonAsciiWhiteSpaceSingleLine(ch: number): boolean;
|
|
117
|
+
export declare function isWhiteSpace(ch: number): boolean;
|
|
118
|
+
export declare function isWhiteSpaceSingleLine(ch: number): boolean;
|
|
119
|
+
export declare function trim(str: string): string;
|
|
120
|
+
export declare function isDigit(ch: number): boolean;
|
|
121
|
+
export declare function isHexDigit(ch: number): boolean;
|
|
122
|
+
export declare function isBinaryDigit(ch: number): boolean;
|
|
123
|
+
export declare function isLowercaseAsciiLetter(ch: number): boolean;
|
|
124
|
+
export declare function isAsciiIdentifierStart(ch: number): boolean;
|
|
125
|
+
export declare function isAsciiIdentifierContinue(ch: number): boolean;
|
|
126
|
+
export declare function isIdentifierStart(codePoint: number): boolean;
|
|
127
|
+
export declare function isIdentifierContinue(codePoint: number): boolean;
|
|
128
|
+
export declare function isNonAsciiIdentifierCharacter(codePoint: number): boolean;
|
|
129
|
+
export declare function codePointBefore(text: string, pos: number): number | undefined;
|
|
130
|
+
//# sourceMappingURL=charcode.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"charcode.d.ts","sourceRoot":"","sources":["../../core/charcode.ts"],"names":[],"mappings":"AAEA,0BAAkB,QAAQ;IACxB,IAAI,IAAO;IACX,QAAQ,MAAO;IACf,aAAa,QAAS;IAGtB,QAAQ,KAAO;IACf,cAAc,KAAO;IAGrB,KAAK,KAAO;IACZ,GAAG,IAAO;IACV,WAAW,KAAO;IAClB,QAAQ,KAAO;IAGf,QAAQ,MAAS;IACjB,eAAe,OAAS;IACxB,eAAe,OAAS;IACxB,aAAa,OAAS;IACtB,kBAAkB,OAAS;IAG3B,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IACT,EAAE,KAAO;IAGT,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IACR,CAAC,MAAO;IAGR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IACR,CAAC,KAAO;IAGR,CAAC,KAAO;IACR,CAAC,KAAO;IAGR,SAAS,KAAO;IAChB,QAAQ,KAAO;IACf,EAAE,KAAO;IACT,SAAS,KAAO;IAChB,QAAQ,KAAO;IACf,GAAG,MAAO;IACV,KAAK,KAAO;IACZ,UAAU,MAAO;IACjB,YAAY,KAAO;IACnB,UAAU,KAAO;IACjB,KAAK,KAAO;IACZ,KAAK,KAAO;IACZ,GAAG,KAAO;IACV,WAAW,KAAO;IAClB,MAAM,KAAO;IACb,WAAW,KAAO;IAClB,WAAW,KAAO;IAClB,IAAI,KAAO;IACX,QAAQ,KAAO;IACf,KAAK,KAAO;IACZ,SAAS,MAAO;IAChB,WAAW,KAAO;IAClB,SAAS,KAAO;IAChB,OAAO,KAAO;IACd,IAAI,KAAO;IACX,QAAQ,KAAO;IACf,SAAS,KAAO;IAChB,WAAW,KAAO;IAClB,KAAK,KAAO;IACZ,KAAK,MAAO;CACb;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,SAE/C;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,WAEzC;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,WAExC;AAED,wBAAgB,WAAW,CAAC,EAAE,EAAE,MAAM,WAErC;AAED,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,MAAM,WAOrD;AAED,wBAAgB,8BAA8B,CAAC,EAAE,EAAE,MAAM,WAQxD;AAED,wBAAgB,YAAY,CAAC,EAAE,EAAE,MAAM,WAEtC;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,WAKhD;AAED,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiBxC;AAED,wBAAgB,OAAO,CAAC,EAAE,EAAE,MAAM,WAEjC;AAED,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,WAIpC;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,MAAM,WAEvC;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,WAEhD;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,WAOhD;AAED,wBAAgB,yBAAyB,CAAC,EAAE,EAAE,MAAM,WAQnD;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,WAKlD;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,WAKrD;AAED,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,WAE9D;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAW7E"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { nonAsciiIdentifierMap } from "./nonascii.js";
|
|
2
|
+
export function utf16CodeUnits(codePoint) {
|
|
3
|
+
return codePoint >= 0x10000 ? 2 : 1;
|
|
4
|
+
}
|
|
5
|
+
export function isHighSurrogate(ch) {
|
|
6
|
+
return ch >= 0xd800 && ch <= 0xdbff;
|
|
7
|
+
}
|
|
8
|
+
export function isLowSurrogate(ch) {
|
|
9
|
+
return ch >= 0xdc00 && ch <= 0xdfff;
|
|
10
|
+
}
|
|
11
|
+
export function isLineBreak(ch) {
|
|
12
|
+
return ch === 10 /* CharCode.LineFeed */ || ch === 13 /* CharCode.CarriageReturn */;
|
|
13
|
+
}
|
|
14
|
+
export function isAsciiWhiteSpaceSingleLine(ch) {
|
|
15
|
+
return (ch === 32 /* CharCode.Space */ ||
|
|
16
|
+
ch === 9 /* CharCode.Tab */ ||
|
|
17
|
+
ch === 11 /* CharCode.VerticalTab */ ||
|
|
18
|
+
ch === 12 /* CharCode.FormFeed */);
|
|
19
|
+
}
|
|
20
|
+
export function isNonAsciiWhiteSpaceSingleLine(ch) {
|
|
21
|
+
return (ch === 133 /* CharCode.NextLine */ || // not considered a line break
|
|
22
|
+
ch === 8206 /* CharCode.LeftToRightMark */ ||
|
|
23
|
+
ch === 8207 /* CharCode.RightToLeftMark */ ||
|
|
24
|
+
ch === 8232 /* CharCode.LineSeparator */ ||
|
|
25
|
+
ch === 8233 /* CharCode.ParagraphSeparator */);
|
|
26
|
+
}
|
|
27
|
+
export function isWhiteSpace(ch) {
|
|
28
|
+
return isWhiteSpaceSingleLine(ch) || isLineBreak(ch);
|
|
29
|
+
}
|
|
30
|
+
export function isWhiteSpaceSingleLine(ch) {
|
|
31
|
+
return (isAsciiWhiteSpaceSingleLine(ch) ||
|
|
32
|
+
(ch > 127 /* CharCode.MaxAscii */ && isNonAsciiWhiteSpaceSingleLine(ch)));
|
|
33
|
+
}
|
|
34
|
+
export function trim(str) {
|
|
35
|
+
let start = 0;
|
|
36
|
+
let end = str.length - 1;
|
|
37
|
+
if (!isWhiteSpace(str.charCodeAt(start)) && !isWhiteSpace(str.charCodeAt(end))) {
|
|
38
|
+
return str;
|
|
39
|
+
}
|
|
40
|
+
while (isWhiteSpace(str.charCodeAt(start))) {
|
|
41
|
+
start++;
|
|
42
|
+
}
|
|
43
|
+
while (isWhiteSpace(str.charCodeAt(end))) {
|
|
44
|
+
end--;
|
|
45
|
+
}
|
|
46
|
+
return str.substring(start, end + 1);
|
|
47
|
+
}
|
|
48
|
+
export function isDigit(ch) {
|
|
49
|
+
return ch >= 48 /* CharCode._0 */ && ch <= 57 /* CharCode._9 */;
|
|
50
|
+
}
|
|
51
|
+
export function isHexDigit(ch) {
|
|
52
|
+
return (isDigit(ch) || (ch >= 65 /* CharCode.A */ && ch <= 70 /* CharCode.F */) || (ch >= 97 /* CharCode.a */ && ch <= 102 /* CharCode.f */));
|
|
53
|
+
}
|
|
54
|
+
export function isBinaryDigit(ch) {
|
|
55
|
+
return ch === 48 /* CharCode._0 */ || ch === 49 /* CharCode._1 */;
|
|
56
|
+
}
|
|
57
|
+
export function isLowercaseAsciiLetter(ch) {
|
|
58
|
+
return ch >= 97 /* CharCode.a */ && ch <= 122 /* CharCode.z */;
|
|
59
|
+
}
|
|
60
|
+
export function isAsciiIdentifierStart(ch) {
|
|
61
|
+
return ((ch >= 65 /* CharCode.A */ && ch <= 90 /* CharCode.Z */) ||
|
|
62
|
+
(ch >= 97 /* CharCode.a */ && ch <= 122 /* CharCode.z */) ||
|
|
63
|
+
ch === 36 /* CharCode.$ */ ||
|
|
64
|
+
ch === 95 /* CharCode._ */);
|
|
65
|
+
}
|
|
66
|
+
export function isAsciiIdentifierContinue(ch) {
|
|
67
|
+
return ((ch >= 65 /* CharCode.A */ && ch <= 90 /* CharCode.Z */) ||
|
|
68
|
+
(ch >= 97 /* CharCode.a */ && ch <= 122 /* CharCode.z */) ||
|
|
69
|
+
(ch >= 48 /* CharCode._0 */ && ch <= 57 /* CharCode._9 */) ||
|
|
70
|
+
ch === 36 /* CharCode.$ */ ||
|
|
71
|
+
ch === 95 /* CharCode._ */);
|
|
72
|
+
}
|
|
73
|
+
export function isIdentifierStart(codePoint) {
|
|
74
|
+
return (isAsciiIdentifierStart(codePoint) ||
|
|
75
|
+
(codePoint > 127 /* CharCode.MaxAscii */ && isNonAsciiIdentifierCharacter(codePoint)));
|
|
76
|
+
}
|
|
77
|
+
export function isIdentifierContinue(codePoint) {
|
|
78
|
+
return (isAsciiIdentifierContinue(codePoint) ||
|
|
79
|
+
(codePoint > 127 /* CharCode.MaxAscii */ && isNonAsciiIdentifierCharacter(codePoint)));
|
|
80
|
+
}
|
|
81
|
+
export function isNonAsciiIdentifierCharacter(codePoint) {
|
|
82
|
+
return lookupInNonAsciiMap(codePoint, nonAsciiIdentifierMap);
|
|
83
|
+
}
|
|
84
|
+
export function codePointBefore(text, pos) {
|
|
85
|
+
if (pos <= 0 || pos >= text.length) {
|
|
86
|
+
return undefined;
|
|
87
|
+
}
|
|
88
|
+
const ch = text.charCodeAt(pos - 1);
|
|
89
|
+
if (!isLowSurrogate(ch) || !isHighSurrogate(text.charCodeAt(pos - 2))) {
|
|
90
|
+
return ch;
|
|
91
|
+
}
|
|
92
|
+
return text.codePointAt(pos - 2);
|
|
93
|
+
}
|
|
94
|
+
function lookupInNonAsciiMap(codePoint, map) {
|
|
95
|
+
// Perform binary search in one of the Unicode range maps
|
|
96
|
+
let lo = 0;
|
|
97
|
+
let hi = map.length;
|
|
98
|
+
let mid;
|
|
99
|
+
while (lo + 1 < hi) {
|
|
100
|
+
mid = lo + (hi - lo) / 2;
|
|
101
|
+
// mid has to be even to catch a range's beginning
|
|
102
|
+
mid -= mid % 2;
|
|
103
|
+
if (map[mid] <= codePoint && codePoint <= map[mid + 1]) {
|
|
104
|
+
return true;
|
|
105
|
+
}
|
|
106
|
+
if (codePoint < map[mid]) {
|
|
107
|
+
hi = mid;
|
|
108
|
+
}
|
|
109
|
+
else {
|
|
110
|
+
lo = mid + 2;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=charcode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"charcode.js","sourceRoot":"","sources":["../../core/charcode.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { TypeNameOptions } from "./helpers/index.js";
|
|
2
|
+
import { Program, ProjectedProgram } from "./program.js";
|
|
3
|
+
import { BooleanLiteral, BooleanLiteralNode, Diagnostic, DiagnosticTarget, ErrorType, FunctionType, IdentifierNode, IntrinsicScalarName, JsSourceFileNode, LiteralNode, LiteralType, Model, ModelProperty, Namespace, NamespaceStatementNode, NeverType, Node, NumericLiteral, NumericLiteralNode, ProjectionNode, ProjectionStatementNode, Scalar, StringLiteral, StringLiteralNode, Sym, Type, TypeMapper, TypeReferenceNode, TypeSpecScriptNode, UnknownType, VoidType } from "./types.js";
|
|
4
|
+
export interface Checker {
|
|
5
|
+
typePrototype: TypePrototype;
|
|
6
|
+
getTypeForNode(node: Node): Type;
|
|
7
|
+
setUsingsForFile(file: TypeSpecScriptNode): void;
|
|
8
|
+
checkProgram(): void;
|
|
9
|
+
checkSourceFile(file: TypeSpecScriptNode): void;
|
|
10
|
+
getGlobalNamespaceType(): Namespace;
|
|
11
|
+
getGlobalNamespaceNode(): NamespaceStatementNode;
|
|
12
|
+
getMergedSymbol(sym: Sym | undefined): Sym | undefined;
|
|
13
|
+
mergeSourceFile(file: TypeSpecScriptNode | JsSourceFileNode): void;
|
|
14
|
+
getLiteralType(node: StringLiteralNode): StringLiteral;
|
|
15
|
+
getLiteralType(node: NumericLiteralNode): NumericLiteral;
|
|
16
|
+
getLiteralType(node: BooleanLiteralNode): BooleanLiteral;
|
|
17
|
+
getLiteralType(node: LiteralNode): LiteralType;
|
|
18
|
+
/**
|
|
19
|
+
* @deprecated use `import { getTypeName } from "@typespec/compiler";`
|
|
20
|
+
*/
|
|
21
|
+
getTypeName(type: Type, options?: TypeNameOptions): string;
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated use `import { getNamespaceFullName } from "@typespec/compiler";`
|
|
24
|
+
*/
|
|
25
|
+
getNamespaceString(type: Namespace | undefined, options?: TypeNameOptions): string;
|
|
26
|
+
cloneType<T extends Type>(type: T, additionalProps?: {
|
|
27
|
+
[P in keyof T]?: T[P];
|
|
28
|
+
}): T;
|
|
29
|
+
evalProjection(node: ProjectionNode, target: Type, args: Type[]): Type;
|
|
30
|
+
project(target: Type, projection: ProjectionNode, args?: (Type | string | number | boolean)[]): Type;
|
|
31
|
+
resolveIdentifier(node: IdentifierNode): Sym | undefined;
|
|
32
|
+
resolveCompletions(node: IdentifierNode): Map<string, TypeSpecCompletionItem>;
|
|
33
|
+
createType<T>(typeDef: T): T & TypePrototype;
|
|
34
|
+
createAndFinishType<U extends Type extends any ? Omit<Type, keyof TypePrototype> : never>(typeDef: U): U & TypePrototype;
|
|
35
|
+
finishType<T extends Type>(typeDef: T): T;
|
|
36
|
+
createFunctionType(fn: (...args: Type[]) => Type): FunctionType;
|
|
37
|
+
createLiteralType(value: string, node?: StringLiteralNode): StringLiteral;
|
|
38
|
+
createLiteralType(value: number, node?: NumericLiteralNode): NumericLiteral;
|
|
39
|
+
createLiteralType(value: boolean, node?: BooleanLiteralNode): BooleanLiteral;
|
|
40
|
+
createLiteralType(value: string | number | boolean, node?: StringLiteralNode | NumericLiteralNode | BooleanLiteralNode): StringLiteral | NumericLiteral | BooleanLiteral;
|
|
41
|
+
createLiteralType(value: string | number | boolean, node?: StringLiteralNode | NumericLiteralNode | BooleanLiteralNode): StringLiteral | NumericLiteral | BooleanLiteral;
|
|
42
|
+
/**
|
|
43
|
+
* Check if the source type can be assigned to the target type.
|
|
44
|
+
* @param source Source type, should be assignable to the target.
|
|
45
|
+
* @param target Target type
|
|
46
|
+
* @param diagnosticTarget Target for the diagnostic, unless something better can be inferred.
|
|
47
|
+
* @returns [related, list of diagnostics]
|
|
48
|
+
*/
|
|
49
|
+
isTypeAssignableTo(source: Type, target: Type, diagnosticTarget: DiagnosticTarget): [boolean, Diagnostic[]];
|
|
50
|
+
/**
|
|
51
|
+
* Check if the given type is one of the built-in standard TypeSpec Types.
|
|
52
|
+
* @param type Type to check
|
|
53
|
+
* @param stdType If provided check is that standard type
|
|
54
|
+
*/
|
|
55
|
+
isStdType(type: Scalar, stdType?: IntrinsicScalarName): type is Scalar & {
|
|
56
|
+
name: IntrinsicScalarName;
|
|
57
|
+
};
|
|
58
|
+
isStdType(type: Type, stdType?: StdTypeName): type is Type & {
|
|
59
|
+
name: StdTypeName;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Std type
|
|
63
|
+
* @param name Name
|
|
64
|
+
*/
|
|
65
|
+
getStdType<T extends keyof StdTypes>(name: T): StdTypes[T];
|
|
66
|
+
/**
|
|
67
|
+
* Check and resolve a type for the given type reference node.
|
|
68
|
+
* @param node Node.
|
|
69
|
+
* @returns Resolved type and diagnostics if there was an error.
|
|
70
|
+
*/
|
|
71
|
+
resolveTypeReference(node: TypeReferenceNode): [Type | undefined, readonly Diagnostic[]];
|
|
72
|
+
errorType: ErrorType;
|
|
73
|
+
voidType: VoidType;
|
|
74
|
+
neverType: NeverType;
|
|
75
|
+
anyType: UnknownType;
|
|
76
|
+
}
|
|
77
|
+
interface TypePrototype {
|
|
78
|
+
projections: ProjectionStatementNode[];
|
|
79
|
+
projectionsByName(name: string): ProjectionStatementNode[];
|
|
80
|
+
}
|
|
81
|
+
/** @deprecated Use TypeSpecCompletionItem */
|
|
82
|
+
export type CadlCompletionItem = TypeSpecCompletionItem;
|
|
83
|
+
export interface TypeSpecCompletionItem {
|
|
84
|
+
sym: Sym;
|
|
85
|
+
/**
|
|
86
|
+
* Optional label if different from the text to complete.
|
|
87
|
+
*/
|
|
88
|
+
label?: string;
|
|
89
|
+
}
|
|
90
|
+
type StdTypeName = IntrinsicScalarName | "Array" | "Record" | "object";
|
|
91
|
+
type StdTypes = {
|
|
92
|
+
Array: Model;
|
|
93
|
+
Record: Model;
|
|
94
|
+
} & Record<IntrinsicScalarName, Scalar>;
|
|
95
|
+
export declare function createChecker(program: Program): Checker;
|
|
96
|
+
/**
|
|
97
|
+
* If the input is anonymous (or the provided filter removes properties)
|
|
98
|
+
* and there exists a named model with the same set of properties
|
|
99
|
+
* (ignoring filtered properties), then return that named model.
|
|
100
|
+
* Otherwise, return the input unchanged.
|
|
101
|
+
*
|
|
102
|
+
* This can be used by emitters to find a better name for a set of
|
|
103
|
+
* properties after filtering. For example, given `{ @metadata prop:
|
|
104
|
+
* string} & SomeName`, and an emitter that wishes to discard properties
|
|
105
|
+
* marked with `@metadata`, the emitter can use this to recover that the
|
|
106
|
+
* best name for the remaining properties is `SomeName`.
|
|
107
|
+
*
|
|
108
|
+
* @param model The input model
|
|
109
|
+
* @param filter An optional filter to apply to the input model's
|
|
110
|
+
* properties.
|
|
111
|
+
*/
|
|
112
|
+
export declare function getEffectiveModelType(program: Program, model: Model, filter?: (property: ModelProperty) => boolean): Model;
|
|
113
|
+
/**
|
|
114
|
+
* Applies a filter to the properties of a given type. If no properties
|
|
115
|
+
* are filtered out, then return the input unchanged. Otherwise, return
|
|
116
|
+
* a new anonymous model with only the filtered properties.
|
|
117
|
+
*
|
|
118
|
+
* @param model The input model to filter.
|
|
119
|
+
* @param filter The filter to apply. Properties are kept when this returns true.
|
|
120
|
+
*/
|
|
121
|
+
export declare function filterModelProperties(program: Program | ProjectedProgram, model: Model, filter: (property: ModelProperty) => boolean): Model;
|
|
122
|
+
/**
|
|
123
|
+
* Gets the property from the nearest base type that is overridden by the
|
|
124
|
+
* given property, if any.
|
|
125
|
+
*/
|
|
126
|
+
export declare function getOverriddenProperty(property: ModelProperty): ModelProperty | undefined;
|
|
127
|
+
/**
|
|
128
|
+
* Enumerates the properties declared by model or inherited from its base.
|
|
129
|
+
*
|
|
130
|
+
* Properties declared by more derived types are enumerated before properties
|
|
131
|
+
* of less derived types.
|
|
132
|
+
*
|
|
133
|
+
* Properties that are overridden are not enumerated.
|
|
134
|
+
*/
|
|
135
|
+
export declare function walkPropertiesInherited(model: Model): Generator<ModelProperty, void, unknown>;
|
|
136
|
+
export declare function finishTypeForProgram<T extends Type>(program: Program, typeDef: T, mapper?: TypeMapper): T;
|
|
137
|
+
export {};
|
|
138
|
+
//# sourceMappingURL=checker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../core/checker.ts"],"names":[],"mappings":"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"}
|