1999-04-08 02:10:10 +08:00
|
|
|
/*
|
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
| Zend Engine |
|
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
| Copyright (c) 1998, 1999 Andi Gutmans, Zeev Suraski |
|
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
| This source file is subject to the Zend license, that is bundled |
|
|
|
|
| with this package in the file LICENSE. If you did not receive a |
|
|
|
|
| copy of the Zend license, please mail us at zend@zend.com so we can |
|
|
|
|
| send you a copy immediately. |
|
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
| Authors: Andi Gutmans <andi@zend.com> |
|
|
|
|
| Zeev Suraski <zeev@zend.com> |
|
|
|
|
+----------------------------------------------------------------------+
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef _LANGUAGE_SCANNER_H
|
|
|
|
#define _LANGUAGE_SCANNER_H
|
|
|
|
|
1999-04-23 11:32:33 +08:00
|
|
|
#ifdef ZTS
|
|
|
|
class ZendFlexLexer : public yyFlexLexer
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
int lex_scan(zval *zendlval CLS_DC);
|
1999-04-23 18:21:00 +08:00
|
|
|
void BeginState(int state);
|
1999-04-23 11:32:33 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif /* ZTS */
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef ZTS
|
1999-04-08 02:10:10 +08:00
|
|
|
typedef struct {
|
|
|
|
YY_BUFFER_STATE buffer_state;
|
|
|
|
int state;
|
|
|
|
uint return_offset;
|
|
|
|
uint lineno;
|
|
|
|
FILE *in;
|
|
|
|
char *filename;
|
|
|
|
} zend_lex_state;
|
1999-04-23 11:32:33 +08:00
|
|
|
#else
|
|
|
|
typedef struct {
|
|
|
|
ZendFlexLexer *ZFL;
|
|
|
|
istream *input_file;
|
|
|
|
} zend_lex_state;
|
|
|
|
#endif
|
1999-04-08 02:10:10 +08:00
|
|
|
|
|
|
|
#endif
|