/* * PROJECT: * SUBSYSTEM: * MODULE: * * FILE: $RCSfile: pfparser.h,v $ * REVISION: $Revision: 1.3 $ * Date: $Date: 95/04/27 23:01:16 $ * Author: $Author: bill $ * RCS Ident: $Id: pfparser.h,v 1.3 95/04/27 23:01:16 bill Exp $ * * FUNCTION: * * Copyright (c) 1994 Division Ltd. * * All Rights Reserved. * * This Document may not, in whole or in part, be copied, * photocopied, reproduced, translated, or reduced to any * electronic medium or machine readable form without prior * written consent from Division Ltd. */ #ifndef __PFPARSER_H__ #define __PFPARSER_H__ #include #ifdef _PF_LOCAL #include "pgeneral.h" #else #include #endif #define dpp_MATCH_CASE 0 #define dpp_ANY_CASE 1 /* On calls which either succeed or fail, dpgSUCCESS (0) or dpgERROR (-1) * is returned. On calls to get next token however the following * return values are also used */ #define dppEOF -2 #define dppSTRING -3 #define dppNUMBER -4 typedef struct dppKEYTAB { int32 tok; char *name; int32 matchCase; } dppKEYTAB ; typedef struct dppFILE { int32 lineNo; int32 errorFlag; char *fileName; FILE *file; char *whites ; char comment ; int32 pushedBackToken; float number; char *buffer; int32 bufSize; int32 bufPos; dppKEYTAB *keyTab; } dppFILE, *dppFILEPTR ; dppFILEPTR dppOpenFile (char *name, FILE *fp, const char *whites, char comment, dppKEYTAB *keyTable, int32 bufferSize); void dppCloseFile (dppFILEPTR fPtr); char * dppTokenToString (dppFILEPTR fptr, const int32 token); int32 dppPushToken (dppFILEPTR fptr, const int32 token); int32 dppNextToken (dppFILEPTR fptr); int32 dppReadToNextChar(dppFILEPTR fPtr, char endChr) ; char * dppMatchString (dppFILEPTR fptr); int32 dppMatchInt (dppFILEPTR fptr, int32 *num); int32 dppMatchFloat (dppFILEPTR fptr, float *num); int32 dppMatchCharacter (dppFILEPTR fptr, char c); void dppMoveToNextLine(dppFILEPTR fptr) ; #endif /* __PFPARSER_H__ */