Revision: 4867 http://sourceforge.net/p/vexi/code/4867 Author: clrg Date: 2016-06-20 16:35:25 +0000 (Mon, 20 Jun 2016) Log Message: ----------- Support unlimited arguments for math.max/min (global JS objects).
Modified Paths: -------------- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp =================================================================== --- branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp 2016-06-20 16:13:13 UTC (rev 4866) +++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/ibex/js/JSMath.jpp 2016-06-20 16:35:25 UTC (rev 4867) @@ -52,6 +52,23 @@ //#end break; } + default: { + //#switch(JSU.toString(method)) + case "min": + if (args.length<3) throw new JSExn("math.min expects at least 2 arguments"); + double min = JSU.toDouble(args[0]); + for (int i=1; args.length>i; i++) + min = java.lang.Math.min(min, JSU.toDouble(args[i])); + return JSU.N(min); + case "max": + if (args.length<3) throw new JSExn("math.max expects at least 2 arguments"); + double max = JSU.toDouble(args[0]); + for (int i=1; args.length>i; i++) + max = java.lang.Math.max(max, JSU.toDouble(args[i])); + return JSU.N(max); + //#end + break; + } } return super.callMethod(this_, method, args); } Modified: branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp =================================================================== --- branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp 2016-06-20 16:13:13 UTC (rev 4866) +++ branches/vexi3/org.vexi-library.js/src/main/jpp/org/vexi/js/VexiJS.jpp 2016-06-20 16:35:25 UTC (rev 4867) @@ -363,6 +363,23 @@ //#end break; } + default: { + //#switch(JSU.toString(method)) + case "min": + if (args.length<3) throw new JSExn("math.min expects at least 2 arguments"); + double min = JSU.toDouble(args[0]); + for (int i=1; args.length>i; i++) + min = java.lang.Math.min(min, JSU.toDouble(args[i])); + return JSU.N(min); + case "max": + if (args.length<3) throw new JSExn("math.max expects at least 2 arguments"); + double max = JSU.toDouble(args[0]); + for (int i=1; args.length>i; i++) + max = java.lang.Math.max(max, JSU.toDouble(args[i])); + return JSU.N(max); + //#end + break; + } } return super.callMethod(this_, method, args); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. ------------------------------------------------------------------------------ What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic patterns at an interface-level. Reveals which users, apps, and protocols are consuming the most bandwidth. Provides multi-vendor support for NetFlow, J-Flow, sFlow and other flows. Make informed decisions using capacity planning reports. http://sdm.link/zohomanageengine _______________________________________________ Vexi-svn mailing list Vexi-svn@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/vexi-svn