File db_json_path.cpp¶
FileList > compat > db_json_path.cpp
Go to the source code of this file
#include "db_json_path.hpp"#include "db_json.hpp"#include "db_rapidjson.hpp"#include "memory_alloc.h"#include "string_opfunc.h"#include "system_parameter.h"#include <algorithm>#include <cctype>#include <cerrno>#include <cstdlib>#include <limits>#include <string>#include <unordered_set>#include <vector>#include "memory_wrapper.hpp"
Public Types¶
| Type | Name |
|---|---|
| enum | JSON_PATH_TYPE |
Public Functions¶
| Type | Name |
|---|---|
| int | db_json_path_unquote_object_keys (std::string & sql_path) |
| int | db_json_split_path_by_delimiters (const std::string & path, const std::string & delim, bool allow_empty, std::vector< std::string > & split_path) |
Public Static Functions¶
| Type | Name |
|---|---|
| JSON_PATH_TYPE | db_json_get_path_type (std::string & path_string) |
| bool | db_json_isspace (const unsigned char & ch) |
| bool | db_json_iszero (const unsigned char & ch) |
| int | db_json_path_is_token_valid_array_index (const std::string & str, bool allow_wildcards, unsigned long & index, std::size_t start=0, std::size_t end=0) |
| bool | db_json_path_is_token_valid_quoted_object_key (const std::string & path, std::size_t & token_begin) |
| bool | db_json_path_is_token_valid_unquoted_object_key (const std::string & path, std::size_t & token_begin) |
| bool | db_json_path_is_valid_identifier_char (unsigned char ch) |
| bool | db_json_path_is_valid_identifier_start_char (unsigned char ch) |
| bool | db_json_path_quote_and_validate_unquoted_object_key (std::string & path, std::size_t & token_begin) |
| void | db_json_remove_leading_zeros_index (std::string & index) |
| void | db_json_trim_leading_spaces (std::string & path_string) |
| std::size_t | skip_whitespaces (const std::string & path, std::size_t token_begin) |
Public Types Documentation¶
enum JSON_PATH_TYPE¶
Public Functions Documentation¶
function db_json_path_unquote_object_keys¶
function db_json_split_path_by_delimiters¶
int db_json_split_path_by_delimiters (
const std::string & path,
const std::string & delim,
bool allow_empty,
std::vector< std::string > & split_path
)
Public Static Functions Documentation¶
function db_json_get_path_type¶
function db_json_isspace¶
function db_json_iszero¶
function db_json_path_is_token_valid_array_index¶
static int db_json_path_is_token_valid_array_index (
const std::string & str,
bool allow_wildcards,
unsigned long & index,
std::size_t start=0,
std::size_t end=0
)
function db_json_path_is_token_valid_quoted_object_key¶
static bool db_json_path_is_token_valid_quoted_object_key (
const std::string & path,
std::size_t & token_begin
)
function db_json_path_is_token_valid_unquoted_object_key¶
static bool db_json_path_is_token_valid_unquoted_object_key (
const std::string & path,
std::size_t & token_begin
)
function db_json_path_is_valid_identifier_char¶
function db_json_path_is_valid_identifier_start_char¶
function db_json_path_quote_and_validate_unquoted_object_key¶
static bool db_json_path_quote_and_validate_unquoted_object_key (
std::string & path,
std::size_t & token_begin
)
function db_json_remove_leading_zeros_index¶
function db_json_trim_leading_spaces¶
function skip_whitespaces¶
The documentation for this class was generated from the following file cubrid/src/compat/db_json_path.cpp