home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftptest.leeds.ac.uk
/
2015.02.ftptest.leeds.ac.uk.tar
/
ftptest.leeds.ac.uk
/
bionet
/
CAE-GROUP
/
SCL-WIN3x
/
FED_PLUS.EXE
/
LEXACT.H
< prev
next >
Wrap
C/C++ Source or Header
|
1994-07-25
|
3KB
|
123 lines
#ifndef LEXACT_H
#define LEXACT_H
/* $Id: lexact.h,v 1.3 1994/05/11 19:51:05 libes Exp $ */
/*
* This software was developed by U.S. Government employees as part of
* their official duties and is not subject to copyright.
*
* $Log: lexact.h,v $
* Revision 1.3 1994/05/11 19:51:05 libes
* numerous fixes
*
* Revision 1.2 1993/10/15 18:48:24 libes
* CADDETC certified
*
* Revision 1.5 1992/08/27 23:41:58 libes
* modified decl of SCANinitialize
*
* Revision 1.4 1992/08/18 17:12:41 libes
* rm'd extraneous error messages
*
* Revision 1.3 1992/06/08 18:06:24 libes
* prettied up interface to print_objects_when_running
*/
/*************/
/* constants */
/*************/
/*****************/
/* packages used */
/*****************/
#include <ctype.h>
#include "basic.h"
#include "error.h"
/************/
/* typedefs */
/************/
#define SCAN_BUFFER_SIZE 1024
#define SCAN_NESTING_DEPTH 6
typedef struct Scan_Buffer {
char text[SCAN_BUFFER_SIZE + 1];
char* savedPos;
FILE* file;
char *filename;
Boolean readEof;
int lineno;
} Scan_Buffer;
/********************/
/* global variables */
/********************/
#ifdef LEXACT_C
# define GLOBAL
# define INITIALLY(value) = value
#else
# define GLOBAL extern
# define INITIALLY(value)
#endif /* LEXACT_C */
GLOBAL Scan_Buffer SCAN_buffers[SCAN_NESTING_DEPTH];
GLOBAL int SCAN_current_buffer INITIALLY(0);
GLOBAL char* SCANcurrent;
GLOBAL Error ERROR_include_file INITIALLY(ERROR_none);
GLOBAL Error ERROR_unmatched_close_comment INITIALLY(ERROR_none);
GLOBAL Error ERROR_unmatched_open_comment INITIALLY(ERROR_none);
GLOBAL Error ERROR_unterminated_string INITIALLY(ERROR_none);
GLOBAL Error ERROR_encoded_string_bad_digit INITIALLY(ERROR_none);
GLOBAL Error ERROR_encoded_string_bad_count INITIALLY(ERROR_none);
GLOBAL Error ERROR_bad_identifier INITIALLY(ERROR_none);
GLOBAL Error ERROR_unexpected_character INITIALLY(ERROR_none);
GLOBAL Error ERROR_nonascii_char;
#undef GLOBAL
#undef INITIALLY
/******************************/
/* macro function definitions */
/******************************/
#define SCANbuffer SCAN_buffers[SCAN_current_buffer]
#define SCANtext_ready (*SCANcurrent != '\0')
/***********************/
/* function prototypes */
/***********************/
extern int exp_yylex PROTO((void)); /* the scanner */
extern void SCANinitialize PROTO((void));
extern int SCANprocess_real_literal PROTO((void));
extern int SCANprocess_integer_literal PROTO((void));
/*extern int SCANprocess_keyword_or_identifier PROTO((void));*/
extern int SCANprocess_identifier_or_keyword PROTO((void));
extern int SCANprocess_string PROTO((void));
extern int SCANprocess_binary_literal PROTO((void));
extern Boolean SCANread PROTO((void));
extern void SCANdefine_macro PROTO((char *, char *));
extern void SCANinclude_file PROTO((char *));
void SCANlowerize PROTO((char *));
void SCANupperize PROTO((char *));
extern char * SCANstrdup PROTO((char *));
int
SCANprocess_encoded_string(void);
/*******************************/
/* inline function definitions */
/*******************************/
int
SCANnextchar(char* buffer);
#endif /* LEX_ACTIONS_H */