⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 extern.h

📁 PostgreSQL 8.1.4的源码 适用于Linux下的开源数据库系统
💻 H
字号:
#ifndef _ECPG_PREPROC_EXTERN_H#define _ECPG_PREPROC_EXTERN_H#include "type.h"#include <errno.h>/* defines */#define STRUCT_DEPTH 128#define EMPTY make_str("")/* variables */extern int	braces_open,			autocommit,			auto_create_c,			system_includes,			force_indicator,			ret_value,			struct_level,			ecpg_informix_var;extern char *descriptor_index;extern char *descriptor_name;extern char *connection;extern char *input_filename;extern char *yytext,		   *token_start;#ifdef YYDEBUGextern int	yydebug;#endifextern int	yylineno,			yyleng;extern FILE *yyin,		   *yyout;extern struct _include_path *include_paths;extern struct cursor *cur;extern struct typedefs *types;extern struct _defines *defines;extern struct ECPGtype ecpg_no_indicator;extern struct variable no_indicator;extern struct arguments *argsinsert;extern struct arguments *argsresult;extern struct when when_error,			when_nf,			when_warn;extern struct ECPGstruct_member *struct_member_list[STRUCT_DEPTH];/* functions */extern const char *get_dtype(enum ECPGdtype);extern void lex_init(void);extern char *make_str(const char *);extern void output_line_number(void);extern void output_statement(char *, int, char *);extern void output_simple_statement(char *);extern char *hashline_number(void);extern int	yyparse(void);extern int	yylex(void);extern void yyerror(char *);extern void *mm_alloc(size_t), *mm_realloc(void *, size_t);extern char *mm_strdup(const char *);extern void mmerror(int, enum errortype, char *,...);extern ScanKeyword *ScanECPGKeywordLookup(char *);extern ScanKeyword *ScanCKeywordLookup(char *);extern void output_get_descr_header(char *);extern void output_get_descr(char *, char *);extern void output_set_descr_header(char *);extern void output_set_descr(char *, char *);extern void push_assignment(char *, enum ECPGdtype);extern struct variable *find_variable(char *);extern void whenever_action(int);extern void add_descriptor(char *, char *);extern void drop_descriptor(char *, char *);extern struct descriptor *lookup_descriptor(char *, char *);extern struct variable *descriptor_variable(const char *name, int input);extern void add_variable_to_head(struct arguments **, struct variable *, struct variable *);extern void add_variable_to_tail(struct arguments **, struct variable *, struct variable *);extern void dump_variables(struct arguments *, int);extern struct typedefs *get_typedef(char *);extern void adjust_array(enum ECPGttype, char **, char **, char *, char *, int, bool);extern void reset_variables(void);extern void check_indicator(struct ECPGtype *);extern void remove_typedefs(int);extern void remove_variables(int);extern struct variable *new_variable(const char *, struct ECPGtype *, int);extern ScanKeyword *ScanKeywordLookup(char *text);/* return codes */#define ILLEGAL_OPTION		1#define NO_INCLUDE_FILE		2#define PARSE_ERROR			3#define INDICATOR_NOT_ARRAY 4#define OUT_OF_MEMORY		5#define INDICATOR_NOT_STRUCT	6#define INDICATOR_NOT_SIMPLE	7enum COMPAT_MODE{	ECPG_COMPAT_PGSQL = 0, ECPG_COMPAT_INFORMIX, ECPG_COMPAT_INFORMIX_SE};extern enum COMPAT_MODE compat;#define INFORMIX_MODE	(compat == ECPG_COMPAT_INFORMIX || compat == ECPG_COMPAT_INFORMIX_SE)#endif   /* _ECPG_PREPROC_EXTERN_H */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -