CUBRID Engine  latest
esql_cursor.c File Reference
#include "config.h"
#include <stdlib.h>
#include "esql_misc.h"
#include "memory_alloc.h"
Include dependency graph for esql_cursor.c:

Go to the source code of this file.

Enumerations

enum  { MSG_REDEFINITION = 1, MSG_STMT_TITLE = 2, MSG_TABLE_TITLE = 3 }
 

Functions

static void pp_print_cursor (void *cp, void *fp)
 
CURSORpp_new_cursor (char *name, char *static_stmt, int length, STMT *dynamic_stmt, HOST_LOD *host_refs)
 
void pp_free_cursor (CURSOR *cursor)
 
CURSORpp_lookup_cursor (char *name)
 
void pp_cursor_init (void)
 
void pp_cursor_finish (void)
 
void pp_print_cursors (FILE *fp)
 
void pp_remove_cursors_from_table (CURSOR *chain)
 
void pp_discard_cursor_chain (CURSOR *chain)
 
STMTpp_new_stmt (char *name)
 
void pp_free_stmt (STMT *stmt)
 

Variables

static HASH_TABpp_cursor_table
 
static HASH_TABpp_stmt_table
 
static int next_cid = 0
 

Enumeration Type Documentation

anonymous enum
Enumerator
MSG_REDEFINITION 
MSG_STMT_TITLE 
MSG_TABLE_TITLE 

Definition at line 32 of file esql_cursor.c.

Function Documentation

void pp_cursor_finish ( void  )

Definition at line 143 of file esql_cursor.c.

References hash_tab_s::free_table, NULL, pp_free_cursor(), and pp_free_stmt().

Referenced by pp_finish().

Here is the caller graph for this function:

void pp_cursor_init ( void  )

Definition at line 132 of file esql_cursor.c.

References es_ht_make_table(), pp_generic_case_cmp(), and pp_generic_case_hash().

Referenced by pp_startup().

Here is the caller graph for this function:

void pp_discard_cursor_chain ( CURSOR chain)

Definition at line 239 of file esql_cursor.c.

References cursor::next, NULL, and pp_free_cursor().

Referenced by pp_pop_name_scope().

Here is the caller graph for this function:

void pp_free_cursor ( CURSOR cursor)

Definition at line 90 of file esql_cursor.c.

References es_ht_free_symbol(), free_and_init, cursor::host_refs, cursor::name, pp_free_host_lod(), and cursor::static_stmt.

Referenced by pp_cursor_finish(), and pp_discard_cursor_chain().

Here is the caller graph for this function:

void pp_free_stmt ( STMT stmt)

Definition at line 292 of file esql_cursor.c.

References es_ht_free_symbol(), free_and_init, stmt::name, and NULL.

Referenced by pp_cursor_finish().

Here is the caller graph for this function:

CURSOR* pp_lookup_cursor ( char *  name)

Definition at line 118 of file esql_cursor.c.

References hash_tab_s::find_symbol, and cursor::name.

Referenced by pp_new_cursor().

Here is the caller graph for this function:

STMT* pp_new_stmt ( char *  name)
static void pp_print_cursor ( void *  cp,
void *  fp 
)
static
void pp_print_cursors ( FILE *  fp)

Definition at line 199 of file esql_cursor.c.

References EX_CURSOR_SET, hash_tab_s::get_symbol_count, MSG_TABLE_TITLE, pp_get_msg(), pp_print_cursor(), and hash_tab_s::print_table.

Referenced by pp_pop_name_scope().

Here is the caller graph for this function:

void pp_remove_cursors_from_table ( CURSOR chain)

Definition at line 220 of file esql_cursor.c.

References cursor::next, NULL, and hash_tab_s::remove_symbol.

Referenced by pp_pop_name_scope().

Here is the caller graph for this function:

Variable Documentation

int next_cid = 0
static

Definition at line 41 of file esql_cursor.c.

Referenced by pp_new_cursor().

HASH_TAB* pp_cursor_table
static

Definition at line 39 of file esql_cursor.c.

HASH_TAB* pp_stmt_table
static

Definition at line 40 of file esql_cursor.c.