UNPKG

strong-trace

Version:

StrongTrace Node.js Tracer

51 lines (33 loc) 1.14 kB
require_transform ===== Replace the symantics of `require` for JavaScript files such that it will call a set of `transform` functions on the content before requiring it. Example --- ```javascript var requireTransform = require("./require_transform") function LogName() {} LogName.prototype.transform = function transform(content, filename) { console.log(filename) // keep content intact return content } requireTransform(new LogName()) require("redis") ``` API === `var requireTransform = require("./require_transform")` --- `requireTransform.replaceCompile(transformer[, fileTest])` --- Replace the internals of `require` such that `Module._compile` runs transformer.transform on any filename that passes `fileTest` `transformer` --- Will call `transformer.transform(content, filename)` and then pass the transformed content to the normal `Module._compile`. `fileTest(filename)` --- For the given filename, return `true` to run the transformer functions, or `false` to bypass them. Default fileTest will always return true. `requireTransform.restoreCompile()` --- Restores the `Module._compile` to the original.