semantifold 0.3.0 → 0.4.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/README.md +58 -15
- package/build/index.d.ts +48 -2
- package/build/index.d.ts.map +1 -1
- package/build/index.js +57 -8
- package/build/src/artifact-path.d.ts +23 -1
- package/build/src/artifact-path.d.ts.map +1 -1
- package/build/src/artifact-path.js +45 -3
- package/build/src/artifacts.d.ts.map +1 -1
- package/build/src/artifacts.js +66 -1
- package/build/src/backends/c-validation.d.ts.map +1 -1
- package/build/src/backends/c-validation.js +7 -3
- package/build/src/backends/cpp-validation.d.ts.map +1 -1
- package/build/src/backends/cpp-validation.js +7 -3
- package/build/src/backends/csharp.js +7 -1
- package/build/src/backends/dart-runtime.d.ts +2 -0
- package/build/src/backends/dart-runtime.d.ts.map +1 -0
- package/build/src/backends/dart-runtime.js +41 -0
- package/build/src/backends/dart.d.ts +20 -0
- package/build/src/backends/dart.d.ts.map +1 -0
- package/build/src/backends/dart.js +321 -0
- package/build/src/backends/effects.d.ts +60 -0
- package/build/src/backends/effects.d.ts.map +1 -0
- package/build/src/backends/effects.js +746 -0
- package/build/src/backends/go.js +18 -4
- package/build/src/backends/identifiers.d.ts +36 -4
- package/build/src/backends/identifiers.d.ts.map +1 -1
- package/build/src/backends/identifiers.js +154 -10
- package/build/src/backends/index.d.ts.map +1 -1
- package/build/src/backends/index.js +27 -4
- package/build/src/backends/ios.d.ts +68 -0
- package/build/src/backends/ios.d.ts.map +1 -0
- package/build/src/backends/ios.js +1503 -0
- package/build/src/backends/java.d.ts.map +1 -1
- package/build/src/backends/java.js +429 -36
- package/build/src/backends/javascript.d.ts +6 -0
- package/build/src/backends/javascript.d.ts.map +1 -1
- package/build/src/backends/javascript.js +380 -24
- package/build/src/backends/kotlin-runtime.d.ts +3 -0
- package/build/src/backends/kotlin-runtime.d.ts.map +1 -0
- package/build/src/backends/kotlin-runtime.js +29 -0
- package/build/src/backends/kotlin.d.ts +23 -0
- package/build/src/backends/kotlin.d.ts.map +1 -0
- package/build/src/backends/kotlin.js +136 -0
- package/build/src/backends/native-validation.d.ts +2 -2
- package/build/src/backends/native-validation.d.ts.map +1 -1
- package/build/src/backends/native-validation.js +2 -2
- package/build/src/backends/ordered-expressions.d.ts.map +1 -1
- package/build/src/backends/ordered-expressions.js +39 -7
- package/build/src/backends/php-stdlib-support.d.ts +19 -0
- package/build/src/backends/php-stdlib-support.d.ts.map +1 -0
- package/build/src/backends/php-stdlib-support.js +227 -0
- package/build/src/backends/php.d.ts.map +1 -1
- package/build/src/backends/php.js +448 -33
- package/build/src/backends/program.d.ts +81 -0
- package/build/src/backends/program.d.ts.map +1 -0
- package/build/src/backends/program.js +1308 -0
- package/build/src/backends/python.js +7 -1
- package/build/src/backends/ruby.d.ts.map +1 -1
- package/build/src/backends/ruby.js +310 -24
- package/build/src/backends/rust-runtime.d.ts +7 -0
- package/build/src/backends/rust-runtime.d.ts.map +1 -0
- package/build/src/backends/rust-runtime.js +32 -0
- package/build/src/backends/rust-validation.d.ts +9 -0
- package/build/src/backends/rust-validation.d.ts.map +1 -0
- package/build/src/backends/rust-validation.js +78 -0
- package/build/src/backends/rust.d.ts +24 -0
- package/build/src/backends/rust.d.ts.map +1 -0
- package/build/src/backends/rust.js +344 -0
- package/build/src/backends/scalars.d.ts +14 -6
- package/build/src/backends/scalars.d.ts.map +1 -1
- package/build/src/backends/scalars.js +167 -17
- package/build/src/backends/shared.d.ts +23 -4
- package/build/src/backends/shared.d.ts.map +1 -1
- package/build/src/backends/shared.js +2158 -62
- package/build/src/backends/stdlib-support.d.ts +14 -0
- package/build/src/backends/stdlib-support.d.ts.map +1 -0
- package/build/src/backends/stdlib-support.js +237 -0
- package/build/src/backends/swift-runtime.d.ts +3 -0
- package/build/src/backends/swift-runtime.d.ts.map +1 -0
- package/build/src/backends/swift-runtime.js +14 -0
- package/build/src/backends/swift.d.ts +8 -0
- package/build/src/backends/swift.d.ts.map +1 -0
- package/build/src/backends/swift.js +127 -0
- package/build/src/backends/typescript.d.ts.map +1 -1
- package/build/src/backends/typescript.js +344 -24
- package/build/src/backends/wasm.d.ts +43 -0
- package/build/src/backends/wasm.d.ts.map +1 -0
- package/build/src/backends/wasm.js +2164 -0
- package/build/src/backends/writer.d.ts +235 -4
- package/build/src/backends/writer.d.ts.map +1 -1
- package/build/src/backends/writer.js +468 -3
- package/build/src/diagnostic.d.ts +4 -3
- package/build/src/diagnostic.d.ts.map +1 -1
- package/build/src/diagnostic.js +5 -3
- package/build/src/frontends/c.d.ts.map +1 -1
- package/build/src/frontends/c.js +5 -3
- package/build/src/frontends/cpp.d.ts.map +1 -1
- package/build/src/frontends/cpp.js +5 -3
- package/build/src/frontends/csharp.d.ts.map +1 -1
- package/build/src/frontends/csharp.js +7 -3
- package/build/src/frontends/dart.d.ts +10 -0
- package/build/src/frontends/dart.d.ts.map +1 -0
- package/build/src/frontends/dart.js +913 -0
- package/build/src/frontends/index.d.ts +3 -1
- package/build/src/frontends/index.d.ts.map +1 -1
- package/build/src/frontends/index.js +15 -5
- package/build/src/frontends/java.d.ts +110 -1
- package/build/src/frontends/java.d.ts.map +1 -1
- package/build/src/frontends/java.js +1725 -70
- package/build/src/frontends/javascript-typescript.d.ts +69 -1
- package/build/src/frontends/javascript-typescript.d.ts.map +1 -1
- package/build/src/frontends/javascript-typescript.js +1825 -93
- package/build/src/frontends/kotlin.d.ts +10 -0
- package/build/src/frontends/kotlin.d.ts.map +1 -0
- package/build/src/frontends/kotlin.js +685 -0
- package/build/src/frontends/php.d.ts +118 -1
- package/build/src/frontends/php.d.ts.map +1 -1
- package/build/src/frontends/php.js +1583 -76
- package/build/src/frontends/program.d.ts +74 -0
- package/build/src/frontends/program.d.ts.map +1 -0
- package/build/src/frontends/program.js +989 -0
- package/build/src/frontends/ruby.d.ts +68 -1
- package/build/src/frontends/ruby.d.ts.map +1 -1
- package/build/src/frontends/ruby.js +1446 -101
- package/build/src/frontends/rust-parser.d.ts +11 -0
- package/build/src/frontends/rust-parser.d.ts.map +1 -0
- package/build/src/frontends/rust-parser.js +15 -0
- package/build/src/frontends/rust.d.ts +14 -0
- package/build/src/frontends/rust.d.ts.map +1 -0
- package/build/src/frontends/rust.js +715 -0
- package/build/src/frontends/scalars.d.ts +10 -0
- package/build/src/frontends/scalars.d.ts.map +1 -1
- package/build/src/frontends/scalars.js +28 -2
- package/build/src/frontends/swift.d.ts +10 -0
- package/build/src/frontends/swift.d.ts.map +1 -0
- package/build/src/frontends/swift.js +860 -0
- package/build/src/frontends/types.d.ts +186 -0
- package/build/src/frontends/types.d.ts.map +1 -0
- package/build/src/frontends/types.js +634 -0
- package/build/src/language-registry.d.ts +46 -4
- package/build/src/language-registry.d.ts.map +1 -1
- package/build/src/language-registry.js +167 -13
- package/build/src/mapping.d.ts +2 -2
- package/build/src/mapping.d.ts.map +1 -1
- package/build/src/mapping.js +31 -10
- package/build/src/semantic/capabilities.d.ts +66 -0
- package/build/src/semantic/capabilities.d.ts.map +1 -0
- package/build/src/semantic/capabilities.js +649 -0
- package/build/src/semantic/effects.d.ts +26 -0
- package/build/src/semantic/effects.d.ts.map +1 -0
- package/build/src/semantic/effects.js +764 -0
- package/build/src/semantic/generics.d.ts +23 -0
- package/build/src/semantic/generics.d.ts.map +1 -0
- package/build/src/semantic/generics.js +61 -0
- package/build/src/semantic/lifetime.d.ts +37 -0
- package/build/src/semantic/lifetime.d.ts.map +1 -0
- package/build/src/semantic/lifetime.js +527 -0
- package/build/src/semantic/provenance.d.ts +9 -2
- package/build/src/semantic/provenance.d.ts.map +1 -1
- package/build/src/semantic/provenance.js +462 -20
- package/build/src/semantic/scalars.d.ts +11 -0
- package/build/src/semantic/scalars.d.ts.map +1 -1
- package/build/src/semantic/scalars.js +16 -1
- package/build/src/semantic/stdlib.d.ts +254 -0
- package/build/src/semantic/stdlib.d.ts.map +1 -0
- package/build/src/semantic/stdlib.js +880 -0
- package/build/src/semantic/types.d.ts +2952 -202
- package/build/src/semantic/types.d.ts.map +1 -1
- package/build/src/semantic/types.js +688 -15
- package/build/src/semantic/validate.d.ts +85 -5
- package/build/src/semantic/validate.d.ts.map +1 -1
- package/build/src/semantic/validate.js +2576 -98
- package/build/src/stdlib-facades.d.ts +304 -0
- package/build/src/stdlib-facades.d.ts.map +1 -0
- package/build/src/stdlib-facades.js +1167 -0
- package/build/src/stdlib-negotiation.d.ts +69 -0
- package/build/src/stdlib-negotiation.d.ts.map +1 -0
- package/build/src/stdlib-negotiation.js +403 -0
- package/build/src/stdlib-providers.d.ts +72 -0
- package/build/src/stdlib-providers.d.ts.map +1 -0
- package/build/src/stdlib-providers.js +339 -0
- package/build/src/toolchains.d.ts +55 -1
- package/build/src/toolchains.d.ts.map +1 -1
- package/build/src/toolchains.js +15 -4
- package/docs/architecture.md +45 -13
- package/docs/dart.md +60 -0
- package/docs/goals.md +3 -3
- package/docs/ios.md +121 -0
- package/docs/kotlin.md +42 -0
- package/docs/language-support.md +231 -26
- package/docs/multi-file-modules.md +52 -0
- package/docs/parser-qualification.md +121 -8
- package/docs/plans/2026-09-05-standard-library-portability.md +10 -10
- package/docs/rust.md +88 -0
- package/docs/source-maps.md +15 -7
- package/docs/standard-library-portability.md +39 -8
- package/docs/swift.md +44 -0
- package/docs/testing.md +366 -4
- package/docs/webassembly.md +52 -0
- package/index.js +63 -8
- package/node_modules/semantifold-tree-sitter-legacy-internal/README.md +2 -2
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/LICENSE +21 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/README.md +45 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/binding.gyp +30 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/binding.cc +20 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/binding_test.js +9 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/index.d.ts +28 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/bindings/node/index.js +11 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/grammar.js +1630 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/package.json +64 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/darwin-arm64/tree-sitter-rust.node +0 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/darwin-x64/tree-sitter-rust.node +0 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/linux-arm64/tree-sitter-rust.node +0 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/linux-x64/tree-sitter-rust.node +0 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/win32-arm64/tree-sitter-rust.node +0 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/prebuilds/win32-x64/tree-sitter-rust.node +0 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/highlights.scm +159 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/injections.scm +9 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/queries/tags.scm +60 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/grammar.json +9405 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/node-types.json +5399 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/parser.c +192569 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/scanner.c +393 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/alloc.h +54 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/array.h +290 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/src/tree_sitter/parser.h +266 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/tree-sitter-rust.wasm +0 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/node_modules/tree-sitter-rust/tree-sitter.json +53 -0
- package/node_modules/semantifold-tree-sitter-legacy-internal/package.json +3 -2
- package/node_modules/semantifold-tree-sitter-legacy-internal/src/c.js +5 -4
- package/package.json +5 -2
- package/src/artifact-path.js +47 -2
- package/src/artifacts.js +67 -0
- package/src/backends/c-validation.js +6 -1
- package/src/backends/cpp-validation.js +6 -1
- package/src/backends/csharp.js +3 -0
- package/src/backends/dart-runtime.js +41 -0
- package/src/backends/dart.js +326 -0
- package/src/backends/effects.js +705 -0
- package/src/backends/go.js +14 -2
- package/src/backends/identifiers.js +160 -9
- package/src/backends/index.js +27 -2
- package/src/backends/ios.js +1612 -0
- package/src/backends/java.js +454 -36
- package/src/backends/javascript.js +389 -23
- package/src/backends/kotlin-runtime.js +29 -0
- package/src/backends/kotlin.js +141 -0
- package/src/backends/native-validation.js +1 -1
- package/src/backends/ordered-expressions.js +40 -6
- package/src/backends/php-stdlib-support.js +239 -0
- package/src/backends/php.js +469 -32
- package/src/backends/program.js +1407 -0
- package/src/backends/python.js +3 -0
- package/src/backends/ruby.js +326 -23
- package/src/backends/rust-runtime.js +34 -0
- package/src/backends/rust-validation.js +75 -0
- package/src/backends/rust.js +335 -0
- package/src/backends/scalars.js +141 -16
- package/src/backends/shared.js +2304 -124
- package/src/backends/stdlib-support.js +234 -0
- package/src/backends/swift-runtime.js +14 -0
- package/src/backends/swift.js +132 -0
- package/src/backends/typescript.js +349 -23
- package/src/backends/wasm.js +2208 -0
- package/src/backends/writer.js +520 -2
- package/src/diagnostic.js +4 -2
- package/src/frontends/c.js +4 -2
- package/src/frontends/cpp.js +4 -2
- package/src/frontends/csharp.js +4 -2
- package/src/frontends/dart.js +963 -0
- package/src/frontends/index.js +14 -4
- package/src/frontends/java.js +1977 -69
- package/src/frontends/javascript-typescript.js +2046 -102
- package/src/frontends/kotlin.js +713 -0
- package/src/frontends/php.js +1725 -79
- package/src/frontends/program.js +1062 -0
- package/src/frontends/ruby.js +1624 -98
- package/src/frontends/rust-parser.js +18 -0
- package/src/frontends/rust.js +714 -0
- package/src/frontends/scalars.js +31 -1
- package/src/frontends/swift.js +893 -0
- package/src/frontends/types.js +750 -0
- package/src/language-registry.js +172 -12
- package/src/mapping.js +33 -9
- package/src/semantic/capabilities.js +671 -0
- package/src/semantic/effects.js +737 -0
- package/src/semantic/generics.js +58 -0
- package/src/semantic/lifetime.js +517 -0
- package/src/semantic/provenance.js +412 -19
- package/src/semantic/scalars.js +17 -0
- package/src/semantic/stdlib.js +921 -0
- package/src/semantic/types.js +765 -14
- package/src/semantic/validate.js +2934 -209
- package/src/stdlib-facades.js +1211 -0
- package/src/stdlib-negotiation.js +446 -0
- package/src/stdlib-providers.js +377 -0
- package/src/toolchains.js +16 -3
|
@@ -1,12 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chooses an unqualified target binding without treating a source-profile qualifier as semantic identity.
|
|
3
|
+
* @param {import("../semantic/types.js").SemanticProgram} program - Owning program.
|
|
4
|
+
* @param {import("../semantic/types.js").SemanticProgramModule} module - Importing module.
|
|
5
|
+
* @param {import("../semantic/types.js").SemanticImport} imported - Resolved import.
|
|
6
|
+
* @returns {string} Target-local binding spelling.
|
|
7
|
+
*/
|
|
8
|
+
export declare function programImportName(program: import("../semantic/types.js").SemanticProgram, module: import("../semantic/types.js").SemanticProgramModule, imported: import("../semantic/types.js").SemanticImport): string;
|
|
1
9
|
/** Source-aware deterministic generated-output builder. */
|
|
2
10
|
export declare class SourceWriter {
|
|
3
11
|
#private;
|
|
4
12
|
filename: string;
|
|
5
|
-
language: import("../semantic/types.js").
|
|
13
|
+
language: import("../semantic/types.js").GeneratedTextLanguage;
|
|
14
|
+
module: import("../semantic/types.js").SemanticModule;
|
|
15
|
+
program: import("../semantic/types.js").SemanticProgram | undefined;
|
|
16
|
+
programPaths: Map<string, string> | undefined;
|
|
6
17
|
index: {
|
|
7
18
|
provenance: import("../semantic/types.js").SemanticProvenance;
|
|
8
19
|
recordFor: (node: import("../semantic/types.js").SemanticNode, path?: string) => import("../semantic/types.js").SemanticNodeProvenance;
|
|
9
20
|
};
|
|
21
|
+
stdlibProviderEntries: Record<string, string> | undefined;
|
|
22
|
+
stdlibProviderPath: string | undefined;
|
|
23
|
+
stdlibProviderPaths: string[] | undefined;
|
|
24
|
+
stdlibProviderImports: string[] | undefined;
|
|
25
|
+
stdlibProviderOwnerModule: string | undefined;
|
|
26
|
+
stdlibProviderShims: string[] | undefined;
|
|
27
|
+
records: Map<string | undefined, import("../semantic/types.js").RecordDeclaration>;
|
|
28
|
+
classes: Map<string | undefined, import("../semantic/types.js").ClassDeclaration>;
|
|
29
|
+
errors: Map<string | undefined, import("../semantic/types.js").EffectFailureDeclaration | import("../semantic/types.js").ErrorDeclaration>;
|
|
30
|
+
resources: Map<string, import("../semantic/types.js").EffectResourceDeclaration>;
|
|
31
|
+
effectOperations: Map<string, import("../semantic/types.js").EffectOperationDeclaration>;
|
|
32
|
+
effectOperationModules: Map<string, string>;
|
|
33
|
+
fields: Map<string | undefined, import("../semantic/types.js").RecordField>;
|
|
34
|
+
fieldRecords: Map<string | undefined, import("../semantic/types.js").RecordDeclaration>;
|
|
35
|
+
privateFields: Map<string | undefined, import("../semantic/types.js").PrivateField>;
|
|
36
|
+
methods: Map<string | undefined, import("../semantic/types.js").MethodDeclaration>;
|
|
37
|
+
typeParameters: Map<string | undefined, import("../semantic/types.js").TypeParameter>;
|
|
38
|
+
referenceClassEmissionDepth: number;
|
|
39
|
+
/** @type {Map<string, import("../semantic/types.js").SemanticProgramModule>} */
|
|
40
|
+
declarationModules: Map<string, import("../semantic/types.js").SemanticProgramModule>;
|
|
10
41
|
/** @type {string[]} */
|
|
11
42
|
parts: string[];
|
|
12
43
|
/** @type {import("../semantic/types.js").SemantifoldMappingSpan[]} */
|
|
@@ -14,24 +45,72 @@ export declare class SourceWriter {
|
|
|
14
45
|
offset: number;
|
|
15
46
|
line: number;
|
|
16
47
|
column: number;
|
|
48
|
+
/** @type {Map<import("../semantic/types.js").Expression, string>} */
|
|
49
|
+
effectTemporaryNames: Map<import("../semantic/types.js").Expression, string>;
|
|
50
|
+
/** @type {Map<import("../semantic/types.js").Expression, string>} */
|
|
51
|
+
effectReplacementNames: Map<import("../semantic/types.js").Expression, string>;
|
|
52
|
+
/** @type {import("../semantic/types.js").Expression | undefined} */
|
|
53
|
+
effectDefinition: import("../semantic/types.js").Expression | undefined;
|
|
54
|
+
usedBindingNames: Set<string>;
|
|
17
55
|
/**
|
|
18
56
|
* Creates a source-aware writer.
|
|
19
57
|
* @param {object} options - Writer options.
|
|
20
58
|
* @param {string} options.filename - Output filename.
|
|
21
|
-
* @param {import("../semantic/types.js").
|
|
59
|
+
* @param {import("../semantic/types.js").GeneratedTextLanguage} options.language - Output text language.
|
|
22
60
|
* @param {import("../semantic/types.js").SemanticModule} options.module - Semantic module.
|
|
61
|
+
* @param {import("../semantic/types.js").SemanticProgram} [options.program] - Owning multi-file program.
|
|
62
|
+
* @param {Map<string, string>} [options.programPaths] - Planned artifact path by module identity.
|
|
23
63
|
* @param {{filename: string, content: string, language?: import("../semantic/types.js").SemanticLanguage}[]} [options.sources] - Caller-provided sources.
|
|
64
|
+
* @param {Record<string, string>} [options.stdlibProviderEntries] - Used operation to protected native entry for a linked stdlib provider.
|
|
65
|
+
* @param {string} [options.stdlibProviderPath] - Planned stdlib provider artifact path.
|
|
66
|
+
* @param {string[]} [options.stdlibProviderPaths] - Planned stdlib provider artifact paths.
|
|
67
|
+
* @param {string[]} [options.stdlibProviderImports] - Ordered provider names this module must import.
|
|
68
|
+
* @param {string} [options.stdlibProviderOwnerModule] - Java owner module identity hosting the shared support block and shims.
|
|
69
|
+
* @param {string[]} [options.stdlibProviderShims] - Java owner program-wide used operations exposed as public static shims.
|
|
24
70
|
*/
|
|
25
|
-
constructor({ filename, language, module, sources }: {
|
|
71
|
+
constructor({ filename, language, module, program, programPaths, sources, stdlibProviderEntries, stdlibProviderPath, stdlibProviderPaths, stdlibProviderImports, stdlibProviderOwnerModule, stdlibProviderShims }: {
|
|
26
72
|
filename: string;
|
|
27
|
-
language: import("../semantic/types.js").
|
|
73
|
+
language: import("../semantic/types.js").GeneratedTextLanguage;
|
|
28
74
|
module: import("../semantic/types.js").SemanticModule;
|
|
75
|
+
program?: import("../semantic/types.js").SemanticProgram;
|
|
76
|
+
programPaths?: Map<string, string>;
|
|
29
77
|
sources?: {
|
|
30
78
|
filename: string;
|
|
31
79
|
content: string;
|
|
32
80
|
language?: import("../semantic/types.js").SemanticLanguage;
|
|
33
81
|
}[];
|
|
82
|
+
stdlibProviderEntries?: Record<string, string>;
|
|
83
|
+
stdlibProviderPath?: string;
|
|
84
|
+
stdlibProviderPaths?: string[];
|
|
85
|
+
stdlibProviderImports?: string[];
|
|
86
|
+
stdlibProviderOwnerModule?: string;
|
|
87
|
+
stdlibProviderShims?: string[];
|
|
34
88
|
});
|
|
89
|
+
/**
|
|
90
|
+
* Installs the effect expressions lowered immediately before the current statement.
|
|
91
|
+
* @param {import("../semantic/types.js").Expression[]} expressions - Ordered expressions.
|
|
92
|
+
* @returns {void}
|
|
93
|
+
*/
|
|
94
|
+
planEffectReplacements(expressions: import("../semantic/types.js").Expression[]): void;
|
|
95
|
+
/**
|
|
96
|
+
* Allocates a collision-safe name for one deterministic effect site.
|
|
97
|
+
* @param {import("../semantic/types.js").Expression} expression - Effectful expression.
|
|
98
|
+
* @returns {string} Stable temporary name.
|
|
99
|
+
*/
|
|
100
|
+
effectTemporaryName(expression: import("../semantic/types.js").Expression): string;
|
|
101
|
+
/**
|
|
102
|
+
* Returns the planned temporary replacement outside its own definition.
|
|
103
|
+
* @param {import("../semantic/types.js").Expression} expression - Candidate expression.
|
|
104
|
+
* @returns {string | undefined} Temporary name.
|
|
105
|
+
*/
|
|
106
|
+
effectReplacementName(expression: import("../semantic/types.js").Expression): string | undefined;
|
|
107
|
+
/**
|
|
108
|
+
* Emits one effect definition without recursively replacing itself.
|
|
109
|
+
* @param {import("../semantic/types.js").Expression} expression - Defined expression.
|
|
110
|
+
* @param {() => void} emit - Target expression emitter.
|
|
111
|
+
* @returns {void}
|
|
112
|
+
*/
|
|
113
|
+
emitEffectDefinition(expression: import("../semantic/types.js").Expression, emit: () => void): void;
|
|
35
114
|
/**
|
|
36
115
|
* Returns generated content so far.
|
|
37
116
|
* @returns {string} Generated content.
|
|
@@ -43,6 +122,158 @@ export declare class SourceWriter {
|
|
|
43
122
|
* @returns {string} Current occurrence path.
|
|
44
123
|
*/
|
|
45
124
|
occurrencePath(node: import("../semantic/types.js").SemanticNode): string;
|
|
125
|
+
/**
|
|
126
|
+
* Resolves a validated nominal declaration identity for target emission.
|
|
127
|
+
* @param {string} declarationId - Semantic record identity.
|
|
128
|
+
* @returns {import("../semantic/types.js").RecordDeclaration} Record declaration.
|
|
129
|
+
*/
|
|
130
|
+
recordForId(declarationId: string): import("../semantic/types.js").RecordDeclaration;
|
|
131
|
+
/**
|
|
132
|
+
* Returns the target spelling for a nominal record identity.
|
|
133
|
+
* @param {string} declarationId - Stable record declaration identity.
|
|
134
|
+
* @param {boolean} [valuePosition] - Whether the binding must exist at runtime.
|
|
135
|
+
* @returns {string} Target record spelling.
|
|
136
|
+
*/
|
|
137
|
+
recordNameForId(declarationId: string, valuePosition?: boolean): string;
|
|
138
|
+
/**
|
|
139
|
+
* Resolves one validated reference class.
|
|
140
|
+
* @param {string} declarationId - Stable class identity.
|
|
141
|
+
* @returns {import("../semantic/types.js").ClassDeclaration} Class declaration.
|
|
142
|
+
*/
|
|
143
|
+
classForId(declarationId: string): import("../semantic/types.js").ClassDeclaration;
|
|
144
|
+
/**
|
|
145
|
+
* Returns the target spelling of one reference class.
|
|
146
|
+
* @param {string} declarationId - Stable class identity.
|
|
147
|
+
* @returns {string} Target spelling.
|
|
148
|
+
*/
|
|
149
|
+
classNameForId(declarationId: string): string;
|
|
150
|
+
/**
|
|
151
|
+
* Resolves one validated owned-resource declaration.
|
|
152
|
+
* @param {string} resourceId - Stable resource identity.
|
|
153
|
+
* @returns {import("../semantic/types.js").EffectResourceDeclaration} Resource declaration.
|
|
154
|
+
*/
|
|
155
|
+
resourceForId(resourceId: string): import("../semantic/types.js").EffectResourceDeclaration;
|
|
156
|
+
/**
|
|
157
|
+
* Resolves one validated capability operation declaration.
|
|
158
|
+
* @param {string} operationId - Stable operation identity.
|
|
159
|
+
* @returns {import("../semantic/types.js").EffectOperationDeclaration} Operation declaration.
|
|
160
|
+
*/
|
|
161
|
+
effectOperationForId(operationId: string): import("../semantic/types.js").EffectOperationDeclaration;
|
|
162
|
+
/**
|
|
163
|
+
* Resolves one validated private field.
|
|
164
|
+
* @param {string} fieldId - Stable private-field identity.
|
|
165
|
+
* @returns {import("../semantic/types.js").PrivateField} Field declaration.
|
|
166
|
+
*/
|
|
167
|
+
privateFieldForId(fieldId: string): import("../semantic/types.js").PrivateField;
|
|
168
|
+
/**
|
|
169
|
+
* Resolves one validated receiver method.
|
|
170
|
+
* @param {string} methodId - Stable method identity.
|
|
171
|
+
* @returns {import("../semantic/types.js").MethodDeclaration} Method declaration.
|
|
172
|
+
*/
|
|
173
|
+
methodForId(methodId: string): import("../semantic/types.js").MethodDeclaration;
|
|
174
|
+
/**
|
|
175
|
+
* Resolves one validated declaration-scoped type parameter.
|
|
176
|
+
* @param {string} parameterId - Stable type-parameter identity.
|
|
177
|
+
* @returns {import("../semantic/types.js").TypeParameter} Type parameter.
|
|
178
|
+
*/
|
|
179
|
+
typeParameterForId(parameterId: string): import("../semantic/types.js").TypeParameter;
|
|
180
|
+
/**
|
|
181
|
+
* Returns the validated nominal error declaration for an identity.
|
|
182
|
+
* @param {string} declarationId - Stable error identity.
|
|
183
|
+
* @returns {import("../semantic/types.js").ErrorDeclaration | import("../semantic/types.js").EffectFailureDeclaration} Error declaration.
|
|
184
|
+
*/
|
|
185
|
+
errorForId(declarationId: string): import("../semantic/types.js").ErrorDeclaration | import("../semantic/types.js").EffectFailureDeclaration;
|
|
186
|
+
/**
|
|
187
|
+
* Returns the target-visible spelling for one nominal error identity.
|
|
188
|
+
* @param {string} declarationId - Stable error identity.
|
|
189
|
+
* @returns {string} Target-visible name.
|
|
190
|
+
*/
|
|
191
|
+
errorNameForId(declarationId: string): string;
|
|
192
|
+
/**
|
|
193
|
+
* Returns the target spelling for a nominal name owned by a compiler-authorized capability.
|
|
194
|
+
* PHP program entries live in a generated namespace while stdlib provider classes remain
|
|
195
|
+
* global, so PHP program mode fully qualifies capability names.
|
|
196
|
+
* @param {string} name - Declared nominal name.
|
|
197
|
+
* @returns {string} Target spelling.
|
|
198
|
+
*/
|
|
199
|
+
capabilityNominalName(name: string): string;
|
|
200
|
+
/**
|
|
201
|
+
* Returns the target spelling for a resolved function call.
|
|
202
|
+
* @param {import("../semantic/types.js").CallExpression} expression - Resolved call.
|
|
203
|
+
* @returns {string} Target call name.
|
|
204
|
+
*/
|
|
205
|
+
callNameFor(expression: import("../semantic/types.js").CallExpression): string;
|
|
206
|
+
/** Marks emission as occurring inside one top-level reference class. */
|
|
207
|
+
beginReferenceClassEmission(): void;
|
|
208
|
+
/** Ends one balanced top-level reference-class emission scope. */
|
|
209
|
+
endReferenceClassEmission(): void;
|
|
210
|
+
/**
|
|
211
|
+
* Returns the target-local binding for one resolved import.
|
|
212
|
+
* @param {import("../semantic/types.js").SemanticImport} imported - Resolved import.
|
|
213
|
+
* @returns {string} Emitted import name.
|
|
214
|
+
*/
|
|
215
|
+
importNameFor(imported: import("../semantic/types.js").SemanticImport): string;
|
|
216
|
+
/**
|
|
217
|
+
* Reports whether one local declaration is exported by the current program module.
|
|
218
|
+
* @param {string | undefined} declarationId - Declaration identity.
|
|
219
|
+
* @returns {boolean} Whether it has a same-name program export.
|
|
220
|
+
*/
|
|
221
|
+
isDirectlyExported(declarationId: string | undefined): boolean;
|
|
222
|
+
/**
|
|
223
|
+
* Reports whether one export edge uses its declaration's emitted name.
|
|
224
|
+
* @param {import("../semantic/types.js").SemanticExport} exported - Current export edge.
|
|
225
|
+
* @returns {boolean} Whether this edge is represented by the declaration prefix.
|
|
226
|
+
*/
|
|
227
|
+
isDirectExport(exported: import("../semantic/types.js").SemanticExport): boolean;
|
|
228
|
+
/**
|
|
229
|
+
* Reports whether one local declaration has any public program export.
|
|
230
|
+
* @param {string | undefined} declarationId - Declaration identity.
|
|
231
|
+
* @returns {boolean} Whether the declaration is exported.
|
|
232
|
+
*/
|
|
233
|
+
isExported(declarationId: string | undefined): boolean;
|
|
234
|
+
/**
|
|
235
|
+
* Returns whether this is the selected program entry module.
|
|
236
|
+
* @returns {boolean} Whether this writer owns the selected entry.
|
|
237
|
+
*/
|
|
238
|
+
isProgramEntry(): boolean;
|
|
239
|
+
/**
|
|
240
|
+
* Returns the canonical class/module segment for a logical module identity.
|
|
241
|
+
* @param {string} moduleId - Logical module identity.
|
|
242
|
+
* @returns {string} Target class/module name.
|
|
243
|
+
*/
|
|
244
|
+
programModuleName(moduleId: string): string;
|
|
245
|
+
/**
|
|
246
|
+
* Returns a relative ESM/require specifier for a planned dependency artifact.
|
|
247
|
+
* @param {string} moduleId - Dependency module identity.
|
|
248
|
+
* @param {string} [extension] - Optional replacement extension.
|
|
249
|
+
* @returns {string} Relative POSIX specifier.
|
|
250
|
+
*/
|
|
251
|
+
relativeModuleSpecifier(moduleId: string, extension?: string): string;
|
|
252
|
+
/**
|
|
253
|
+
* Returns the protected native entry for one used stdlib provider operation.
|
|
254
|
+
* @param {import("../semantic/types.js").EffectOperationDeclaration} operation - Canonical operation declaration.
|
|
255
|
+
* @returns {string | undefined} Linked protected entry, or undefined when the operation stays inlined.
|
|
256
|
+
*/
|
|
257
|
+
stdlibProviderEntryFor(operation: import("../semantic/types.js").EffectOperationDeclaration): string | undefined;
|
|
258
|
+
/**
|
|
259
|
+
* Returns a relative specifier for the planned stdlib provider artifact.
|
|
260
|
+
* @param {string} [extension] - Optional replacement extension.
|
|
261
|
+
* @param {string} [providerPath] - One selected provider artifact path.
|
|
262
|
+
* @returns {string} Relative POSIX specifier.
|
|
263
|
+
*/
|
|
264
|
+
stdlibProviderSpecifier(extension?: string, providerPath?: string): string;
|
|
265
|
+
/**
|
|
266
|
+
* Resolves a validated field identity for target emission.
|
|
267
|
+
* @param {string} fieldId - Semantic field identity.
|
|
268
|
+
* @returns {import("../semantic/types.js").RecordField} Record field.
|
|
269
|
+
*/
|
|
270
|
+
fieldForId(fieldId: string): import("../semantic/types.js").RecordField;
|
|
271
|
+
/**
|
|
272
|
+
* Resolves the record declaration that owns a validated field identity.
|
|
273
|
+
* @param {string} fieldId - Semantic field identity.
|
|
274
|
+
* @returns {import("../semantic/types.js").RecordDeclaration} Owning record.
|
|
275
|
+
*/
|
|
276
|
+
recordForFieldId(fieldId: string): import("../semantic/types.js").RecordDeclaration;
|
|
46
277
|
/**
|
|
47
278
|
* Reports whether an exact parser-owned role range is available.
|
|
48
279
|
* @param {import("../semantic/types.js").SemanticNode} node - Semantic node occurrence.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../src/backends/writer.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../src/backends/writer.js"],"names":[],"mappings":"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"}
|