#ifndef __PARSER_H__
#define __PARSER_H__
-char *token;
-int tokenlen;
+extern char *token;
+extern int tokenlen;
int tsearch2_yylex(void);
-void start_parse_str(char *, int);
-void end_parse(void);
+void tsearch2_start_parse_str(char *, int);
+void tsearch2_end_parse(void);
#endif
#define fprintf(file, fmt, msg) ts_error(ERROR, fmt, msg)
char *token = NULL; /* pointer to token */
+int tokenlen;
char *s = NULL; /* to return WHOLE hyphenated-word */
YY_BUFFER_STATE buf = NULL; /* buffer to parse; it need for parse from string */
%%
/* clearing after parsing from string */
-void end_parse() {
+void tsearch2_end_parse() {
if (s) { free(s); s=NULL; }
tsearch2_yy_delete_buffer( buf );
buf = NULL;
}
/* start parse from string */
-void start_parse_str(char* str, int limit) {
+void tsearch2_start_parse_str(char* str, int limit) {
if (buf) end_parse();
buf = tsearch2_yy_scan_bytes( str, limit );
tsearch2_yy_switch_to_buffer( buf );
Datum
prsd_start(PG_FUNCTION_ARGS)
{
- start_parse_str((char *) PG_GETARG_POINTER(0), PG_GETARG_INT32(1));
+ tsearch2_start_parse_str((char *) PG_GETARG_POINTER(0), PG_GETARG_INT32(1));
PG_RETURN_POINTER(NULL);
}
prsd_end(PG_FUNCTION_ARGS)
{
/* ParserState *p=(ParserState*)PG_GETARG_POINTER(0); */
- end_parse();
+ tsearch2_end_parse();
PG_RETURN_VOID();
}