#ifndef _SCAN_H_ #define _SCAN_H_ #include "Parse.hpp" /* * Copyright 1993, 1995 Christopher Seiwald. * * This file is part of Jam - see jam.c for Copyright information. */ /* * scan.h - the jam yacc scanner * * External functions: * * yyerror( char *s ) - print a parsing error message * yyfparse( char *s ) - scan include file s * yylex() - parse the next token, returning its type * yymode() - adjust lexicon of scanner * yyparse() - declaration for yacc parser * yyanyerrors() - indicate if any parsing errors occured * * The yymode() function is for the parser to adjust the lexicon of the * scanner. Aside from normal keyword scanning, there is a mode to * handle action strings (look only for the closing }) and a mode to * ignore most keywords when looking for a punctuation keyword. This * allows non-punctuation keywords to be used in lists without quoting. */ /* * YYSTYPE - value of a lexical token */ # define YYSTYPE YYSYMBOL typedef struct _YYSTYPE { int type; char *string; Jam::Parse *parse; Jam::List *list; int number; } YYSTYPE; extern YYSTYPE yylval; void yymode( int n ); void yyerror( char *s ); int yyanyerrors(); void yyfparse( char *s ); int yyline(); int yylex(); int yyparse(); # define SCAN_NORMAL 0 /* normal parsing */ # define SCAN_STRING 1 /* look only for matching } */ # define SCAN_PUNCT 2 /* only punctuation keywords */ #endif
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#3 | 1162 | bob_summerwill | Converted LIST into a List class, with all static methods. | ||
#2 | 1156 | bob_summerwill | Converted Parse into a class. | ||
#1 | 1132 | bob_summerwill | All of the non-generated, non-platform-specific files are now mixed-case C++ source files. | ||
//guest/bob_summerwill/jam/src/scan.h | |||||
#3 | 1131 | bob_summerwill | More .C to .CPP conversions. | ||
#2 | 1126 | bob_summerwill | #include dependencies between headers are now modelled explicitly, with #includes as required in header files, rather than it being a client-code responsibility. | ||
#1 | 1106 | bob_summerwill | Integrated Jam from "public" to "guest/bob_summerwill". | ||
//guest/perforce_software/jam/src/scan.h | |||||
#2 | 486 | Perforce staff |
Jam 2.3. See RELNOTES for a list of changes from 2.2.x. Just about every source file was touched when jam got ANSI-fied. |
||
#1 | 2 | laura | Add Jam/MR 2.2 source |