windows-nt/Source/XPSP1/NT/shell/tools/cleaninf/parse.h
2020-09-26 16:20:57 +08:00

59 lines
1.2 KiB
C++

#ifndef _PARSE_H_
#define _PARSE_H_
#ifdef __cplusplus
#define CHAR_EOF -1
class CParseFile
{
public:
void Parse(FILE * pfileSrc, FILE * pfileDest, DWORD dwFlags);
CParseFile();
~CParseFile() {};
private:
void _ParseInf(void);
void _ParseHtml(void);
void _ParseJS(void);
void _ParseHtc(void);
char _ReadChar(DWORD dwFlags);
char _SniffChar(int ichAhead);
BOOL _IsTagEqual(LPSTR pszTag);
BOOL _IsEndTag(void);
void _WriteChar(char);
void _FlushWriteBuffer(void);
void _WriteTag(void);
void _SkipCommentTag(void);
BOOL _SkipComment(int * pcNestedComment);
BOOL _SkipWhitespace(BOOL bPreserveOneSpace = FALSE);
void _ParseInnerStyle(void);
FILE * _pfileSrc;
FILE * _pfileDest;
char _ch;
int _ichRead;
int _cchRead;
int _ichWrite;
BITBOOL _bSkipWhitespace: 1; // TRUE: skip whitespace
BITBOOL _bFirstChar: 1; // TRUE: current character is first one on a new line
char _szReadBuf[512];
char _szWriteBuf[512];
};
#endif // __cplusplus
#endif // _PARSE_H_