home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fresh Fish 5
/
FreshFish_July-August1994.bin
/
bbs
/
gnu
/
flex-2.4.6-src.lha
/
src
/
amiga
/
flex-2.4.6
/
skel.c
< prev
next >
Wrap
C/C++ Source or Header
|
1994-01-04
|
33KB
|
1,224 lines
/* File created from flex.skel via mkskel.sh */
#include "flexdef.h"
char *skel[] = {
"/* A lexical scanner generated by flex */",
"",
"/* Scanner skeleton version:",
" * $Header: flex.skl,v 1.2 94/01/04 14:33:15 vern Exp $",
" */",
"",
"#define FLEX_SCANNER",
"",
"%-",
"#include <stdio.h>",
"%*",
"",
"",
"/* cfront 1.2 defines \"c_plusplus\" instead of \"__cplusplus\" */",
"#ifdef c_plusplus",
"#ifndef __cplusplus",
"#define __cplusplus",
"#endif",
"#endif",
"",
"",
"#ifdef __cplusplus",
"",
"#include <stdlib.h>",
"%+",
"class istream;",
"%*",
"#include <unistd.h>",
"",
"/* Use prototypes in function declarations. */",
"#define YY_USE_PROTOS",
"",
"/* The \"const\" storage-class-modifier is valid. */",
"#define YY_USE_CONST",
"",
"#else /* ! __cplusplus */",
"",
"#ifdef __STDC__",
"",
"#define YY_USE_PROTOS",
"#define YY_USE_CONST",
"",
"#endif /* __STDC__ */",
"#endif /* ! __cplusplus */",
"",
"",
"#ifdef __TURBOC__",
"#define YY_USE_CONST",
"#endif",
"",
"",
"#ifndef YY_USE_CONST",
"#ifndef const",
"#define const",
"#endif",
"#endif",
"",
"",
"#ifdef YY_USE_PROTOS",
"#define YY_PROTO(proto) proto",
"#else",
"#define YY_PROTO(proto) ()",
"#endif",
"",
"/* Returned upon end-of-file. */",
"#define YY_NULL 0",
"",
"/* Promotes a possibly negative, possibly signed char to an unsigned",
" * integer for use as an array index. If the signed char is negative,",
" * we want to instead treat it as an 8-bit unsigned char, hence the",
" * double cast.",
" */",
"#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)",
"",
"/* Enter a start condition. This macro really ought to take a parameter,",
" * but we do it the disgusting crufty way forced on us by the ()-less",
" * definition of BEGIN.",
" */",
"#define BEGIN yy_start = 1 + 2 *",
"",
"/* Translate the current start state into a value that can be later handed",
" * to BEGIN to return to the state.",
" */",
"#define YY_START ((yy_start - 1) / 2)",
"",
"/* Action number for EOF rule of a given start state. */",
"#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)",
"",
"/* Special action meaning \"start processing a new file\". Now included",
" * only for backward compatibility with previous versions of flex.",
" */",
"#define YY_NEW_FILE yyrestart( yyin )",
"",
"#define YY_END_OF_BUFFER_CHAR 0",
"",
"/* Size of default input buffer. */",
"#define YY_BUF_SIZE 16384",
"",
"typedef struct yy_buffer_state *YY_BUFFER_STATE;",
"",
"extern int yyleng;",
"%-",
"extern FILE *yyin, *yyout;",
"%*",
"",
"#ifdef __cplusplus",
"extern \"C\" {",
"#endif",
" extern int yywrap YY_PROTO(( void ));",
"#ifdef __cplusplus",
" }",
"#endif",
"",
"#define EOB_ACT_CONTINUE_SCAN 0",
"#define EOB_ACT_END_OF_FILE 1",
"#define EOB_ACT_LAST_MATCH 2",
"",
"/* The funky do-while in the following #define is used to turn the definition",
" * int a single C statement (which needs a semi-colon terminator). This",
" * avoids problems with code like:",
" *",
" * if ( condition_holds )",
" * yyless( 5 );",
" * else",
" * do_something_else();",
" *",
" * Prior to using the do-while the compiler would get upset at the",
" * \"else\" because it interpreted the \"if\" statement as being all",
" * done when it reached the ';' after the yyless() call.",
" */",
"",
"/* Return all but the first 'n' matched characters back to the input stream. */",
"",
"#define yyless(n) \\",
" do \\",
" { \\",
" /* Undo effects of setting up yytext. */ \\",
" *yy_cp = yy_hold_char; \\",
" yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \\",
" YY_DO_BEFORE_ACTION; /* set up yytext again */ \\",
" } \\",
" while ( 0 )",
"",
"#define unput(c) yyunput( c, yytext_ptr )",
"",
"",
"struct yy_buffer_state",
" {",
"%-",
" FILE *yy_input_file;",
"%+",
" istream* yy_input_file;",
"%*",
"",
" char *yy_ch_buf; /* input buffer */",
" char *yy_buf_pos; /* current position in input buffer */",
"",
" /* Size of input buffer in bytes, not including room for EOB",
" * characters.",
" */",
" int yy_buf_size;",
"",
" /* Number of characters read into yy_ch_buf, not including EOB",
" * characters.",
" */",
" int yy_n_chars;",
"",
" /* Whether this is an \"interactive\" input source; if so, and",
" * if we're using stdio for input, then we want to use getc()",
" * instead of fread(), to make sure we stop fetching input after",
" * each newline.",
" */",
" int yy_is_interactive;",
"",
" /* Whether to try to fill the input buffer when we reach the",
" * end of it.",
" */",
" int yy_fill_buffer;",
"",
" /* Whether we've seen an EOF on this buffer. */",
" int yy_eof_status;",
"#define EOF_NOT_SEEN 0",
" /* \"Pending\" happens when the EOF has been seen but there's still",
" * some text to process. Note that when we actually see the EOF,",
" * we switch the status back to \"not seen\" (via yyrestart()), so",
" * that the user can continue scanning by just pointing yyin at",
" * a new input file.",
" */",
"#define EOF_PENDING 1",
" };",
"",
"%- Standard (non-C++) definition",
"static YY_BUFFER_STATE yy_current_buffer = 0;",
"%*",
"",
"/* We provide macros for accessing buffer states in case in the",
" * future we want to put the buffer states in a more general",
" * \"scanner state\".",
" */",
"#define YY_CURRENT_BUFFER yy_current_buffer",
"",
"",
"%- Standard (non-C++) definition",
"/* yy_hold_char holds the character lost when yytext is formed. */",
"static char yy_hold_char;",
"",
"static int yy_n_chars; /* number of characters read into yy_ch_buf */",
"",
"",
"int yyleng;",
"",
"/* Points to current character in buffer. */",
"static char *yy_c_buf_p = (char *) 0;",
"static int yy_init = 1; /* whether we need to initialize */",
"static int yy_start = 0; /* start state number */",
"",
"/* Flag which is used to allow yywrap()'s to do buffer switches",
" * instead of setting up a fresh yyin. A bit of a hack ...",
" */",
"static int yy_did_buffer_switch_on_eof;",
"",
"static void yyunput YY_PROTO(( int c, char *buf_ptr ));",
"void yyrestart YY_PROTO(( FILE *input_file ));",
"void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));",
"void yy_load_buffer_state YY_PROTO(( void ));",
"YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));",
"void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));",
"void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));",
"",
"static int yy_start_stack_ptr = 0;",
"static int yy_start_stack_depth = 0;",
"static int *yy_start_stack = 0;",
"static void yy_push_state YY_PROTO(( int new_state ));",
"static void yy_pop_state YY_PROTO(( void ));",
"static int yy_top_state YY_PROTO(( void ));",
"%*",
"",
"#ifndef yytext_ptr",
"static void yy_flex_strcpy YY_PROTO(( char *, const char * ));",
"#endif",
"",
"static void *yy_flex_alloc YY_PROTO(( unsigned int ));",
"static void *yy_flex_realloc YY_PROTO(( void *ptr, unsigned int ));",
"static void yy_flex_free YY_PROTO(( void * ));",
"",
"#define yy_new_buffer yy_create_buffer",
"",
"%% yytext/yyin/yyout/yy_state_type/yylineno etc. def's & init go here",
"",
"%- Standard (non-C++) definition",
"#ifdef __cplusplus",
"static int yyinput YY_PROTO(( void ));",
"#else",
"static int input YY_PROTO(( void ));",
"#endif",
"%*",
"",
"%- Standard (non-C++) definition",
"static yy_state_type yy_get_previous_state YY_PROTO(( void ));",
"static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));",
"static int yy_get_next_buffer YY_PROTO(( void ));",
"static void yy_fatal_error YY_PROTO(( const char msg[] ));",
"%*",
"",
"/* Done after the current pattern has been matched and before the",
" * corresponding action - sets up yytext.",
" */",
"#define YY_DO_BEFORE_ACTION \\",
" yytext_ptr = yy_bp; \\",
"%%