• File: example.js
  • Full Path: /var/www/nodejs/simo_meps_file_script/node_modules/generate-function/example.js
  • Date Modified: 02/28/2025 8:55 PM
  • File size: 609 bytes
  • MIME-type: text/plain
  • Charset: utf-8
const genfun = require('./')
const { d } = genfun.formats

function multiply (a, b) {
  return a * b
}

function addAndMultiplyNumber (val) {
  const fn = genfun(`
    function (n) {
      if (typeof n !== 'number') {
        throw new Error('argument should be a number')
      }
      const result = multiply(${d(val)}, n + ${d(val)})
      return result
    }
  `)

  // use fn.toString() if you want to see the generated source

  return fn.toFunction({multiply})
}

const addAndMultiply2 = addAndMultiplyNumber(2)

console.log(addAndMultiply2.toString())
console.log('(3 + 2) * 2 =', addAndMultiply2(3))