Files
work-ts/cli.ts
2024-06-17 20:08:40 +08:00

19 lines
549 B
TypeScript

import { SpawnSyncOptionsWithBufferEncoding, SpawnSyncReturns, spawnSync as rawSpawnSync } from "child_process";
export function check(result: SpawnSyncReturns<Buffer | string>) {
if (result.error)
throw result.error;
if (result.status !== 0) {
throw result.stderr;
}
return result;
}
export function checkedSpawnSync(
command: string,
args: readonly string[],
options: SpawnSyncOptionsWithBufferEncoding,
): SpawnSyncReturns<Buffer | string> {
return check(rawSpawnSync(command, args, options));
}