Skip to content

File compile.c

FileList > cubrid > src > parser > compile.c

Go to the source code of this file

  • #include "config.h"
  • #include <assert.h>
  • #include "authenticate.h"
  • #include "dbi.h"
  • #include "parser.h"
  • #include "semantic_check.h"
  • #include "locator_cl.h"
  • #include "memory_alloc.h"
  • #include "schema_manager.h"
  • #include "parser_message.h"
  • #include "view_transform.h"
  • #include "intl_support.h"
  • #include "server_interface.h"
  • #include "network_interface_cl.h"
  • #include "execute_statement.h"
  • #include "transaction_cl.h"
  • #include "dbtype.h"

Classes

Type Name
struct pt_class_locks
struct trigger_exec_info

Public Types

Type Name
typedef struct pt_class_locks PT_CLASS_LOCKS
typedef struct trigger_exec_info TRIGGER_EXEC_INFO
enum pt_order_by_adjustment

Public Functions

Type Name
PT_NODE * pt_add_row_classoid_name (PARSER_CONTEXT * parser, PT_NODE * statement, int server_op)
PT_NODE * pt_add_row_oid (PARSER_CONTEXT * parser, PT_NODE * statement)
PT_NODE * pt_add_row_oid_name (PARSER_CONTEXT * parser, PT_NODE * statement)
PT_NODE * pt_class_pre_fetch (PARSER_CONTEXT * parser, PT_NODE * statement)
PT_NODE * pt_compile (PARSER_CONTEXT * parser, PT_NODE *volatile statement)
PT_NODE * pt_compile_trigger_stmt (PARSER_CONTEXT * parser, const char * trigger_stmt, DB_OBJECT * class_op, const char * name1, const char * name2, char ** new_trigger_stmt, int with_evaluate)
int pt_exec_trigger_stmt (PARSER_CONTEXT * parser, PT_NODE * trigger_stmt, DB_OBJECT * object1, DB_OBJECT * object2, DB_VALUE * result)
int pt_name_occurs_in_from_list (PARSER_CONTEXT * parser, const char * name, PT_NODE * from_list)
PT_NODE * pt_spec_to_oid_attr (PARSER_CONTEXT * parser, PT_NODE * spec, VIEW_HANDLING how)

Public Static Functions

Type Name
char * change_trigger_action_query (PARSER_CONTEXT * parser, PT_NODE * statement, int with_evaluate)
int pt_add_lock_class (PARSER_CONTEXT * parser, PT_CLASS_LOCKS * lcks, PT_NODE * spec, LC_PREFETCH_FLAGS flags)
PT_NODE * pt_add_oid_to_select_list (PARSER_CONTEXT * parser, PT_NODE * statement, VIEW_HANDLING how)
PT_NODE * pt_count_entities (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_find_lck_class_from_partition (PARSER_CONTEXT * parser, PT_NODE * node, PT_CLASS_LOCKS * locks)
PT_NODE * pt_find_lck_classes (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
int pt_in_lck_array (PT_CLASS_LOCKS * lcks, const char * str, LC_PREFETCH_FLAGS flags)
PT_NODE * pt_set_class_chn (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_set_trigger_obj_post (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
PT_NODE * pt_set_trigger_obj_pre (PARSER_CONTEXT * parser, PT_NODE * node, void * arg, int * continue_walk)
void remove_appended_trigger_info (char * msg, int with_evaluate)

Public Types Documentation

typedef PT_CLASS_LOCKS

typedef struct pt_class_locks PT_CLASS_LOCKS;

typedef TRIGGER_EXEC_INFO

typedef struct trigger_exec_info TRIGGER_EXEC_INFO;

enum pt_order_by_adjustment

enum pt_order_by_adjustment {
    PT_ADD_ONE,
    PT_TIMES_TWO
};

Public Functions Documentation

function pt_add_row_classoid_name

PT_NODE * pt_add_row_classoid_name (
    PARSER_CONTEXT * parser,
    PT_NODE * statement,
    int server_op
) 

function pt_add_row_oid

PT_NODE * pt_add_row_oid (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_add_row_oid_name

PT_NODE * pt_add_row_oid_name (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_class_pre_fetch

PT_NODE * pt_class_pre_fetch (
    PARSER_CONTEXT * parser,
    PT_NODE * statement
) 

function pt_compile

PT_NODE * pt_compile (
    PARSER_CONTEXT * parser,
    PT_NODE * volatile statement
) 

function pt_compile_trigger_stmt

PT_NODE * pt_compile_trigger_stmt (
    PARSER_CONTEXT * parser,
    const  char * trigger_stmt,
    DB_OBJECT * class_op,
    const  char * name1,
    const  char * name2,
    char ** new_trigger_stmt,
    int with_evaluate
) 

function pt_exec_trigger_stmt

int pt_exec_trigger_stmt (
    PARSER_CONTEXT * parser,
    PT_NODE * trigger_stmt,
    DB_OBJECT * object1,
    DB_OBJECT * object2,
    DB_VALUE * result
) 

function pt_name_occurs_in_from_list

int pt_name_occurs_in_from_list (
    PARSER_CONTEXT * parser,
    const  char * name,
    PT_NODE * from_list
) 

function pt_spec_to_oid_attr

PT_NODE * pt_spec_to_oid_attr (
    PARSER_CONTEXT * parser,
    PT_NODE * spec,
    VIEW_HANDLING how
) 

Public Static Functions Documentation

function change_trigger_action_query

static char * change_trigger_action_query (
    PARSER_CONTEXT * parser,
    PT_NODE * statement,
    int with_evaluate
) 

function pt_add_lock_class

static int pt_add_lock_class (
    PARSER_CONTEXT * parser,
    PT_CLASS_LOCKS * lcks,
    PT_NODE * spec,
    LC_PREFETCH_FLAGS flags
) 

function pt_add_oid_to_select_list

static PT_NODE * pt_add_oid_to_select_list (
    PARSER_CONTEXT * parser,
    PT_NODE * statement,
    VIEW_HANDLING how
) 

function pt_count_entities

static PT_NODE * pt_count_entities (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_find_lck_class_from_partition

static PT_NODE * pt_find_lck_class_from_partition (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    PT_CLASS_LOCKS * locks
) 

function pt_find_lck_classes

static PT_NODE * pt_find_lck_classes (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_in_lck_array

static int pt_in_lck_array (
    PT_CLASS_LOCKS * lcks,
    const  char * str,
    LC_PREFETCH_FLAGS flags
) 

function pt_set_class_chn

static PT_NODE * pt_set_class_chn (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_set_trigger_obj_post

static PT_NODE * pt_set_trigger_obj_post (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function pt_set_trigger_obj_pre

static PT_NODE * pt_set_trigger_obj_pre (
    PARSER_CONTEXT * parser,
    PT_NODE * node,
    void * arg,
    int * continue_walk
) 

function remove_appended_trigger_info

static void remove_appended_trigger_info (
    char * msg,
    int with_evaluate
) 


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