12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #pragma once
- #include "Enums.h"
- /*
- *$Log: parsehdr.h,v $
- */
- /* Header file for parsehdr.c */
- typedef unsigned long dword; /* 32 bits */
- typedef unsigned char byte; /* 8 bits */
- typedef unsigned short word; /* 16 bits */
- typedef unsigned char boolT; /* 8 bits */
- #define BUFF_SIZE 8192 /* Holds a declaration */
- #define FBUF_SIZE 32700 /* Holds part of a header file */
- #define NARGS 15
- #define NAMES_L 160
- #define TYPES_L 160
- #define FUNC_L 160
- #define ERRF stdout
- void phError(char *errmsg);
- void phWarning(char *errmsg);
- #define ERR(msg) phError(msg)
- #ifdef DEBUG
- #define DBG(str) printf(str);
- #else
- #define DBG(str) ;
- #endif
- #define WARN(msg) phWarning(msg)
- #define OUT(str) fprintf(outfile, str)
- #define PH_PARAMS 32
- #define PH_NAMESZ 15
- #define SYMLEN 16 /* Including the null */
- #define Int long /* For locident.h */
- //#include "locident.h" /* For the hlType enum */
- //#define bool unsigned char /* For internal use */
- typedef
- struct ph_func_tag
- {
- char name[SYMLEN]; /* Name of function or arg */
- hlType typ; /* Return type */
- int numArg; /* Number of args */
- int firstArg; /* Index of first arg in chain */
- int next; /* Index of next function in chain */
- bool bVararg; /* True if variable num args */
- } PH_FUNC_STRUCT;
- typedef
- struct ph_arg_tag
- {
- char name[SYMLEN]; /* Name of function or arg */
- hlType typ; /* Parameter type */
- } PH_ARG_STRUCT;
- #define DELTA_FUNC 32 /* Number to alloc at once */
- #define PH_JUNK 0 /* LPSTR buffer, nothing happened */
- #define PH_PROTO 1 /* LPPH_FUNC ret val, func name, args */
- #define PH_FUNCTION 2 /* LPPH_FUNC ret val, func name, args */
- #define PH_TYPEDEF 3 /* LPPH_DEF definer and definee */
- #define PH_DEFINE 4 /* LPPH_DEF definer and definee */
- #define PH_ERROR 5 /* LPSTR error string */
- #define PH_WARNING 6 /* LPSTR warning string */
- #define PH_MPROTO 7 /* ????? multi proto???? */
- #define PH_VAR 8 /* ????? var decl */
- /* PROTOS */
- boolT phData(char *buff, int ndata);
- boolT phPost(void);
- boolT phFree(void);
- void checkHeap(char *msg); /* For debugging only */
- void phBuffToFunc(char *buff);
- void phBuffToDef(char *buff);
- #define TOK_TYPE 256 /* A type name (e.g. "int") */
- #define TOK_NAME 257 /* A function or parameter name */
- #define TOK_DOTS 258 /* "..." */
- #define TOK_EOL 259 /* End of line */
- typedef enum
- {
- BT_INT, BT_CHAR, BT_FLOAT, BT_DOUBLE, BT_STRUCT, BT_VOID, BT_UNKWN
- } baseType;
|