CUBRID Engine
latest
|
Public Member Functions | |
void | advance_row_cursor (void) |
void | start_json_iterator (void) |
int | fetch_row (void) |
void | end (void) |
cursor (void) | |
Public Attributes | |
std::size_t | m_child |
cubxasl::json_table::node * | m_node |
JSON_DOC_STORE | m_input_doc |
const JSON_DOC * | m_process_doc |
bool | m_is_row_fetched |
bool | m_need_advance_row |
bool | m_is_node_consumed |
bool | m_iteration_started |
Definition at line 35 of file scan_json_table.cpp.
cubscan::json_table::scanner::cursor::cursor | ( | void | ) |
Definition at line 57 of file scan_json_table.cpp.
void cubscan::json_table::scanner::cursor::advance_row_cursor | ( | void | ) |
Definition at line 71 of file scan_json_table.cpp.
References db_json_iterator_has_next(), db_json_iterator_next(), end(), m_child, m_is_row_fetched, m_iteration_started, cubxasl::json_table::node::m_iterator, m_need_advance_row, m_node, cubxasl::json_table::node::m_ordinality, and NULL.
Referenced by cubscan::json_table::scanner::scan_next_internal().
void cubscan::json_table::scanner::cursor::end | ( | void | ) |
Definition at line 149 of file scan_json_table.cpp.
References cubxasl::json_table::node::clear_columns(), db_json_reset_iterator(), m_is_node_consumed, cubxasl::json_table::node::m_iterator, m_node, m_process_doc, and NULL.
Referenced by advance_row_cursor().
int cubscan::json_table::scanner::cursor::fetch_row | ( | void | ) |
Definition at line 108 of file scan_json_table.cpp.
References assert, ASSERT_ERROR, db_json_iterator_get_document(), ER_FAILED, cubxasl::json_table::column::evaluate(), i, m_input_doc, cubxasl::json_table::node::m_is_iterable_node, m_is_row_fetched, cubxasl::json_table::node::m_iterator, m_node, cubxasl::json_table::node::m_ordinality, cubxasl::json_table::node::m_output_columns, cubxasl::json_table::node::m_output_columns_size, m_process_doc, NO_ERROR, and NULL.
Referenced by cubscan::json_table::scanner::scan_next_internal().
void cubscan::json_table::scanner::cursor::start_json_iterator | ( | void | ) |
Definition at line 97 of file scan_json_table.cpp.
References assert, db_json_get_type(), db_json_set_iterator(), m_input_doc, cubxasl::json_table::node::m_is_iterable_node, m_is_node_consumed, cubxasl::json_table::node::m_iterator, and m_node.
Referenced by cubscan::json_table::scanner::set_input_document().
std::size_t cubscan::json_table::scanner::cursor::m_child |
Definition at line 37 of file scan_json_table.cpp.
Referenced by advance_row_cursor(), cubscan::json_table::scanner::clear(), cubscan::json_table::scanner::init_cursor(), cubscan::json_table::scanner::scan_next_internal(), and cubscan::json_table::scanner::set_next_cursor().
JSON_DOC_STORE cubscan::json_table::scanner::cursor::m_input_doc |
Definition at line 39 of file scan_json_table.cpp.
Referenced by cubscan::json_table::scanner::clear(), fetch_row(), cubscan::json_table::scanner::set_input_document(), and start_json_iterator().
bool cubscan::json_table::scanner::cursor::m_is_node_consumed |
Definition at line 44 of file scan_json_table.cpp.
Referenced by cubscan::json_table::scanner::clear(), end(), cubscan::json_table::scanner::open(), cubscan::json_table::scanner::scan_next_internal(), cubscan::json_table::scanner::set_input_document(), and start_json_iterator().
bool cubscan::json_table::scanner::cursor::m_is_row_fetched |
Definition at line 42 of file scan_json_table.cpp.
Referenced by advance_row_cursor(), cubscan::json_table::scanner::clear(), fetch_row(), and cubscan::json_table::scanner::init_cursor().
bool cubscan::json_table::scanner::cursor::m_iteration_started |
Definition at line 45 of file scan_json_table.cpp.
Referenced by advance_row_cursor(), cubscan::json_table::scanner::clear(), and cubscan::json_table::scanner::scan_next_internal().
bool cubscan::json_table::scanner::cursor::m_need_advance_row |
Definition at line 43 of file scan_json_table.cpp.
Referenced by advance_row_cursor(), cubscan::json_table::scanner::clear(), and cubscan::json_table::scanner::scan_next_internal().
cubxasl::json_table::node* cubscan::json_table::scanner::cursor::m_node |
Definition at line 38 of file scan_json_table.cpp.
Referenced by advance_row_cursor(), end(), fetch_row(), cubscan::json_table::scanner::init(), cubscan::json_table::scanner::init_cursor(), cubscan::json_table::scanner::scan_next_internal(), cubscan::json_table::scanner::set_next_cursor(), and start_json_iterator().
Definition at line 40 of file scan_json_table.cpp.
Referenced by end(), fetch_row(), and cubscan::json_table::scanner::set_next_cursor().