knip
Version:
Find and fix unused dependencies, exports and files in your TypeScript and JavaScript projects
20 lines (19 loc) • 678 B
JavaScript
import { toBinary } from "../../util/input.js";
const execFlags = new Set(['-exec', '-execdir']);
const execTerminators = new Set([';', '\\;', '+']);
export const resolve = (binary, args, { fromArgs }) => {
const execIdx = args.findIndex(a => execFlags.has(a));
if (execIdx >= 0) {
const cmdWords = [];
for (let i = execIdx + 1; i < args.length; i++) {
const v = args[i];
if (execTerminators.has(v))
break;
if (v !== '{}')
cmdWords.push(v);
}
if (cmdWords.length > 0)
return [toBinary(binary), ...fromArgs(cmdWords)];
}
return [toBinary(binary)];
};