UNPKG

3.65 kBSource Map (JSON)View Raw
1{"version":3,"sources":["OperationExpression.ion"],"names":["ion","DynamicExpression","OperationExpression","constructor","properties","args","type","left","right","argument","test","consequent","alternate","activate",{"type":"Identifier","name":"activate","loc":{"start":{"line":18,"column":8,"fixed":true,"source":"ion/runtime/OperationExpression.ion"},"end":{"line":18,"column":16,"fixed":true,"source":"ion/runtime/OperationExpression.ion"}}},"argumentExpressions","context","createRuntime","elements","observeElements","factory","observe","watch","watcher","value","argumentValues","evaluate","deactivate","unwatch","Error","apply","setValue","module","exports"],"mappings":"aAAA;AAAA,IACIA,GAAA,G,OAAM,CAAO,KAAP,CADV,EAEIC,iBAAA,G,OAAoB,CAAO,qBAAP,CAFxB;IAIuBC,mB;;QACnBC,WAAA,EAAa,SADMD,mBACN,CAACE,UAAD,EACjB;AAAA,Y,gDAAQ,CAAR;AAAA,YAEQ,IAAG,C,CAAI,KAACC,I,SAAR,EACR;AAAA,gBAAY,IAAG,KAACC,IAAD,KAAS,kBAAZ,EACZ;AAAA,oBAAgB,KAACD,IAAD,GAAQ;AAAA,wBAAC,KAACE,IAAF;AAAA,wBAAQ,KAACC,KAAT;AAAA,qBAAR,CAAhB;AAAA,iBADY,MAEK,IAAG,KAACF,IAAD,KAAS,iBAAZ,EACjB;AAAA,oBAAgB,KAACD,IAAD,GAAQ,CAAC,KAACI,QAAF,CAAR,CAAhB;AAAA,iBADiB,MAEA,IAAG,KAACH,IAAD,KAAS,uBAAZ,EACjB;AAAA,oBAAgB,KAACD,IAAD,GAAQ;AAAA,wBAAC,KAACK,IAAF;AAAA,wBAAQ,KAACC,UAAT;AAAA,wBAAqB,KAACC,SAAtB;AAAA,qBAAR,CAAhB;AAAA,iBALA;AAAA,aAHA;AAAA,S;QASIR,UAAA,EAAW;AAAA,YACPC,IAAA,EAAM,IADC;AAAA,YAEPQ,QAAA,EAAUC,YAClB;AAAA,gB,oCADQD,Q,uBACI,CAAZ;AAAA,gBACY,KAACE,mBAAD,QAACA,mB,WAAD,KAACA,mB,GAAuB,KAACC,OAAD,CAASC,aAAT,CAAuB;AAAA,oBAACX,IAAA,EAAK,iBAAN;AAAA,oBAAwBY,QAAA,EAAS,KAACb,IAAlC;AAAA,oBAAwCc,eAAA,EAAgB,KAACC,OAAD,CAASC,OAAjE;AAAA,iBAAvB,CAAxB,CADZ;AAAA,gBAEY,KAACN,mBAAD,CAAqBO,KAArB,CACI,KAACC,OAAD,QAACA,O,WAAD,KAACA,O,YAAW,UAACC,KAAD,EAC5B;AAAA,oBAAoB,KAACC,cAAD,GAAkBD,KAAlB,CAApB;AAAA,oBACoB,KAACE,QAAD,GADpB;AAAA,iB,OAFY,EAFZ;AAAA,aAHe;AAAA,YAUPC,UAAA,EAAYb,YACpB;AAAA,gB,oCADQa,U,uBACI,CAAZ;AAAA,gBACY,KAACZ,mBAAD,CAAqBa,OAArB,CAA6B,KAACL,OAA9B,EADZ;AAAA,aAXe;AAAA,YAaPG,QAAA,EAAUZ,YAClB;AAAA,gBAAY,IAAG,C,CAAI,KAACM,OAAD,CAASM,Q,SAAhB,EACZ;AAAA,oBAAgB,MAAM,IAAIG,KAAJ,C,6CAAU,GAAgD,KAACT,OAA3D,CAAN,CAAhB;AAAA,iBADA;AAAA,gBAEY,IAAII,KAAA,GAAQ,KAACJ,OAAD,CAASM,QAAT,CAAkBI,KAAlB,CAAwB,KAACd,OAAzB,EAAkC,KAACS,cAAnC,CAAZ,CAFZ;AAAA,gBAGY,KAACM,QAAD,CAAUP,KAAV,EAHZ;AAAA,aAde;AAAA,S;OAXoCvB,iB,EAJnD;AAIA+B,MAAA,CAAOC,OAAP,GAAuB/B,mBAAvB","sourcesContent":["const\n ion = import '../'\n DynamicExpression = import './DynamicExpression'\n\nmodule.exports = class OperationExpression extends DynamicExpression\n constructor: (properties) ->\n super\n # default args for common types of BinaryExpressions\n if not @args?\n if @type is 'BinaryExpression'\n @args = [@left, @right]\n else if @type is 'UnaryExpression'\n @args = [@argument]\n else if @type is 'ConditionalExpression'\n @args = [@test, @consequent, @alternate]\n properties:\n args: null\n activate: ->\n super\n @argumentExpressions ?= @context.createRuntime({type:'ArrayExpression',elements:@args, observeElements:@factory.observe})\n @argumentExpressions.watch(\n @watcher ?= (value) =>\n @argumentValues = value\n @evaluate()\n )\n deactivate: ->\n super\n @argumentExpressions.unwatch(@watcher)\n evaluate: ->\n if not @factory.evaluate?\n throw new Error(\"evaluate method not defined for operation: \" + @factory)\n let value = @factory.evaluate.apply(@context, @argumentValues)\n @setValue(value)\n"]}
\No newline at end of file