/* * Copyright (C) 1995-1997 Christopher D. Granz * * This header may not be removed. * * Refer to the file "License" included in this package for further * information and before using any of the following. */ #ifndef __EMBC_H__ #define __EMBC_H__ #include "emerald.h" /* * Defines */ #ifdef str_free #undef str_free #endif #define str_free( s ) \ if ( (s) != NULL ) \ free_mem( (void **) &(s) ); /* * Structures */ struct code_name_type { char * pKeyword; intt iByteCode; }; /* * Prototypes */ /* * main.c */ int main ( int, char *[] ); /* * memory.c */ void * alloc_mem ( register size_t ); void * realloc_mem ( register void *, register size_t ); void free_mem ( register void ** ); void zero_out ( register void *, register size_t ); char * str_dup ( register char * ); /* * fileio.c */ FILE * open_file ( char *, char * ); void close_file ( FILE * ); char fget_letter ( FILE * ); char * fget_word ( FILE * ); char * fget_string ( FILE * ); /* * error.c */ void warning ( char *, ... ); void error ( char *, ... ); void fatal ( char *, ... ); /* * Globals */ extern int errno; extern char cNullChar; extern const struct code_name_type cnKeywordTable[]; extern char * pCOFilename; extern long lCurrentLine; #endif /* __EMBC_H__ */ /* * End of embc.h */