static string JS_server_aql_functions_numeric = "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief AQL query language numeric functions\n" "///\n" "/// @file\n" "///\n" "/// DISCLAIMER\n" "///\n" "/// Copyright 2010-2012 triagens GmbH, Cologne, Germany\n" "///\n" "/// Licensed under the Apache License, Version 2.0 (the \"License\");\n" "/// you may not use this file except in compliance with the License.\n" "/// You may obtain a copy of the License at\n" "///\n" "/// http://www.apache.org/licenses/LICENSE-2.0\n" "///\n" "/// Unless required by applicable law or agreed to in writing, software\n" "/// distributed under the License is distributed on an \"AS IS\" BASIS,\n" "/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n" "/// See the License for the specific language governing permissions and\n" "/// limitations under the License.\n" "///\n" "/// Copyright holder is triAGENS GmbH, Cologne, Germany\n" "///\n" "/// @author Jan Steemann\n" "/// @author Copyright 2012, triAGENS GmbH, Cologne, Germany\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief integer closest to value, not greater than value\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_FLOOR (value) {\n" " if (!AQL_IS_NUMBER(value)) {\n" " return undefined;\n" " }\n" " \n" " return Math.floor(value);\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief integer closest to value and not less than value\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_CEIL (value) {\n" " if (!AQL_IS_NUMBER(value)) {\n" " return undefined;\n" " }\n" " \n" " return Math.ceil(value);\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief integer closest to value \n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_ROUND (value) {\n" " if (!AQL_IS_NUMBER(value)) {\n" " return undefined;\n" " }\n" " \n" " return Math.round(value);\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief absolute value\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_ABS (value) {\n" " if (!AQL_IS_NUMBER(value)) {\n" " return undefined;\n" " }\n" " \n" " return Math.abs(value);\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief minimum of all values, ignores undefined\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_MIN_WU () {\n" " var result = undefined;\n" "\n" " for (var i in arguments) {\n" " var value = arguments[i];\n" " if (!AQL_IS_NUMBER(value)) {\n" " continue;\n" " }\n" " if (result === undefined || value < result) {\n" " result = value;\n" " }\n" " }\n" "\n" " return result;\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief maximum of all values, ignores undefined\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_MAX_WU () {\n" " var result = undefined;\n" "\n" " for (var i in arguments) {\n" " var value = arguments[i];\n" " if (!AQL_IS_NUMBER(value)) {\n" " continue;\n" " }\n" " if (result === undefined || value > result) {\n" " result = value;\n" " }\n" " }\n" "\n" " return result;\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief minimum of all values\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_MIN () {\n" " var result = undefined;\n" "\n" " for (var i in arguments) {\n" " var value = arguments[i];\n" " if (!AQL_IS_NUMBER(value)) {\n" " return undefined;\n" " }\n" " if (result === undefined || value < result) {\n" " result = value;\n" " }\n" " }\n" "\n" " return result;\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief maximum of all values\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_MAX () {\n" " var result = undefined;\n" "\n" " for (var i in arguments) {\n" " var value = arguments[i];\n" " if (!AQL_IS_NUMBER(value)) {\n" " return undefined;\n" " }\n" " if (result === undefined || value > result) {\n" " result = value;\n" " }\n" " }\n" "\n" " return result;\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief a random value between 0 and 1\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_NUMBER_RAND () {\n" " return Math.random();\n" "}\n" "\n" ;