/usr/include/htmlcxx/html/ParserSax.h is in libhtmlcxx-dev 0.85-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 | #ifndef __HTML_PARSER_SAX_H__
#define __HTML_PARSER_SAX_H__
#include <string>
#include "Node.h"
namespace htmlcxx
{
namespace HTML
{
class ParserSax
{
public:
ParserSax() : mpLiteral(0), mCdata(false) {}
virtual ~ParserSax() {}
/** Parse the html code */
void parse(const std::string &html);
template <typename _Iterator>
void parse(_Iterator begin, _Iterator end);
protected:
// Redefine this if you want to do some initialization before
// the parsing
virtual void beginParsing() {}
virtual void foundTag(Node node, bool isEnd) {}
virtual void foundText(Node node) {}
virtual void foundComment(Node node) {}
virtual void endParsing() {}
template <typename _Iterator>
void parse(_Iterator &begin, _Iterator &end,
std::forward_iterator_tag);
template <typename _Iterator>
void parseHtmlTag(_Iterator b, _Iterator c);
template <typename _Iterator>
void parseContent(_Iterator b, _Iterator c);
template <typename _Iterator>
void parseComment(_Iterator b, _Iterator c);
template <typename _Iterator>
_Iterator skipHtmlTag(_Iterator ptr, _Iterator end);
template <typename _Iterator>
_Iterator skipHtmlComment(_Iterator ptr, _Iterator end);
unsigned long mCurrentOffset;
const char *mpLiteral;
bool mCdata;
};
}//namespace HTML
}//namespace htmlcxx
#include "ParserSax.tcc"
#endif
|