diff options
Diffstat (limited to 'node_modules/generate-function/example.js')
-rw-r--r-- | node_modules/generate-function/example.js | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/node_modules/generate-function/example.js b/node_modules/generate-function/example.js new file mode 100644 index 000000000..8d1fee162 --- /dev/null +++ b/node_modules/generate-function/example.js @@ -0,0 +1,27 @@ +var genfun = require('./') + +var multiply = function(a, b) { + return a * b +} + +var addAndMultiplyNumber = function(val) { + var fn = genfun() + ('function(n) {') + ('if (typeof n !== "number") {') // ending a line with { will indent the source + ('throw new Error("argument should be a number")') + ('}') + ('var result = multiply(%d, n+%d)', val, val) + ('return result') + ('}') + + // use fn.toString() if you want to see the generated source + + return fn.toFunction({ + multiply: multiply + }) +} + +var addAndMultiply2 = addAndMultiplyNumber(2) + +console.log(addAndMultiply2.toString()) +console.log('(3 + 2) * 2 =', addAndMultiply2(3))
\ No newline at end of file |