mirror of
https://github.com/oven-sh/bun
synced 2026-02-12 20:09:04 +00:00
* oooooh magic * stuff * run format * ok * yippee * run the formatter back * finish things up * fix webkit * more * [autofix.ci] apply automated fixes * fix compile * fix compilation on windows, it seems to not work though :( * update * a * v * ok * [autofix.ci] apply automated fixes * OOPS * bump bun to reduce ci bugs * a * js2native is done! * improve array binding * rebase * some final stuff * wasi fixes * os --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com> Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
44 lines
1.8 KiB
TypeScript
44 lines
1.8 KiB
TypeScript
// Hardcoded module "node:path"
|
|
const [bindingPosix, bindingWin32] = $cpp("Path.cpp", "createNodePathBinding");
|
|
const toNamespacedPathPosix = bindingPosix.toNamespacedPath.bind(bindingPosix);
|
|
const toNamespacedPathWin32 = bindingWin32.toNamespacedPath.bind(bindingWin32);
|
|
const posix = {
|
|
resolve: bindingPosix.resolve.bind(bindingPosix),
|
|
normalize: bindingPosix.normalize.bind(bindingPosix),
|
|
isAbsolute: bindingPosix.isAbsolute.bind(bindingPosix),
|
|
join: bindingPosix.join.bind(bindingPosix),
|
|
relative: bindingPosix.relative.bind(bindingPosix),
|
|
toNamespacedPath: toNamespacedPathPosix,
|
|
dirname: bindingPosix.dirname.bind(bindingPosix),
|
|
basename: bindingPosix.basename.bind(bindingPosix),
|
|
extname: bindingPosix.extname.bind(bindingPosix),
|
|
format: bindingPosix.format.bind(bindingPosix),
|
|
parse: bindingPosix.parse.bind(bindingPosix),
|
|
sep: "/",
|
|
delimiter: ":",
|
|
win32: undefined as typeof win32,
|
|
posix: undefined as typeof posix,
|
|
_makeLong: toNamespacedPathPosix,
|
|
};
|
|
const win32 = {
|
|
resolve: bindingWin32.resolve.bind(bindingWin32),
|
|
normalize: bindingWin32.normalize.bind(bindingWin32),
|
|
isAbsolute: bindingWin32.isAbsolute.bind(bindingWin32),
|
|
join: bindingWin32.join.bind(bindingWin32),
|
|
relative: bindingWin32.relative.bind(bindingWin32),
|
|
toNamespacedPath: toNamespacedPathWin32,
|
|
dirname: bindingWin32.dirname.bind(bindingWin32),
|
|
basename: bindingWin32.basename.bind(bindingWin32),
|
|
extname: bindingWin32.extname.bind(bindingWin32),
|
|
format: bindingWin32.format.bind(bindingWin32),
|
|
parse: bindingWin32.parse.bind(bindingWin32),
|
|
sep: "\\",
|
|
delimiter: ";",
|
|
win32: undefined as typeof win32,
|
|
posix,
|
|
_makeLong: toNamespacedPathWin32,
|
|
};
|
|
posix.win32 = win32.win32 = win32;
|
|
posix.posix = posix;
|
|
export default process.platform === "win32" ? win32 : posix;
|