Skip to content

File parse_dbi.c

FileList > cubrid > src > parser > parse_dbi.c

Go to the source code of this file

  • #include "config.h"
  • #include <assert.h>
  • #include <stdarg.h>
  • #include <ctype.h>
  • #include "porting.h"
  • #include "error_manager.h"
  • #include "parser.h"
  • #include "xasl_generation.h"
  • #include "parser_message.h"
  • #include "memory_alloc.h"
  • #include "language_support.h"
  • #include "db.h"
  • #include "schema_manager.h"
  • #include "cnv.h"
  • #include "string_opfunc.h"
  • #include "set_object.h"
  • #include "intl_support.h"
  • #include "virtual_object.h"
  • #include "object_primitive.h"
  • #include "object_template.h"
  • #include "db_json.hpp"
  • #include "dbtype.h"

Public Functions

Type Name
int db_json_val_from_str (const char * raw_str, const int str_size, DB_VALUE * json_val)
void pt_add_type_to_set (PARSER_CONTEXT * parser, const PT_NODE * typs, PT_NODE ** set)
DB_AUTH pt_auth_to_db_auth (const PT_NODE * auth)
PT_NODE * pt_bind_type_from_dbval (PARSER_CONTEXT * parser, PT_NODE * node, DB_VALUE * val)
void pt_data_type_init_value (const PT_NODE * node, DB_VALUE * value_out)
DB_DOMAIN * pt_data_type_to_db_domain (PARSER_CONTEXT * parser, PT_NODE * dt, const char * class_name)
const char * pt_data_type_to_db_domain_name (const PT_NODE * dt)
PT_TYPE_ENUM pt_db_to_type_enum (const DB_TYPE t)
DB_VALUE * pt_db_value_initialize (PARSER_CONTEXT * parser, PT_NODE * value, DB_VALUE * db_value, int * more_type_info_needed)
PT_NODE * pt_dbval_to_value (PARSER_CONTEXT * parser, const DB_VALUE * val)
DB_VALUE * pt_host_var_db_value (PARSER_CONTEXT * parser, PT_NODE * hv)
bool pt_is_same_enum_data_type (PT_NODE * dt1, PT_NODE * dt2)
MISC_OPERAND pt_misc_to_qp_misc_operand (PT_MISC_TYPE misc_specifier)
DB_DOMAIN * pt_node_data_type_to_db_domain (PARSER_CONTEXT * parser, PT_NODE * dt, PT_TYPE_ENUM type)
CUBRID_STMT_TYPE pt_node_to_cmd_type (PT_NODE * node)
DB_DOMAIN * pt_node_to_db_domain (PARSER_CONTEXT * parser, PT_NODE * node, const char * class_name)
const char * pt_node_to_db_domain_name (PT_NODE * node)
DB_TYPE pt_node_to_db_type (PT_NODE * node)
DB_VALUE * pt_seq_value_to_db (PARSER_CONTEXT * parser, PT_NODE * values, DB_VALUE * db_value, PT_NODE ** el_types)
void pt_set_host_variables (PARSER_CONTEXT * parser, int count, DB_VALUE * values)
DB_VALUE * pt_set_value_to_db (PARSER_CONTEXT * parser, PT_NODE ** values, DB_VALUE * db_value, PT_NODE ** el_types)
PT_NODE * pt_sm_attribute_default_value_to_node (PARSER_CONTEXT * parser, const SM_ATTRIBUTE * sm_attr)
PT_NODE * pt_sort_in_desc_order (PT_NODE * vlist)
void pt_string_to_data_type (PARSER_CONTEXT * parser, const char * s, PT_NODE * node)
DB_DOMAIN * pt_string_to_db_domain (const char * s, const char * class_name)
DB_TYPE pt_type_enum_to_db (const PT_TYPE_ENUM t)
DB_DOMAIN * pt_type_enum_to_db_domain (const PT_TYPE_ENUM t)
const char * pt_type_enum_to_db_domain_name (const PT_TYPE_ENUM t)
DB_VALUE * pt_value_to_db (PARSER_CONTEXT * parser, PT_NODE * value)

Public Static Functions

Type Name
PT_NODE * pt_bind_helper (PARSER_CONTEXT * parser, PT_NODE * node, DB_VALUE * val, int * data_type_added)
PT_NODE * pt_bind_set_type (PARSER_CONTEXT * parser, PT_NODE * node, DB_VALUE * val, int * data_type_added)
int pt_get_enumeration_from_data_type (PARSER_CONTEXT * parser, PT_NODE * dt, DB_ENUMERATION * enumeration)
PT_NODE * pt_get_object_data_type (PARSER_CONTEXT * parser, const DB_VALUE * val)
PT_NODE * pt_set_elements_to_value (PARSER_CONTEXT * parser, const DB_VALUE * val)

Macros

Type Name
define SET_PARSER_ERROR_AND_FREE_NODE (parser, result, default_msg_id) /* multi line expression */

Public Functions Documentation

function db_json_val_from_str

int db_json_val_from_str (
    const  char * raw_str,
    const  int str_size,
    DB_VALUE * json_val
) 

function pt_add_type_to_set

void pt_add_type_to_set (
    PARSER_CONTEXT * parser,
    const  PT_NODE * typs,
    PT_NODE ** set
) 

function pt_auth_to_db_auth

DB_AUTH pt_auth_to_db_auth (
    const  PT_NODE * auth
) 

function pt_bind_type_from_dbval

PT_NODE * pt_bind_type_from_dbval (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    DB_VALUE * val
) 

function pt_data_type_init_value

void pt_data_type_init_value (
    const  PT_NODE * node,
    DB_VALUE * value_out
) 

function pt_data_type_to_db_domain

DB_DOMAIN * pt_data_type_to_db_domain (
    PARSER_CONTEXT * parser,
    PT_NODE * dt,
    const  char * class_name
) 

function pt_data_type_to_db_domain_name

const  char * pt_data_type_to_db_domain_name (
    const  PT_NODE * dt
) 

function pt_db_to_type_enum

PT_TYPE_ENUM pt_db_to_type_enum (
    const  DB_TYPE t
) 

function pt_db_value_initialize

DB_VALUE * pt_db_value_initialize (
    PARSER_CONTEXT * parser,
    PT_NODE * value,
    DB_VALUE * db_value,
    int * more_type_info_needed
) 

function pt_dbval_to_value

PT_NODE * pt_dbval_to_value (
    PARSER_CONTEXT * parser,
    const  DB_VALUE * val
) 

function pt_host_var_db_value

DB_VALUE * pt_host_var_db_value (
    PARSER_CONTEXT * parser,
    PT_NODE * hv
) 

function pt_is_same_enum_data_type

bool pt_is_same_enum_data_type (
    PT_NODE * dt1,
    PT_NODE * dt2
) 

function pt_misc_to_qp_misc_operand

MISC_OPERAND pt_misc_to_qp_misc_operand (
    PT_MISC_TYPE misc_specifier
) 

function pt_node_data_type_to_db_domain

DB_DOMAIN * pt_node_data_type_to_db_domain (
    PARSER_CONTEXT * parser,
    PT_NODE * dt,
    PT_TYPE_ENUM type
) 

function pt_node_to_cmd_type

CUBRID_STMT_TYPE pt_node_to_cmd_type (
    PT_NODE * node
) 

function pt_node_to_db_domain

DB_DOMAIN * pt_node_to_db_domain (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    const  char * class_name
) 

function pt_node_to_db_domain_name

const  char * pt_node_to_db_domain_name (
    PT_NODE * node
) 

function pt_node_to_db_type

DB_TYPE pt_node_to_db_type (
    PT_NODE * node
) 

function pt_seq_value_to_db

DB_VALUE * pt_seq_value_to_db (
    PARSER_CONTEXT * parser,
    PT_NODE * values,
    DB_VALUE * db_value,
    PT_NODE ** el_types
) 

function pt_set_host_variables

void pt_set_host_variables (
    PARSER_CONTEXT * parser,
    int count,
    DB_VALUE * values
) 

function pt_set_value_to_db

DB_VALUE * pt_set_value_to_db (
    PARSER_CONTEXT * parser,
    PT_NODE ** values,
    DB_VALUE * db_value,
    PT_NODE ** el_types
) 

function pt_sm_attribute_default_value_to_node

PT_NODE * pt_sm_attribute_default_value_to_node (
    PARSER_CONTEXT * parser,
    const  SM_ATTRIBUTE * sm_attr
) 

function pt_sort_in_desc_order

PT_NODE * pt_sort_in_desc_order (
    PT_NODE * vlist
) 

function pt_string_to_data_type

void pt_string_to_data_type (
    PARSER_CONTEXT * parser,
    const  char * s,
    PT_NODE * node
) 

function pt_string_to_db_domain

DB_DOMAIN * pt_string_to_db_domain (
    const  char * s,
    const  char * class_name
) 

function pt_type_enum_to_db

DB_TYPE pt_type_enum_to_db (
    const  PT_TYPE_ENUM t
) 

function pt_type_enum_to_db_domain

DB_DOMAIN * pt_type_enum_to_db_domain (
    const  PT_TYPE_ENUM t
) 

function pt_type_enum_to_db_domain_name

const  char * pt_type_enum_to_db_domain_name (
    const  PT_TYPE_ENUM t
) 

function pt_value_to_db

DB_VALUE * pt_value_to_db (
    PARSER_CONTEXT * parser,
    PT_NODE * value
) 

Public Static Functions Documentation

function pt_bind_helper

static PT_NODE * pt_bind_helper (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    DB_VALUE * val,
    int * data_type_added
) 

function pt_bind_set_type

static PT_NODE * pt_bind_set_type (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    DB_VALUE * val,
    int * data_type_added
) 

function pt_get_enumeration_from_data_type

static int pt_get_enumeration_from_data_type (
    PARSER_CONTEXT * parser,
    PT_NODE * dt,
    DB_ENUMERATION * enumeration
) 

function pt_get_object_data_type

static PT_NODE * pt_get_object_data_type (
    PARSER_CONTEXT * parser,
    const  DB_VALUE * val
) 

function pt_set_elements_to_value

static PT_NODE * pt_set_elements_to_value (
    PARSER_CONTEXT * parser,
    const  DB_VALUE * val
) 

Macro Definition Documentation

define SET_PARSER_ERROR_AND_FREE_NODE

#define SET_PARSER_ERROR_AND_FREE_NODE (
    parser,
    result,
    default_msg_id
) `/* multi line expression */`


The documentation for this class was generated from the following file cubrid/src/parser/parse_dbi.c