Files
SubMiner/launcher/process-adapter.ts

22 lines
557 B
TypeScript

export interface ProcessAdapter {
platform(): NodeJS.Platform;
onSignal(signal: NodeJS.Signals, handler: () => void): void;
writeStdout(text: string): void;
exit(code: number): never;
setExitCode(code: number): void;
}
export const nodeProcessAdapter: ProcessAdapter = {
platform: () => process.platform,
onSignal: (signal, handler) => {
process.on(signal, handler);
},
writeStdout: (text) => {
process.stdout.write(text);
},
exit: (code) => process.exit(code),
setExitCode: (code) => {
process.exitCode = code;
},
};