static string JS_server_aql_functions_string = "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief AQL query language string 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 returns the length of the string in number of characters\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_STRING_LENGTH (value) {\n" " if (!AQL_IS_STRING(value)) {\n" " return undefined;\n" " }\n" "\n" " return value.length;\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief returns a substring from the original string\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_STRING_SUBSTRING (value, start, length) {\n" " if (!AQL_IS_STRING(value)) {\n" " return undefined;\n" " }\n" " if (!AQL_IS_NUMBER(start)) {\n" " return undefined;\n" " }\n" "\n" " if (length === undefined) {\n" " return value.substr(start);\n" " }\n" "\n" " if (!AQL_IS_NUMBER(length) || length < 0) {\n" " return undefined;\n" " }\n" "\n" " return value.substr(start, length);\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief returns the string in upper case\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_STRING_UPPER (value) {\n" " if (!AQL_IS_STRING(value)) {\n" " return undefined;\n" " }\n" "\n" " return value.toUpperCase();\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief returns the string in lower case\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_STRING_LOWER (value) {\n" " if (!AQL_IS_STRING(value)) {\n" " return undefined;\n" " }\n" "\n" " return value.toLowerCase();\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief returns the position of substring search in value\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_STRING_POSITION (value, search, insensitive) {\n" " if (!AQL_IS_STRING(value)) {\n" " return undefined;\n" " }\n" "\n" " var args = \"g\";\n" " if (insensitive) {\n" " args += \"i\";\n" " }\n" "\n" " var result = value.search(new RegExp(search), args);\n" " if (result === -1) {\n" " return undefined;\n" " }\n" "\n" " return result;\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief returns whether value contains the substring search\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_STRING_CONTAINS (value, search, insensitive) {\n" " if (!AQL_IS_STRING(value)) {\n" " return undefined;\n" " }\n" "\n" " var args = \"g\";\n" " if (insensitive) {\n" " args += \"i\";\n" " }\n" "\n" " return (value.search(new RegExp(search), args) !== -1);\n" "}\n" "\n" "////////////////////////////////////////////////////////////////////////////////\n" "/// @brief replaces pattern in value with replace\n" "////////////////////////////////////////////////////////////////////////////////\n" "\n" "function AQL_STRING_REPLACE (value, pattern, replace, insensitive) {\n" " if (!AQL_IS_STRING(value)) {\n" " return undefined;\n" " }\n" " if (!AQL_IS_STRING(pattern) || pattern.length == 0) {\n" " return undefined;\n" " }\n" " if (!AQL_IS_STRING(replace)) {\n" " return undefined;\n" " }\n" "\n" " var args = \"g\";\n" " if (insensitive) {\n" " args += \"i\";\n" " }\n" "\n" " return value.replace(new RegExp(pattern, args), replace);\n" "}\n" "\n" ;