PostgreSQL Source Code
git master
|
Go to the source code of this file.
Functions | |
struct variable * | new_variable (const char *name, struct ECPGtype *type, int brace_level) |
static struct variable * | find_struct_member (char *name, char *str, struct ECPGstruct_member *members, int brace_level) |
static struct variable * | find_struct (char *name, char *next, char *end) |
static struct variable * | find_simple (char *name) |
struct variable * | find_variable (char *name) |
void | remove_typedefs (int brace_level) |
void | remove_variables (int brace_level) |
void | reset_variables (void) |
void | add_variable_to_head (struct arguments **list, struct variable *var, struct variable *ind) |
void | add_variable_to_tail (struct arguments **list, struct variable *var, struct variable *ind) |
void | remove_variable_from_list (struct arguments **list, struct variable *var) |
void | dump_variables (struct arguments *list, int mode) |
void | check_indicator (struct ECPGtype *var) |
struct typedefs * | get_typedef (const char *name, bool noerror) |
void | adjust_array (enum ECPGttype type_enum, char **dimension, char **length, char *type_dimension, char *type_index, int pointer_len, bool type_definition) |
Variables | |
static struct variable * | allvariables = NULL |
struct arguments * | argsinsert = NULL |
struct arguments * | argsresult = NULL |
void add_variable_to_head | ( | struct arguments ** | list, |
struct variable * | var, | ||
struct variable * | ind | ||
) |
Definition at line 378 of file variable.c.
References arguments::indicator, sort-test::list, mm_alloc(), arguments::next, and arguments::variable.
void add_variable_to_tail | ( | struct arguments ** | list, |
struct variable * | var, | ||
struct variable * | ind | ||
) |
Definition at line 390 of file variable.c.
References sort-test::list, mm_alloc(), and arguments::next.
void adjust_array | ( | enum ECPGttype | type_enum, |
char ** | dimension, | ||
char ** | length, | ||
char * | type_dimension, | ||
char * | type_index, | ||
int | pointer_len, | ||
bool | type_definition | ||
) |
Definition at line 516 of file variable.c.
References ECPGt_bytea, ECPGt_char, ECPGt_string, ECPGt_struct, ECPGt_union, ECPGt_unsigned_char, ECPGt_varchar, mm_strdup(), mmfatal(), ngettext, and PARSE_ERROR.
void check_indicator | ( | struct ECPGtype * | var | ) |
Definition at line 466 of file variable.c.
References check_indicator(), ECPGt_array, ECPGt_int, ECPGt_long, ECPGt_long_long, ECPGt_short, ECPGt_struct, ECPGt_union, ECPGt_unsigned_int, ECPGt_unsigned_long, ECPGt_unsigned_long_long, ECPGt_unsigned_short, ECPGtype::element, ET_ERROR, ECPGtype::members, mmerror(), ECPGstruct_member::next, PARSE_ERROR, ECPGstruct_member::type, ECPGtype::type, and ECPGtype::u.
Referenced by check_indicator().
void dump_variables | ( | struct arguments * | list, |
int | mode | ||
) |
Definition at line 437 of file variable.c.
References base_yyout, dump_variables(), ECPGdump_a_type(), free, sort-test::list, mm_strdup(), and mode.
Referenced by dump_variables(), and output_statement().
|
static |
Definition at line 177 of file variable.c.
References allvariables, name, variable::name, and variable::next.
Referenced by find_variable().
|
static |
Definition at line 126 of file variable.c.
References variable::brace_level, ECPGt_array, ECPGt_struct, ECPGt_union, find_struct_member(), find_variable(), mmfatal(), name, next, PARSE_ERROR, and variable::type.
Referenced by find_variable().
|
static |
Definition at line 25 of file variable.c.
References variable::brace_level, ECPGtype::counter, ECPGmake_array_type(), ECPGmake_simple_type(), ECPGmake_struct_type(), ECPGt_array, ECPGt_struct, ECPGt_union, ECPGtype::element, ECPGtype::members, mmfatal(), name, ECPGstruct_member::name, new_variable(), next, ECPGstruct_member::next, PARSE_ERROR, ECPGtype::size, str, ECPGtype::struct_sizeof, ECPGstruct_member::type, ECPGtype::type, ECPGtype::type_name, and ECPGtype::u.
Referenced by find_struct().
struct variable* find_variable | ( | char * | name | ) |
Definition at line 193 of file variable.c.
References variable::brace_level, ECPGmake_array_type(), ECPGmake_simple_type(), ECPGmake_struct_type(), ECPGt_array, ECPGt_struct, ECPGt_union, find_simple(), find_struct(), mmfatal(), name, new_variable(), next, PARSE_ERROR, and variable::type.
Referenced by ECPGdump_a_type(), ECPGnumeric_lvalue(), find_struct(), output_get_descr(), and output_set_descr().
Definition at line 499 of file variable.c.
References mmfatal(), name, next, PARSE_ERROR, and types.
Definition at line 10 of file variable.c.
References allvariables, variable::brace_level, mm_alloc(), mm_strdup(), name, variable::name, variable::next, type, and variable::type.
Referenced by find_struct_member(), and find_variable().
void remove_typedefs | ( | int | brace_level | ) |
Definition at line 260 of file variable.c.
References typedefs::brace_level, ECPGt_struct, ECPGt_union, free, typedefs::name, typedefs::next, typedefs::struct_member_list, typedefs::type, this_type::type_enum, and types.
Definition at line 408 of file variable.c.
References sort-test::list, arguments::next, and arguments::variable.
void remove_variables | ( | int | brace_level | ) |
Definition at line 294 of file variable.c.
References allvariables, cursor::argsinsert, cursor::argsresult, variable::brace_level, cur, ECPGfree_type(), free, variable::name, variable::next, cursor::next, arguments::next, variable::type, and arguments::variable.
void reset_variables | ( | void | ) |
Definition at line 368 of file variable.c.
References argsinsert, and argsresult.
Referenced by output_statement().
|
static |
Definition at line 7 of file variable.c.
Referenced by find_simple(), new_variable(), and remove_variables().
struct arguments* argsinsert = NULL |
Definition at line 364 of file variable.c.
Referenced by output_statement(), and reset_variables().
struct arguments* argsresult = NULL |
Definition at line 365 of file variable.c.
Referenced by output_statement(), and reset_variables().