@typescript/native-preview 7.0.0-dev.20260422.1 → 7.0.0-dev.20260423.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/dist/api/async/api.d.ts +241 -0
- package/dist/api/async/api.d.ts.map +1 -0
- package/dist/api/async/api.js +810 -0
- package/dist/api/async/api.js.map +1 -0
- package/dist/api/async/client.d.ts +22 -0
- package/dist/api/async/client.d.ts.map +1 -0
- package/dist/api/async/client.js +140 -0
- package/dist/api/async/client.js.map +1 -0
- package/dist/api/async/types.d.ts +179 -0
- package/dist/api/async/types.d.ts.map +1 -0
- package/dist/api/async/types.js +2 -0
- package/dist/api/async/types.js.map +1 -0
- package/dist/api/fs.d.ts +23 -0
- package/dist/api/fs.d.ts.map +1 -0
- package/dist/api/fs.js +109 -0
- package/dist/api/fs.js.map +1 -0
- package/dist/api/node/encoder.d.ts +15 -0
- package/dist/api/node/encoder.d.ts.map +1 -0
- package/dist/api/node/encoder.generated.d.ts +5 -0
- package/dist/api/node/encoder.generated.d.ts.map +1 -0
- package/dist/api/node/encoder.generated.js +74 -0
- package/dist/api/node/encoder.generated.js.map +1 -0
- package/dist/api/node/encoder.js +304 -0
- package/dist/api/node/encoder.js.map +1 -0
- package/dist/api/node/msgpack.d.ts +32 -0
- package/dist/api/node/msgpack.d.ts.map +1 -0
- package/dist/api/node/msgpack.js +212 -0
- package/dist/api/node/msgpack.js.map +1 -0
- package/dist/api/node/node.d.ts +63 -0
- package/dist/api/node/node.d.ts.map +1 -0
- package/dist/api/node/node.generated.d.ts +172 -0
- package/dist/api/node/node.generated.d.ts.map +1 -0
- package/dist/api/node/node.generated.js +817 -0
- package/dist/api/node/node.generated.js.map +1 -0
- package/dist/api/node/node.infrastructure.d.ts +51 -0
- package/dist/api/node/node.infrastructure.d.ts.map +1 -0
- package/dist/api/node/node.infrastructure.js +122 -0
- package/dist/api/node/node.infrastructure.js.map +1 -0
- package/dist/api/node/node.js +201 -0
- package/dist/api/node/node.js.map +1 -0
- package/dist/api/node/protocol.d.ts +29 -0
- package/dist/api/node/protocol.d.ts.map +1 -0
- package/dist/api/node/protocol.generated.d.ts +4 -0
- package/dist/api/node/protocol.generated.d.ts.map +1 -0
- package/dist/api/node/protocol.generated.js +241 -0
- package/dist/api/node/protocol.generated.js.map +1 -0
- package/dist/api/node/protocol.js +30 -0
- package/dist/api/node/protocol.js.map +1 -0
- package/dist/api/objectRegistry.d.ts +38 -0
- package/dist/api/objectRegistry.d.ts.map +1 -0
- package/dist/api/objectRegistry.js +55 -0
- package/dist/api/objectRegistry.js.map +1 -0
- package/dist/api/options.d.ts +24 -0
- package/dist/api/options.d.ts.map +1 -0
- package/dist/api/options.js +11 -0
- package/dist/api/options.js.map +1 -0
- package/dist/api/path.d.ts +110 -0
- package/dist/api/path.d.ts.map +1 -0
- package/dist/api/path.js +508 -0
- package/dist/api/path.js.map +1 -0
- package/dist/api/proto.d.ts +152 -0
- package/dist/api/proto.d.ts.map +1 -0
- package/dist/api/proto.js +22 -0
- package/dist/api/proto.js.map +1 -0
- package/dist/api/sourceFileCache.d.ts +79 -0
- package/dist/api/sourceFileCache.d.ts.map +1 -0
- package/dist/api/sourceFileCache.js +169 -0
- package/dist/api/sourceFileCache.js.map +1 -0
- package/dist/api/sync/api.d.ts +241 -0
- package/dist/api/sync/api.d.ts.map +1 -0
- package/dist/api/sync/api.js +818 -0
- package/dist/api/sync/api.js.map +1 -0
- package/dist/api/sync/client.d.ts +13 -0
- package/dist/api/sync/client.d.ts.map +1 -0
- package/dist/api/sync/client.js +72 -0
- package/dist/api/sync/client.js.map +1 -0
- package/dist/api/sync/types.d.ts +179 -0
- package/dist/api/sync/types.d.ts.map +1 -0
- package/dist/api/sync/types.js +2 -0
- package/dist/api/sync/types.js.map +1 -0
- package/dist/api/syncChannel.d.ts +111 -0
- package/dist/api/syncChannel.d.ts.map +1 -0
- package/dist/api/syncChannel.js +488 -0
- package/dist/api/syncChannel.js.map +1 -0
- package/dist/ast/ast.d.ts +66 -0
- package/dist/ast/ast.d.ts.map +1 -0
- package/dist/ast/ast.generated.d.ts +1160 -0
- package/dist/ast/ast.generated.d.ts.map +1 -0
- package/dist/ast/ast.generated.js +4 -0
- package/dist/ast/ast.generated.js.map +1 -0
- package/dist/ast/ast.js +7 -0
- package/dist/ast/ast.js.map +1 -0
- package/dist/ast/astnav.d.ts +19 -0
- package/dist/ast/astnav.d.ts.map +1 -0
- package/dist/ast/astnav.js +596 -0
- package/dist/ast/astnav.js.map +1 -0
- package/dist/ast/clone.d.ts +16 -0
- package/dist/ast/clone.d.ts.map +1 -0
- package/dist/ast/clone.js +104 -0
- package/dist/ast/clone.js.map +1 -0
- package/dist/ast/factory.generated.d.ts +513 -0
- package/dist/ast/factory.generated.d.ts.map +1 -0
- package/dist/ast/factory.generated.js +3026 -0
- package/dist/ast/factory.generated.js.map +1 -0
- package/dist/ast/index.d.ts +18 -0
- package/dist/ast/index.d.ts.map +1 -0
- package/dist/ast/index.js +18 -0
- package/dist/ast/index.js.map +1 -0
- package/dist/ast/is.d.ts +34 -0
- package/dist/ast/is.d.ts.map +1 -0
- package/dist/ast/is.generated.d.ts +328 -0
- package/dist/ast/is.generated.d.ts.map +1 -0
- package/dist/ast/is.generated.js +1101 -0
- package/dist/ast/is.generated.js.map +1 -0
- package/dist/ast/is.js +226 -0
- package/dist/ast/is.js.map +1 -0
- package/dist/ast/scanner.d.ts +97 -0
- package/dist/ast/scanner.d.ts.map +1 -0
- package/dist/ast/scanner.js +2230 -0
- package/dist/ast/scanner.js.map +1 -0
- package/dist/ast/utils.d.ts +5 -0
- package/dist/ast/utils.d.ts.map +1 -0
- package/dist/ast/utils.js +27 -0
- package/dist/ast/utils.js.map +1 -0
- package/dist/ast/visitor.d.ts +14 -0
- package/dist/ast/visitor.d.ts.map +1 -0
- package/dist/ast/visitor.generated.d.ts +50 -0
- package/dist/ast/visitor.generated.d.ts.map +1 -0
- package/dist/ast/visitor.generated.js +978 -0
- package/dist/ast/visitor.generated.js.map +1 -0
- package/dist/ast/visitor.js +47 -0
- package/dist/ast/visitor.js.map +1 -0
- package/dist/enums/characterCodes.d.ts +2 -0
- package/dist/enums/characterCodes.d.ts.map +1 -0
- package/dist/enums/characterCodes.enum.d.ts +129 -0
- package/dist/enums/characterCodes.enum.d.ts.map +1 -0
- package/dist/enums/characterCodes.enum.js +132 -0
- package/dist/enums/characterCodes.enum.js.map +1 -0
- package/dist/enums/characterCodes.js +130 -0
- package/dist/enums/characterCodes.js.map +1 -0
- package/dist/enums/commentDirectiveType.d.ts +2 -0
- package/dist/enums/commentDirectiveType.d.ts.map +1 -0
- package/dist/enums/commentDirectiveType.enum.d.ts +5 -0
- package/dist/enums/commentDirectiveType.enum.d.ts.map +1 -0
- package/dist/enums/commentDirectiveType.enum.js +6 -0
- package/dist/enums/commentDirectiveType.enum.js.map +1 -0
- package/dist/enums/commentDirectiveType.js +6 -0
- package/dist/enums/commentDirectiveType.js.map +1 -0
- package/dist/enums/diagnosticCategory.d.ts +2 -0
- package/dist/enums/diagnosticCategory.d.ts.map +1 -0
- package/dist/enums/diagnosticCategory.enum.d.ts +7 -0
- package/dist/enums/diagnosticCategory.enum.d.ts.map +1 -0
- package/dist/enums/diagnosticCategory.enum.js +9 -0
- package/dist/enums/diagnosticCategory.enum.js.map +1 -0
- package/dist/enums/diagnosticCategory.js +9 -0
- package/dist/enums/diagnosticCategory.js.map +1 -0
- package/dist/enums/elementFlags.d.ts +2 -0
- package/dist/enums/elementFlags.d.ts.map +1 -0
- package/dist/enums/elementFlags.enum.d.ts +12 -0
- package/dist/enums/elementFlags.enum.d.ts.map +1 -0
- package/dist/enums/elementFlags.enum.js +14 -0
- package/dist/enums/elementFlags.enum.js.map +1 -0
- package/dist/enums/elementFlags.js +14 -0
- package/dist/enums/elementFlags.js.map +1 -0
- package/dist/enums/languageVariant.d.ts +2 -0
- package/dist/enums/languageVariant.d.ts.map +1 -0
- package/dist/enums/languageVariant.enum.d.ts +5 -0
- package/dist/enums/languageVariant.enum.d.ts.map +1 -0
- package/dist/enums/languageVariant.enum.js +6 -0
- package/dist/enums/languageVariant.enum.js.map +1 -0
- package/dist/enums/languageVariant.js +6 -0
- package/dist/enums/languageVariant.js.map +1 -0
- package/dist/enums/modifierFlags.d.ts +2 -0
- package/dist/enums/modifierFlags.d.ts.map +1 -0
- package/dist/enums/modifierFlags.enum.d.ts +42 -0
- package/dist/enums/modifierFlags.enum.d.ts.map +1 -0
- package/dist/enums/modifierFlags.enum.js +44 -0
- package/dist/enums/modifierFlags.enum.js.map +1 -0
- package/dist/enums/modifierFlags.js +44 -0
- package/dist/enums/modifierFlags.js.map +1 -0
- package/dist/enums/nodeFlags.d.ts +2 -0
- package/dist/enums/nodeFlags.d.ts.map +1 -0
- package/dist/enums/nodeFlags.enum.d.ts +41 -0
- package/dist/enums/nodeFlags.enum.d.ts.map +1 -0
- package/dist/enums/nodeFlags.enum.js +43 -0
- package/dist/enums/nodeFlags.enum.js.map +1 -0
- package/dist/enums/nodeFlags.js +43 -0
- package/dist/enums/nodeFlags.js.map +1 -0
- package/dist/enums/objectFlags.d.ts +2 -0
- package/dist/enums/objectFlags.d.ts.map +1 -0
- package/dist/enums/objectFlags.enum.d.ts +50 -0
- package/dist/enums/objectFlags.enum.d.ts.map +1 -0
- package/dist/enums/objectFlags.enum.js +52 -0
- package/dist/enums/objectFlags.enum.js.map +1 -0
- package/dist/enums/objectFlags.js +52 -0
- package/dist/enums/objectFlags.js.map +1 -0
- package/dist/enums/outerExpressionKinds.d.ts +2 -0
- package/dist/enums/outerExpressionKinds.d.ts.map +1 -0
- package/dist/enums/outerExpressionKinds.enum.d.ts +12 -0
- package/dist/enums/outerExpressionKinds.enum.d.ts.map +1 -0
- package/dist/enums/outerExpressionKinds.enum.js +14 -0
- package/dist/enums/outerExpressionKinds.enum.js.map +1 -0
- package/dist/enums/outerExpressionKinds.js +14 -0
- package/dist/enums/outerExpressionKinds.js.map +1 -0
- package/dist/enums/regularExpressionFlags.d.ts +2 -0
- package/dist/enums/regularExpressionFlags.d.ts.map +1 -0
- package/dist/enums/regularExpressionFlags.enum.d.ts +13 -0
- package/dist/enums/regularExpressionFlags.enum.d.ts.map +1 -0
- package/dist/enums/regularExpressionFlags.enum.js +14 -0
- package/dist/enums/regularExpressionFlags.enum.js.map +1 -0
- package/dist/enums/regularExpressionFlags.js +14 -0
- package/dist/enums/regularExpressionFlags.js.map +1 -0
- package/dist/enums/scriptKind.d.ts +2 -0
- package/dist/enums/scriptKind.d.ts.map +1 -0
- package/dist/enums/scriptKind.enum.d.ts +11 -0
- package/dist/enums/scriptKind.enum.d.ts.map +1 -0
- package/dist/enums/scriptKind.enum.js +12 -0
- package/dist/enums/scriptKind.enum.js.map +1 -0
- package/dist/enums/scriptKind.js +12 -0
- package/dist/enums/scriptKind.js.map +1 -0
- package/dist/enums/scriptTarget.d.ts +2 -0
- package/dist/enums/scriptTarget.d.ts.map +1 -0
- package/dist/enums/scriptTarget.enum.d.ts +17 -0
- package/dist/enums/scriptTarget.enum.d.ts.map +1 -0
- package/dist/enums/scriptTarget.enum.js +18 -0
- package/dist/enums/scriptTarget.enum.js.map +1 -0
- package/dist/enums/scriptTarget.js +18 -0
- package/dist/enums/scriptTarget.js.map +1 -0
- package/dist/enums/signatureFlags.d.ts +2 -0
- package/dist/enums/signatureFlags.d.ts.map +1 -0
- package/dist/enums/signatureFlags.enum.d.ts +15 -0
- package/dist/enums/signatureFlags.enum.d.ts.map +1 -0
- package/dist/enums/signatureFlags.enum.js +17 -0
- package/dist/enums/signatureFlags.enum.js.map +1 -0
- package/dist/enums/signatureFlags.js +17 -0
- package/dist/enums/signatureFlags.js.map +1 -0
- package/dist/enums/signatureKind.d.ts +2 -0
- package/dist/enums/signatureKind.d.ts.map +1 -0
- package/dist/enums/signatureKind.enum.d.ts +5 -0
- package/dist/enums/signatureKind.enum.d.ts.map +1 -0
- package/dist/enums/signatureKind.enum.js +7 -0
- package/dist/enums/signatureKind.enum.js.map +1 -0
- package/dist/enums/signatureKind.js +7 -0
- package/dist/enums/signatureKind.js.map +1 -0
- package/dist/enums/symbolFlags.d.ts +2 -0
- package/dist/enums/symbolFlags.d.ts.map +1 -0
- package/dist/enums/symbolFlags.enum.d.ts +71 -0
- package/dist/enums/symbolFlags.enum.d.ts.map +1 -0
- package/dist/enums/symbolFlags.enum.js +73 -0
- package/dist/enums/symbolFlags.enum.js.map +1 -0
- package/dist/enums/symbolFlags.js +73 -0
- package/dist/enums/symbolFlags.js.map +1 -0
- package/dist/enums/syntaxKind.d.ts +2 -0
- package/dist/enums/syntaxKind.d.ts.map +1 -0
- package/dist/enums/syntaxKind.enum.d.ts +389 -0
- package/dist/enums/syntaxKind.enum.d.ts.map +1 -0
- package/dist/enums/syntaxKind.enum.js +391 -0
- package/dist/enums/syntaxKind.enum.js.map +1 -0
- package/dist/enums/syntaxKind.js +391 -0
- package/dist/enums/syntaxKind.js.map +1 -0
- package/dist/enums/tokenFlags.d.ts +2 -0
- package/dist/enums/tokenFlags.d.ts.map +1 -0
- package/dist/enums/tokenFlags.enum.d.ts +30 -0
- package/dist/enums/tokenFlags.enum.d.ts.map +1 -0
- package/dist/enums/tokenFlags.enum.js +32 -0
- package/dist/enums/tokenFlags.enum.js.map +1 -0
- package/dist/enums/tokenFlags.js +32 -0
- package/dist/enums/tokenFlags.js.map +1 -0
- package/dist/enums/typeFlags.d.ts +2 -0
- package/dist/enums/typeFlags.d.ts.map +1 -0
- package/dist/enums/typeFlags.enum.d.ts +76 -0
- package/dist/enums/typeFlags.enum.d.ts.map +1 -0
- package/dist/enums/typeFlags.enum.js +78 -0
- package/dist/enums/typeFlags.enum.js.map +1 -0
- package/dist/enums/typeFlags.js +78 -0
- package/dist/enums/typeFlags.js.map +1 -0
- package/dist/enums/typePredicateKind.d.ts +2 -0
- package/dist/enums/typePredicateKind.d.ts.map +1 -0
- package/dist/enums/typePredicateKind.enum.d.ts +7 -0
- package/dist/enums/typePredicateKind.enum.d.ts.map +1 -0
- package/dist/enums/typePredicateKind.enum.js +9 -0
- package/dist/enums/typePredicateKind.enum.js.map +1 -0
- package/dist/enums/typePredicateKind.js +9 -0
- package/dist/enums/typePredicateKind.js.map +1 -0
- package/lib/getExePath.d.ts +2 -0
- package/package.json +57 -12
- package/vendor/vscode-jsonrpc/README.md +69 -0
- package/vendor/vscode-jsonrpc/lib/browser/main.d.ts +17 -0
- package/vendor/vscode-jsonrpc/lib/browser/main.js +83 -0
- package/vendor/vscode-jsonrpc/lib/browser/ril.d.ts +22 -0
- package/vendor/vscode-jsonrpc/lib/browser/ril.js +203 -0
- package/vendor/vscode-jsonrpc/lib/common/api.d.ts +14 -0
- package/vendor/vscode-jsonrpc/lib/common/api.js +87 -0
- package/vendor/vscode-jsonrpc/lib/common/cancellation.d.ts +32 -0
- package/vendor/vscode-jsonrpc/lib/common/cancellation.js +132 -0
- package/vendor/vscode-jsonrpc/lib/common/connection.d.ts +367 -0
- package/vendor/vscode-jsonrpc/lib/common/connection.js +1272 -0
- package/vendor/vscode-jsonrpc/lib/common/disposable.d.ts +9 -0
- package/vendor/vscode-jsonrpc/lib/common/disposable.js +16 -0
- package/vendor/vscode-jsonrpc/lib/common/encoding.d.ts +52 -0
- package/vendor/vscode-jsonrpc/lib/common/encoding.js +70 -0
- package/vendor/vscode-jsonrpc/lib/common/events.d.ts +39 -0
- package/vendor/vscode-jsonrpc/lib/common/events.js +136 -0
- package/vendor/vscode-jsonrpc/lib/common/is.d.ts +7 -0
- package/vendor/vscode-jsonrpc/lib/common/is.js +34 -0
- package/vendor/vscode-jsonrpc/lib/common/linkedMap.d.ts +55 -0
- package/vendor/vscode-jsonrpc/lib/common/linkedMap.js +412 -0
- package/vendor/vscode-jsonrpc/lib/common/messageBuffer.d.ts +18 -0
- package/vendor/vscode-jsonrpc/lib/common/messageBuffer.js +155 -0
- package/vendor/vscode-jsonrpc/lib/common/messageReader.d.ts +77 -0
- package/vendor/vscode-jsonrpc/lib/common/messageReader.js +246 -0
- package/vendor/vscode-jsonrpc/lib/common/messageWriter.d.ts +60 -0
- package/vendor/vscode-jsonrpc/lib/common/messageWriter.js +157 -0
- package/vendor/vscode-jsonrpc/lib/common/messages.d.ts +369 -0
- package/vendor/vscode-jsonrpc/lib/common/messages.js +436 -0
- package/vendor/vscode-jsonrpc/lib/common/ral.d.ts +74 -0
- package/vendor/vscode-jsonrpc/lib/common/ral.js +23 -0
- package/vendor/vscode-jsonrpc/lib/common/semaphore.d.ts +10 -0
- package/vendor/vscode-jsonrpc/lib/common/semaphore.js +74 -0
- package/vendor/vscode-jsonrpc/lib/common/sharedArrayCancellation.d.ts +15 -0
- package/vendor/vscode-jsonrpc/lib/common/sharedArrayCancellation.js +77 -0
- package/vendor/vscode-jsonrpc/lib/node/main.d.ts +58 -0
- package/vendor/vscode-jsonrpc/lib/node/main.js +289 -0
- package/vendor/vscode-jsonrpc/lib/node/ril.d.ts +12 -0
- package/vendor/vscode-jsonrpc/lib/node/ril.js +163 -0
- package/vendor/vscode-jsonrpc/package.json +54 -0
- package/vendor/vscode-jsonrpc/typings/thenable.d.ts +5 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/api/sync/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type ClientOptions, type ClientSocketOptions, type ClientSpawnOptions } from "../options.ts";
|
|
2
|
+
export type { ClientOptions, ClientSocketOptions, ClientSpawnOptions };
|
|
3
|
+
export declare class Client {
|
|
4
|
+
private channel;
|
|
5
|
+
private encoder;
|
|
6
|
+
constructor(options: ClientOptions);
|
|
7
|
+
apiRequest<T>(method: string, params?: unknown): T;
|
|
8
|
+
apiRequestBinary(method: string, params?: unknown): Uint8Array | undefined;
|
|
9
|
+
echo(payload: string): string;
|
|
10
|
+
echoBinary(payload: Uint8Array): Uint8Array;
|
|
11
|
+
close(): void;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/api/sync/client.ts"],"names":[],"mappings":"AACA,OAAO,EACH,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EAG1B,MAAM,eAAe,CAAC;AAGvB,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,CAAC;AAEvE,qBAAa,MAAM;IACf,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,OAAO,CAAqB;gBAExB,OAAO,EAAE,aAAa;IA6ClC,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,CAAC;IASlD,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS;IAM1E,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI7B,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU;IAI3C,KAAK,IAAI,IAAI;CAGhB"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { fsCallbackNames } from "../fs.js";
|
|
2
|
+
import { isSpawnOptions, resolveExePath, } from "../options.js";
|
|
3
|
+
import { SyncRpcChannel } from "../syncChannel.js";
|
|
4
|
+
export class Client {
|
|
5
|
+
channel;
|
|
6
|
+
encoder = new TextEncoder();
|
|
7
|
+
constructor(options) {
|
|
8
|
+
if (!isSpawnOptions(options)) {
|
|
9
|
+
throw new Error("Socket connections are not yet supported in the sync client");
|
|
10
|
+
}
|
|
11
|
+
const cwd = options.cwd ?? process.cwd();
|
|
12
|
+
const args = [
|
|
13
|
+
"--api",
|
|
14
|
+
"--cwd",
|
|
15
|
+
cwd,
|
|
16
|
+
];
|
|
17
|
+
// Enable virtual FS callbacks for each provided FS function
|
|
18
|
+
const enabledCallbacks = [];
|
|
19
|
+
if (options.fs) {
|
|
20
|
+
for (const name of fsCallbackNames) {
|
|
21
|
+
if (options.fs[name]) {
|
|
22
|
+
enabledCallbacks.push(name);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (enabledCallbacks.length > 0) {
|
|
27
|
+
args.push(`--callbacks=${enabledCallbacks.join(",")}`);
|
|
28
|
+
}
|
|
29
|
+
const channel = new SyncRpcChannel(resolveExePath(options), args);
|
|
30
|
+
this.channel = channel;
|
|
31
|
+
if (options.fs) {
|
|
32
|
+
for (const name of enabledCallbacks) {
|
|
33
|
+
const callback = options.fs[name];
|
|
34
|
+
channel.registerCallback(name, (_, arg) => {
|
|
35
|
+
const result = callback(JSON.parse(arg));
|
|
36
|
+
if (name === "readFile") {
|
|
37
|
+
// readFile has 3 returns: string (content), null (not found), undefined (fall back).
|
|
38
|
+
// Wrap in object to preserve null vs undefined distinction.
|
|
39
|
+
if (result === undefined)
|
|
40
|
+
return "";
|
|
41
|
+
return JSON.stringify({ content: result });
|
|
42
|
+
}
|
|
43
|
+
return JSON.stringify(result) ?? "";
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
apiRequest(method, params) {
|
|
49
|
+
const encodedPayload = JSON.stringify(params);
|
|
50
|
+
const result = this.channel.requestSync(method, encodedPayload);
|
|
51
|
+
if (result.length) {
|
|
52
|
+
return JSON.parse(result);
|
|
53
|
+
}
|
|
54
|
+
return undefined;
|
|
55
|
+
}
|
|
56
|
+
apiRequestBinary(method, params) {
|
|
57
|
+
const result = this.channel.requestBinarySync(method, this.encoder.encode(JSON.stringify(params)));
|
|
58
|
+
if (result.length === 0)
|
|
59
|
+
return undefined;
|
|
60
|
+
return result;
|
|
61
|
+
}
|
|
62
|
+
echo(payload) {
|
|
63
|
+
return this.channel.requestSync("echo", payload);
|
|
64
|
+
}
|
|
65
|
+
echoBinary(payload) {
|
|
66
|
+
return this.channel.requestBinarySync("echo", payload);
|
|
67
|
+
}
|
|
68
|
+
close() {
|
|
69
|
+
this.channel.close();
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/api/sync/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
import type { DiagnosticCategory } from "#enums/diagnosticCategory";
|
|
2
|
+
import type { ElementFlags } from "#enums/elementFlags";
|
|
3
|
+
import type { ObjectFlags } from "#enums/objectFlags";
|
|
4
|
+
import type { TypeFlags } from "#enums/typeFlags";
|
|
5
|
+
import type { TypePredicateKind } from "#enums/typePredicateKind";
|
|
6
|
+
import type { Symbol } from "./api.ts";
|
|
7
|
+
/**
|
|
8
|
+
* A TypeScript type.
|
|
9
|
+
*
|
|
10
|
+
* Use TypeFlags to determine the specific kind of type and access
|
|
11
|
+
* kind-specific properties. For example:
|
|
12
|
+
*
|
|
13
|
+
* ```ts
|
|
14
|
+
* if (type.flags & TypeFlags.StringLiteral) {
|
|
15
|
+
* console.log((type as LiteralType).value); // string
|
|
16
|
+
* }
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export interface Type {
|
|
20
|
+
/** Unique identifier for this type */
|
|
21
|
+
readonly id: string;
|
|
22
|
+
/** Type flags — use to determine the specific kind of type */
|
|
23
|
+
readonly flags: TypeFlags;
|
|
24
|
+
/** Get the symbol associated with this type, if any */
|
|
25
|
+
getSymbol(): Symbol | undefined;
|
|
26
|
+
}
|
|
27
|
+
/** Literal types: StringLiteral, NumberLiteral, BigIntLiteral, BooleanLiteral */
|
|
28
|
+
export interface LiteralType extends Type {
|
|
29
|
+
/** The literal value */
|
|
30
|
+
readonly value: string | number | boolean;
|
|
31
|
+
}
|
|
32
|
+
/** Object types (TypeFlags.Object) */
|
|
33
|
+
export interface ObjectType extends Type {
|
|
34
|
+
/** Object flags — use to determine the specific kind of object type */
|
|
35
|
+
readonly objectFlags: ObjectFlags;
|
|
36
|
+
}
|
|
37
|
+
/** Type references (ObjectFlags.Reference) — e.g. Array<string>, Map<K, V> */
|
|
38
|
+
export interface TypeReference extends ObjectType {
|
|
39
|
+
/** Get the generic target type (e.g. Array for Array<string>) */
|
|
40
|
+
getTarget(): Type;
|
|
41
|
+
}
|
|
42
|
+
/** Interface types — classes and interfaces (ObjectFlags.ClassOrInterface) */
|
|
43
|
+
export interface InterfaceType extends TypeReference {
|
|
44
|
+
/** Get all type parameters (outer + local, excluding thisType) */
|
|
45
|
+
getTypeParameters(): readonly Type[];
|
|
46
|
+
/** Get outer type parameters from enclosing declarations */
|
|
47
|
+
getOuterTypeParameters(): readonly Type[];
|
|
48
|
+
/** Get local type parameters declared on this interface/class */
|
|
49
|
+
getLocalTypeParameters(): readonly Type[];
|
|
50
|
+
}
|
|
51
|
+
/** Tuple types (ObjectFlags.Tuple) */
|
|
52
|
+
export interface TupleType extends InterfaceType {
|
|
53
|
+
/** Per-element flags (Required, Optional, Rest, Variadic) */
|
|
54
|
+
readonly elementFlags: readonly ElementFlags[];
|
|
55
|
+
/** Number of initial required or optional elements */
|
|
56
|
+
readonly fixedLength: number;
|
|
57
|
+
/** Whether the tuple is readonly */
|
|
58
|
+
readonly readonly: boolean;
|
|
59
|
+
}
|
|
60
|
+
/** Union or intersection types (TypeFlags.Union | TypeFlags.Intersection) */
|
|
61
|
+
export interface UnionOrIntersectionType extends Type {
|
|
62
|
+
/** Get the constituent types */
|
|
63
|
+
getTypes(): readonly Type[];
|
|
64
|
+
}
|
|
65
|
+
/** Union types (TypeFlags.Union) */
|
|
66
|
+
export interface UnionType extends UnionOrIntersectionType {
|
|
67
|
+
}
|
|
68
|
+
/** Intersection types (TypeFlags.Intersection) */
|
|
69
|
+
export interface IntersectionType extends UnionOrIntersectionType {
|
|
70
|
+
}
|
|
71
|
+
/** Type parameters (TypeFlags.TypeParameter) */
|
|
72
|
+
export interface TypeParameter extends Type {
|
|
73
|
+
}
|
|
74
|
+
/** Index types — keyof T (TypeFlags.Index) */
|
|
75
|
+
export interface IndexType extends Type {
|
|
76
|
+
/** Get the target type T in `keyof T` */
|
|
77
|
+
getTarget(): Type;
|
|
78
|
+
}
|
|
79
|
+
/** Indexed access types — T[K] (TypeFlags.IndexedAccess) */
|
|
80
|
+
export interface IndexedAccessType extends Type {
|
|
81
|
+
/** Get the object type T in `T[K]` */
|
|
82
|
+
getObjectType(): Type;
|
|
83
|
+
/** Get the index type K in `T[K]` */
|
|
84
|
+
getIndexType(): Type;
|
|
85
|
+
}
|
|
86
|
+
/** Conditional types — T extends U ? X : Y (TypeFlags.Conditional) */
|
|
87
|
+
export interface ConditionalType extends Type {
|
|
88
|
+
/** Get the check type T in `T extends U ? X : Y` */
|
|
89
|
+
getCheckType(): Type;
|
|
90
|
+
/** Get the extends type U in `T extends U ? X : Y` */
|
|
91
|
+
getExtendsType(): Type;
|
|
92
|
+
}
|
|
93
|
+
/** Substitution types (TypeFlags.Substitution) */
|
|
94
|
+
export interface SubstitutionType extends Type {
|
|
95
|
+
getBaseType(): Type;
|
|
96
|
+
getConstraint(): Type;
|
|
97
|
+
}
|
|
98
|
+
/** Template literal types (TypeFlags.TemplateLiteral) */
|
|
99
|
+
export interface TemplateLiteralType extends Type {
|
|
100
|
+
/** Text segments (always one more than the number of type spans) */
|
|
101
|
+
readonly texts: readonly string[];
|
|
102
|
+
/** Get the types interspersed between text segments */
|
|
103
|
+
getTypes(): readonly Type[];
|
|
104
|
+
}
|
|
105
|
+
/** String mapping types — Uppercase<T>, Lowercase<T>, etc. (TypeFlags.StringMapping) */
|
|
106
|
+
export interface StringMappingType extends Type {
|
|
107
|
+
/** Get the mapped type */
|
|
108
|
+
getTarget(): Type;
|
|
109
|
+
}
|
|
110
|
+
/** Base for all type predicates */
|
|
111
|
+
export interface TypePredicateBase {
|
|
112
|
+
readonly kind: TypePredicateKind;
|
|
113
|
+
readonly type: Type | undefined;
|
|
114
|
+
}
|
|
115
|
+
/** `this is T` */
|
|
116
|
+
export interface ThisTypePredicate extends TypePredicateBase {
|
|
117
|
+
readonly kind: TypePredicateKind.This;
|
|
118
|
+
readonly parameterName: undefined;
|
|
119
|
+
readonly parameterIndex: undefined;
|
|
120
|
+
readonly type: Type;
|
|
121
|
+
}
|
|
122
|
+
/** `x is T` */
|
|
123
|
+
export interface IdentifierTypePredicate extends TypePredicateBase {
|
|
124
|
+
readonly kind: TypePredicateKind.Identifier;
|
|
125
|
+
readonly parameterName: string;
|
|
126
|
+
readonly parameterIndex: number;
|
|
127
|
+
readonly type: Type;
|
|
128
|
+
}
|
|
129
|
+
/** `asserts this is T` */
|
|
130
|
+
export interface AssertsThisTypePredicate extends TypePredicateBase {
|
|
131
|
+
readonly kind: TypePredicateKind.AssertsThis;
|
|
132
|
+
readonly parameterName: undefined;
|
|
133
|
+
readonly parameterIndex: undefined;
|
|
134
|
+
readonly type: Type | undefined;
|
|
135
|
+
}
|
|
136
|
+
/** `asserts x is T` */
|
|
137
|
+
export interface AssertsIdentifierTypePredicate extends TypePredicateBase {
|
|
138
|
+
readonly kind: TypePredicateKind.AssertsIdentifier;
|
|
139
|
+
readonly parameterName: string;
|
|
140
|
+
readonly parameterIndex: number;
|
|
141
|
+
readonly type: Type | undefined;
|
|
142
|
+
}
|
|
143
|
+
/** A type predicate — e.g. `x is T` or `asserts x is T` */
|
|
144
|
+
export type TypePredicate = ThisTypePredicate | IdentifierTypePredicate | AssertsThisTypePredicate | AssertsIdentifierTypePredicate;
|
|
145
|
+
/** An index signature — e.g. `[key: string]: T` */
|
|
146
|
+
export interface IndexInfo {
|
|
147
|
+
/** The index key type (e.g. string or number) */
|
|
148
|
+
readonly keyType: Type;
|
|
149
|
+
/** The index value type */
|
|
150
|
+
readonly valueType: Type;
|
|
151
|
+
/** Whether the index signature is readonly */
|
|
152
|
+
readonly isReadonly: boolean;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* A diagnostic message from the TypeScript compiler.
|
|
156
|
+
*/
|
|
157
|
+
export interface Diagnostic {
|
|
158
|
+
/** File name of the source file this diagnostic belongs to, if any */
|
|
159
|
+
readonly fileName?: string;
|
|
160
|
+
/** Start position of the diagnostic */
|
|
161
|
+
readonly pos: number;
|
|
162
|
+
/** End position of the diagnostic */
|
|
163
|
+
readonly end: number;
|
|
164
|
+
/** Diagnostic error code */
|
|
165
|
+
readonly code: number;
|
|
166
|
+
/** Diagnostic category (error, warning, suggestion, message) */
|
|
167
|
+
readonly category: DiagnosticCategory;
|
|
168
|
+
/** Localized diagnostic message text */
|
|
169
|
+
readonly text: string;
|
|
170
|
+
/** Whether this diagnostic highlights unnecessary code */
|
|
171
|
+
readonly reportsUnnecessary?: boolean;
|
|
172
|
+
/** Whether this diagnostic highlights deprecated code */
|
|
173
|
+
readonly reportsDeprecated?: boolean;
|
|
174
|
+
/** Chained diagnostic messages */
|
|
175
|
+
readonly messageChain?: readonly Diagnostic[];
|
|
176
|
+
/** Related diagnostic information */
|
|
177
|
+
readonly relatedInformation?: readonly Diagnostic[];
|
|
178
|
+
}
|
|
179
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/api/sync/types.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,IAAI;IACjB,sCAAsC;IACtC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAE1B,uDAAuD;IACvD,SAAS,IAAI,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,iFAAiF;AACjF,MAAM,WAAW,WAAY,SAAQ,IAAI;IACrC,wBAAwB;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;CAC7C;AAED,sCAAsC;AACtC,MAAM,WAAW,UAAW,SAAQ,IAAI;IACpC,uEAAuE;IACvE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;CACrC;AAED,8EAA8E;AAC9E,MAAM,WAAW,aAAc,SAAQ,UAAU;IAC7C,iEAAiE;IACjE,SAAS,IAAI,IAAI,CAAC;CACrB;AAED,8EAA8E;AAC9E,MAAM,WAAW,aAAc,SAAQ,aAAa;IAChD,kEAAkE;IAClE,iBAAiB,IAAI,SAAS,IAAI,EAAE,CAAC;IACrC,4DAA4D;IAC5D,sBAAsB,IAAI,SAAS,IAAI,EAAE,CAAC;IAC1C,iEAAiE;IACjE,sBAAsB,IAAI,SAAS,IAAI,EAAE,CAAC;CAC7C;AAED,sCAAsC;AACtC,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC5C,6DAA6D;IAC7D,QAAQ,CAAC,YAAY,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/C,sDAAsD;IACtD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,oCAAoC;IACpC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;CAC9B;AAED,6EAA6E;AAC7E,MAAM,WAAW,uBAAwB,SAAQ,IAAI;IACjD,gCAAgC;IAChC,QAAQ,IAAI,SAAS,IAAI,EAAE,CAAC;CAC/B;AAED,oCAAoC;AACpC,MAAM,WAAW,SAAU,SAAQ,uBAAuB;CACzD;AAED,kDAAkD;AAClD,MAAM,WAAW,gBAAiB,SAAQ,uBAAuB;CAChE;AAED,gDAAgD;AAChD,MAAM,WAAW,aAAc,SAAQ,IAAI;CAC1C;AAED,8CAA8C;AAC9C,MAAM,WAAW,SAAU,SAAQ,IAAI;IACnC,yCAAyC;IACzC,SAAS,IAAI,IAAI,CAAC;CACrB;AAED,4DAA4D;AAC5D,MAAM,WAAW,iBAAkB,SAAQ,IAAI;IAC3C,sCAAsC;IACtC,aAAa,IAAI,IAAI,CAAC;IACtB,qCAAqC;IACrC,YAAY,IAAI,IAAI,CAAC;CACxB;AAED,sEAAsE;AACtE,MAAM,WAAW,eAAgB,SAAQ,IAAI;IACzC,oDAAoD;IACpD,YAAY,IAAI,IAAI,CAAC;IACrB,sDAAsD;IACtD,cAAc,IAAI,IAAI,CAAC;CAC1B;AAED,kDAAkD;AAClD,MAAM,WAAW,gBAAiB,SAAQ,IAAI;IAC1C,WAAW,IAAI,IAAI,CAAC;IACpB,aAAa,IAAI,IAAI,CAAC;CACzB;AAED,yDAAyD;AACzD,MAAM,WAAW,mBAAoB,SAAQ,IAAI;IAC7C,oEAAoE;IACpE,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,uDAAuD;IACvD,QAAQ,IAAI,SAAS,IAAI,EAAE,CAAC;CAC/B;AAED,wFAAwF;AACxF,MAAM,WAAW,iBAAkB,SAAQ,IAAI;IAC3C,0BAA0B;IAC1B,SAAS,IAAI,IAAI,CAAC;CACrB;AAED,mCAAmC;AACnC,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC;IACjC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAC;CACnC;AAED,kBAAkB;AAClB,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;IACxD,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC;IACtC,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC;IAClC,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;CACvB;AAED,eAAe;AACf,MAAM,WAAW,uBAAwB,SAAQ,iBAAiB;IAC9D,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC,UAAU,CAAC;IAC5C,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;CACvB;AAED,0BAA0B;AAC1B,MAAM,WAAW,wBAAyB,SAAQ,iBAAiB;IAC/D,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC,WAAW,CAAC;IAC7C,QAAQ,CAAC,aAAa,EAAE,SAAS,CAAC;IAClC,QAAQ,CAAC,cAAc,EAAE,SAAS,CAAC;IACnC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAC;CACnC;AAED,uBAAuB;AACvB,MAAM,WAAW,8BAA+B,SAAQ,iBAAiB;IACrE,QAAQ,CAAC,IAAI,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IACnD,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,CAAC;CACnC;AAED,2DAA2D;AAC3D,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,uBAAuB,GAAG,wBAAwB,GAAG,8BAA8B,CAAC;AAEpI,mDAAmD;AACnD,MAAM,WAAW,SAAS;IACtB,iDAAiD;IACjD,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;IACvB,2BAA2B;IAC3B,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IACzB,8CAA8C;IAC9C,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,sEAAsE;IACtE,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,uCAAuC;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,qCAAqC;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,4BAA4B;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,gEAAgE;IAChE,QAAQ,CAAC,QAAQ,EAAE,kBAAkB,CAAC;IACtC,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,0DAA0D;IAC1D,QAAQ,CAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IACtC,yDAAyD;IACzD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC,kCAAkC;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9C,qCAAqC;IACrC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACvD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/api/sync/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure JS replacement for @typescript/libsyncrpc.
|
|
3
|
+
*
|
|
4
|
+
* Spawns a child process and communicates with it synchronously over
|
|
5
|
+
* stdin/stdout pipes using the same MessagePack-based tuple protocol:
|
|
6
|
+
* [MessageType (u8), method (bin), payload (bin)]
|
|
7
|
+
*
|
|
8
|
+
* Synchronous I/O is achieved by calling fs.readSync / fs.writeSync
|
|
9
|
+
* directly on the pipe file descriptors obtained from the spawned
|
|
10
|
+
* ChildProcess.
|
|
11
|
+
*/
|
|
12
|
+
/**
|
|
13
|
+
* SyncRpcChannel – drop-in replacement for the native libsyncrpc class.
|
|
14
|
+
*
|
|
15
|
+
* API surface intentionally matches the original:
|
|
16
|
+
* - constructor(exe, args)
|
|
17
|
+
* - requestSync(method, payload): string
|
|
18
|
+
* - requestBinarySync(method, payload): Uint8Array
|
|
19
|
+
* - registerCallback(name, cb)
|
|
20
|
+
* - close()
|
|
21
|
+
*
|
|
22
|
+
* The protocol is unversioned; both sides (this JS channel and the Go
|
|
23
|
+
* child process) must be built from the same tree.
|
|
24
|
+
*
|
|
25
|
+
* This class is **not** thread-safe. All calls must originate from a
|
|
26
|
+
* single thread — do not share an instance across worker threads.
|
|
27
|
+
*/
|
|
28
|
+
export declare class SyncRpcChannel {
|
|
29
|
+
private child;
|
|
30
|
+
private readFd;
|
|
31
|
+
private writeFd;
|
|
32
|
+
private pipeFd;
|
|
33
|
+
private callbacks;
|
|
34
|
+
private methodBufCache;
|
|
35
|
+
private _msgType;
|
|
36
|
+
private _msgName;
|
|
37
|
+
private _msgPayload;
|
|
38
|
+
private headerBuf;
|
|
39
|
+
private readBuf;
|
|
40
|
+
private readBufPos;
|
|
41
|
+
private readBufLen;
|
|
42
|
+
private writeBuf;
|
|
43
|
+
constructor(exe: string, args: string[]);
|
|
44
|
+
/**
|
|
45
|
+
* Send a request and synchronously wait for the response (string).
|
|
46
|
+
* Handles Call (callback) messages from the child inline.
|
|
47
|
+
*/
|
|
48
|
+
requestSync(method: string, payload: string): string;
|
|
49
|
+
/**
|
|
50
|
+
* Send a request and synchronously wait for the response (binary).
|
|
51
|
+
* Handles Call (callback) messages from the child inline.
|
|
52
|
+
*/
|
|
53
|
+
requestBinarySync(method: string, payload: Uint8Array): Uint8Array;
|
|
54
|
+
/** Register a string→string callback that the child may invoke. */
|
|
55
|
+
registerCallback(name: string, callback: (name: string, payload: string) => string): void;
|
|
56
|
+
/** Kill the child process and release resources. */
|
|
57
|
+
close(): void;
|
|
58
|
+
private ensureOpen;
|
|
59
|
+
private getMethodBuf;
|
|
60
|
+
private requestBytesSync;
|
|
61
|
+
/**
|
|
62
|
+
* Handle an incoming MSG_CALL from the child process.
|
|
63
|
+
*
|
|
64
|
+
* After sending the error response back to the child, this method
|
|
65
|
+
* intentionally re-throws to abort the caller's request loop.
|
|
66
|
+
* A failed callback is treated as unrecoverable to match the
|
|
67
|
+
* behavior of the native libsyncrpc addon.
|
|
68
|
+
*/
|
|
69
|
+
private handleCall;
|
|
70
|
+
/**
|
|
71
|
+
* Write a complete [type, name, payload] tuple in as few writeSync
|
|
72
|
+
* calls as possible. For messages that fit in the pre-allocated
|
|
73
|
+
* write buffer (64 KB), everything is assembled and sent in a single
|
|
74
|
+
* syscall. Larger messages use two syscalls: one for the header
|
|
75
|
+
* portion and one for the payload data.
|
|
76
|
+
*/
|
|
77
|
+
private writeTuple;
|
|
78
|
+
/**
|
|
79
|
+
* Read a [type, name, payload] tuple into instance fields
|
|
80
|
+
* (_msgType, _msgName, _msgPayload) to avoid allocating a
|
|
81
|
+
* short-lived 3-element array on every call.
|
|
82
|
+
*/
|
|
83
|
+
private readTuple;
|
|
84
|
+
/**
|
|
85
|
+
* Read a MessagePack bin field.
|
|
86
|
+
*/
|
|
87
|
+
private readBin;
|
|
88
|
+
/** Build an EOF error with the child's exit code/signal if available. */
|
|
89
|
+
private eofError;
|
|
90
|
+
/** Read a single byte from the buffered read-ahead. */
|
|
91
|
+
private readByte;
|
|
92
|
+
private readExact;
|
|
93
|
+
/**
|
|
94
|
+
* Fill the internal read-ahead buffer from the pipe fd.
|
|
95
|
+
* Retries on EAGAIN for non-blocking mode compatibility.
|
|
96
|
+
*/
|
|
97
|
+
private fillReadBuffer;
|
|
98
|
+
/**
|
|
99
|
+
* Synchronously read exactly `length` bytes into `buffer`.
|
|
100
|
+
* Serves from the internal read-ahead buffer first; for large reads
|
|
101
|
+
* that exceed the buffer size, reads directly from the fd to avoid
|
|
102
|
+
* an extra copy.
|
|
103
|
+
*/
|
|
104
|
+
private readExactInto;
|
|
105
|
+
/**
|
|
106
|
+
* Synchronously write all bytes from `data` (up to `length`).
|
|
107
|
+
* Retries on EAGAIN.
|
|
108
|
+
*/
|
|
109
|
+
private writeAllBuf;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=syncChannel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"syncChannel.d.ts","sourceRoot":"","sources":["../../src/api/syncChannel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA8EH;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,SAAS,CAAgE;IAEjF,OAAO,CAAC,cAAc,CAA6B;IAEnD,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,QAAQ,CAAqB;IACrC,OAAO,CAAC,WAAW,CAAqB;IAExC,OAAO,CAAC,SAAS,CAAyB;IAG1C,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,UAAU,CAAK;IAGvB,OAAO,CAAC,QAAQ,CAA6B;gBAEjC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE;IAkFvC;;;OAGG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAMpD;;;OAGG;IACH,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU;IAKlE,mEAAmE;IACnE,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI;IAIzF,oDAAoD;IACpD,KAAK,IAAI,IAAI;IAsBb,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,gBAAgB;IAqCxB;;;;;;;OAOG;IACH,OAAO,CAAC,UAAU;IAiClB;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;IA0DlB;;;;OAIG;IACH,OAAO,CAAC,SAAS;IA2BjB;;OAEG;IACH,OAAO,CAAC,OAAO;IA0Bf,yEAAyE;IACzE,OAAO,CAAC,QAAQ;IAOhB,uDAAuD;IACvD,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,SAAS;IAiBjB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAsBtB;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAoCrB;;;OAGG;IACH,OAAO,CAAC,WAAW;CAiBtB"}
|