/*
* 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
*/