* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/parser/parser.c,v 1.82 2009/11/09 18:38:48 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/parser/parser.c,v 1.83 2009/11/12 01:13:12 tgl Exp $
*
*-------------------------------------------------------------------------
*/
}
-/*
- * pg_parse_string_token - get the value represented by a string literal
- *
- * Given the textual form of a SQL string literal, produce the represented
- * value as a palloc'd string. It is caller's responsibility that the
- * passed string does represent one single string literal.
- *
- * We export this function to avoid having plpgsql depend on internal details
- * of the core grammar (such as the token code assigned to SCONST).
- */
-char *
-pg_parse_string_token(const char *token)
-{
- core_yyscan_t yyscanner;
- base_yy_extra_type yyextra;
- int ctoken;
- core_YYSTYPE yylval;
- YYLTYPE yylloc;
-
- yyscanner = scanner_init(token, &yyextra.core_yy_extra,
- ScanKeywords, NumScanKeywords);
-
- ctoken = core_yylex(&yylval, &yylloc, yyscanner);
-
- if (ctoken != SCONST) /* caller error */
- elog(ERROR, "expected string constant, got token code %d", ctoken);
-
- scanner_finish(yyscanner);
-
- return yylval.str;
-}
-
-
/*
* Intermediate filter between parser and core lexer (core_yylex in scan.l).
*
* Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/parser/parser.h,v 1.27 2009/07/13 00:42:17 tgl Exp $
+ * $PostgreSQL: pgsql/src/include/parser/parser.h,v 1.28 2009/11/12 01:13:12 tgl Exp $
*
*-------------------------------------------------------------------------
*/
extern PGDLLIMPORT bool standard_conforming_strings;
-/* Primary entry points for the raw parsing functions */
+/* Primary entry point for the raw parsing functions */
extern List *raw_parser(const char *str);
-extern char *pg_parse_string_token(const char *token);
-
/* Utility functions exported by gram.y (perhaps these should be elsewhere) */
extern List *SystemFuncName(char *name);
extern TypeName *SystemTypeName(char *name);