UNPKG

genish.js

Version:
44 lines (32 loc) 791 B
'use strict' let gen = require('./gen.js'), floor= require('./floor.js'), sub = require('./sub.js'), memo = require('./memo.js') let proto = { basename:'clip', gen() { let code, inputs = gen.getInputs( this ), out out = ` var ${this.name} = ${inputs[0]} if( ${this.name} > ${inputs[2]} ) ${this.name} = ${inputs[2]} else if( ${this.name} < ${inputs[1]} ) ${this.name} = ${inputs[1]} ` out = ' ' + out gen.memo[ this.name ] = this.name return [ this.name, out ] }, } module.exports = ( in1, min=-1, max=1 ) => { let ugen = Object.create( proto ) Object.assign( ugen, { min, max, uid: gen.getUID(), inputs: [ in1, min, max ], }) ugen.name = `${ugen.basename}${ugen.uid}` return ugen }