Nanobots Protecting Microbots
    Have ideas to improve npm?Join in the discussion! »

    jsepgen

    1.0.6 • Public • Published

    jsepgen

    Tiny module (15 LOC) to generate code from the jsep AST.

    Example

    Convert all variables and functions to an object with the same key

    var jsep = require('jsep');
    var gen = require('gen');
     
    // parse the expression into an AST
    var ast = jsep('-A1 + SUM(A5, A6) + " %"')
     
    // replace variables and functions
    var expr = gen(ast, function(node) {
      if (node.type != 'Identifier') return node;
      node.name = '_.' + node.name;
    })
     
    expr // ((-_.A1 + _.SUM(_.A5, _.A6)) + "%")

    It's pretty easy to turn this into a function:

    var fn = new Function('_', 'return ' + expr);
     
    var total = fn({
      A1: 2,
      A5: 5,
      A6: 6,
      SUM: function(a, b) { return a + b }
    })
     
    total // 9% 

    Installation

    npm install jsepgen
    

    Contact

    License

    MIT

    Install

    npm i jsepgen

    DownloadsWeekly Downloads

    4

    Version

    1.0.6

    License

    none

    Last publish

    Collaborators

    • avatar
    • avatar