Removed unused tokens and other cleanup of parser/scanner
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@795 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
c3b4e75c90
commit
f36154139f
2 changed files with 98 additions and 117 deletions
|
|
@ -481,19 +481,17 @@ static void dump_nested(char *parent) {
|
||||||
%token <id> NUM_INT NUM_FLOAT CHARCONST NUM_UNSIGNED NUM_LONG NUM_ULONG
|
%token <id> NUM_INT NUM_FLOAT CHARCONST NUM_UNSIGNED NUM_LONG NUM_ULONG
|
||||||
%token <ivalue> TYPEDEF
|
%token <ivalue> TYPEDEF
|
||||||
%token <type> TYPE_INT TYPE_UNSIGNED TYPE_SHORT TYPE_LONG TYPE_FLOAT TYPE_DOUBLE TYPE_CHAR TYPE_VOID TYPE_SIGNED TYPE_BOOL TYPE_TYPEDEF TYPE_RAW
|
%token <type> TYPE_INT TYPE_UNSIGNED TYPE_SHORT TYPE_LONG TYPE_FLOAT TYPE_DOUBLE TYPE_CHAR TYPE_VOID TYPE_SIGNED TYPE_BOOL TYPE_TYPEDEF TYPE_RAW
|
||||||
%token LPAREN RPAREN COMMA SEMI EXTERN INIT LBRACE RBRACE DEFINE PERIOD
|
%token LPAREN RPAREN COMMA SEMI EXTERN INIT LBRACE RBRACE PERIOD
|
||||||
%token CONST STRUCT UNION EQUAL SIZEOF MODULE LBRACKET RBRACKET
|
%token CONST STRUCT UNION EQUAL SIZEOF MODULE LBRACKET RBRACKET
|
||||||
%token ILLEGAL CONSTANT
|
%token ILLEGAL CONSTANT
|
||||||
%token READONLY READWRITE NAME RENAME ADDMETHODS PRAGMA
|
%token READONLY READWRITE NAME RENAME ADDMETHODS PRAGMA
|
||||||
%token CVALUE COUT
|
%token ENUM
|
||||||
%token ENUM ENDDEF MACRO
|
|
||||||
%token CLASS PRIVATE PUBLIC PROTECTED COLON STATIC VIRTUAL FRIEND OPERATOR THROW TEMPLATE
|
%token CLASS PRIVATE PUBLIC PROTECTED COLON STATIC VIRTUAL FRIEND OPERATOR THROW TEMPLATE
|
||||||
%token NATIVE INLINE
|
%token NATIVE INLINE
|
||||||
%token RAW_MODE ALPHA_MODE TEXT DOC_DISABLE DOC_ENABLE STYLE LOCALSTYLE
|
%token TEXT DOC_DISABLE DOC_ENABLE STYLE LOCALSTYLE
|
||||||
%token TYPEMAP EXCEPT ECHO NEW APPLY CLEAR DOCONLY
|
%token TYPEMAP EXCEPT ECHO NEW APPLY CLEAR DOCONLY
|
||||||
%token <ivalue> TITLE SECTION SUBSECTION SUBSUBSECTION
|
%token <ivalue> TITLE SECTION SUBSECTION SUBSUBSECTION
|
||||||
%token LESSTHAN GREATERTHAN
|
%token LESSTHAN GREATERTHAN
|
||||||
%token <id> USERDIRECTIVE
|
|
||||||
|
|
||||||
/* Objective C tokens */
|
/* Objective C tokens */
|
||||||
|
|
||||||
|
|
@ -1253,11 +1251,6 @@ statement : INCLUDE STRING LBRACE {
|
||||||
| LOCALSTYLE stylelist {
|
| LOCALSTYLE stylelist {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* User defined directive */
|
|
||||||
| user_directive{ }
|
|
||||||
;
|
|
||||||
|
|
||||||
|
|
||||||
/* Dcumentation disable/enable */
|
/* Dcumentation disable/enable */
|
||||||
|
|
||||||
doc_enable : DOC_DISABLE {
|
doc_enable : DOC_DISABLE {
|
||||||
|
|
@ -3275,18 +3268,6 @@ typemap_args : LPAREN parms RPAREN {
|
||||||
}
|
}
|
||||||
;
|
;
|
||||||
|
|
||||||
/* User defined directive */
|
|
||||||
|
|
||||||
user_directive : USERDIRECTIVE LPAREN parms RPAREN uservalue { }
|
|
||||||
| USERDIRECTIVE uservalue { }
|
|
||||||
;
|
|
||||||
|
|
||||||
uservalue : ID SEMI { }
|
|
||||||
| STRING SEMI { }
|
|
||||||
| LBRACE RBRACE { }
|
|
||||||
;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* Parsing of expressions, but only for throw away code */
|
/* Parsing of expressions, but only for throw away code */
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -470,6 +470,8 @@ int yylook(void) {
|
||||||
yylen = 0;
|
yylen = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
else if ((isalpha(c)) || (c == '_') || (c == '$')) state = 7;
|
||||||
|
|
||||||
/* Look for single character symbols */
|
/* Look for single character symbols */
|
||||||
|
|
||||||
else if (c == '(') return (LPAREN);
|
else if (c == '(') return (LPAREN);
|
||||||
|
|
@ -525,7 +527,7 @@ int yylook(void) {
|
||||||
yylen = 0;
|
yylen = 0;
|
||||||
}
|
}
|
||||||
else if (isdigit(c)) state = 8; // A numerical value
|
else if (isdigit(c)) state = 8; // A numerical value
|
||||||
else if ((isalpha(c)) || (c == '_') || (c == '$')) state = 7;
|
|
||||||
else state = 99;
|
else state = 99;
|
||||||
break;
|
break;
|
||||||
case 1: /* Comment block */
|
case 1: /* Comment block */
|
||||||
|
|
@ -935,6 +937,7 @@ extern "C" int yylex(void) {
|
||||||
|
|
||||||
case ID:
|
case ID:
|
||||||
|
|
||||||
|
if (yytext[0] != '%') {
|
||||||
/* Look for keywords now */
|
/* Look for keywords now */
|
||||||
|
|
||||||
if (strcmp(yytext,"int") == 0) {
|
if (strcmp(yytext,"int") == 0) {
|
||||||
|
|
@ -1025,8 +1028,7 @@ extern "C" int yylex(void) {
|
||||||
if (strcmp(yytext,"volatile") == 0) return(yylex());
|
if (strcmp(yytext,"volatile") == 0) return(yylex());
|
||||||
|
|
||||||
// SWIG directives
|
// SWIG directives
|
||||||
|
} else {
|
||||||
if (yytext[0] == '%') {
|
|
||||||
if (strcmp(yytext,"%module") == 0) return(MODULE);
|
if (strcmp(yytext,"%module") == 0) return(MODULE);
|
||||||
if (strcmp(yytext,"%init") == 0) return(INIT);
|
if (strcmp(yytext,"%init") == 0) return(INIT);
|
||||||
if (strcmp(yytext,"%wrapper") == 0) return(WRAPPER);
|
if (strcmp(yytext,"%wrapper") == 0) return(WRAPPER);
|
||||||
|
|
@ -1072,8 +1074,6 @@ extern "C" int yylex(void) {
|
||||||
yylval.ivalue = 1;
|
yylval.ivalue = 1;
|
||||||
return(TYPEDEF);
|
return(TYPEDEF);
|
||||||
}
|
}
|
||||||
if (strcmp(yytext,"%alpha") == 0) return(ALPHA_MODE);
|
|
||||||
if (strcmp(yytext,"%raw") == 0) return(RAW_MODE);
|
|
||||||
if (strcmp(yytext,"%text") == 0) return(TEXT);
|
if (strcmp(yytext,"%text") == 0) return(TEXT);
|
||||||
if (strcmp(yytext,"%native") == 0) return(NATIVE);
|
if (strcmp(yytext,"%native") == 0) return(NATIVE);
|
||||||
if (strcmp(yytext,"%disabledoc") == 0) return(DOC_DISABLE);
|
if (strcmp(yytext,"%disabledoc") == 0) return(DOC_DISABLE);
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue