INNER CODE UNIT · JavaScript

hook

standard-things/esm · src/hook/main.js:16

function hook(Mod) {
  function managerWrapper(manager, func, args) {
    const [, mainPath] = realProcess.argv
    const filename = dualResolveFilename(mainPath, null, true)
    const pkg = Package.from(filename)
    const wrapped = Wrapper.find(Mod, "runMain", relaxRange(pkg.range))

    return wrapped === null
      ? Reflect.apply(func, this, args)
      : Reflect.apply(wrapped, this, [manager, func, args])
  }

  function methodWrapper() {
    const [, mainPath] = realProcess.argv
    const filename = dualResolveFilename(mainPath, null, true)
    const defaultPkg = Loader.state.package.default
    const dirPath = dirname(filename)

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…