From fdfd0b13857599e9aab6d79b0ea85363a92e4bf2 Mon Sep 17 00:00:00 2001 From: Tomasz Sowa Date: Fri, 6 Aug 2021 17:10:19 +0200 Subject: [PATCH] renamed: HTMLFilter -> HTMLParser --- src/Makefile.dep | 5 +- src/html/bbcodeparser.h | 6 +- src/html/{htmlfilter.cpp => htmlparser.cpp} | 211 ++++++++++---------- src/html/{htmlfilter.h => htmlparser.h} | 10 +- 4 files changed, 117 insertions(+), 115 deletions(-) rename src/html/{htmlfilter.cpp => htmlparser.cpp} (83%) rename src/html/{htmlfilter.h => htmlparser.h} (98%) diff --git a/src/Makefile.dep b/src/Makefile.dep index 84ddfa4..1561a29 100644 --- a/src/Makefile.dep +++ b/src/Makefile.dep @@ -46,5 +46,6 @@ ./mainoptions/mainoptionsparser.o: convert/inttostr.h utf8/utf8.h ./mainoptions/mainoptionsparser.o: textstream/stream.h utf8/utf8_templates.h ./mainoptions/mainoptionsparser.o: utf8/utf8_private.h -./html/htmlfilter.o: ./html/htmlfilter.h -./html/bbcodeparser.o: ./html/bbcodeparser.h ./html/htmlfilter.h +./html/htmlparser.o: ./html/htmlparser.h convert/baseparser.h convert/text.h +./html/bbcodeparser.o: ./html/bbcodeparser.h ./html/htmlparser.h +./html/bbcodeparser.o: convert/baseparser.h diff --git a/src/html/bbcodeparser.h b/src/html/bbcodeparser.h index bd36e4d..a2e2e7f 100644 --- a/src/html/bbcodeparser.h +++ b/src/html/bbcodeparser.h @@ -38,13 +38,13 @@ #ifndef headerfile_winix_core_bbcodeparser #define headerfile_winix_core_bbcodeparser -#include "htmlfilter.h" +#include "htmlparser.h" namespace pt { -class BBCODEParser : public HTMLFilter +class BBCODEParser : public HTMLParser { struct Tags @@ -58,7 +58,7 @@ class BBCODEParser : public HTMLFilter /* virtual methods - (from HTMLFilter class) + (from HTMLParser class) */ virtual void Init(); virtual void Uninit(); diff --git a/src/html/htmlfilter.cpp b/src/html/htmlparser.cpp similarity index 83% rename from src/html/htmlfilter.cpp rename to src/html/htmlparser.cpp index 9084462..1187a67 100644 --- a/src/html/htmlfilter.cpp +++ b/src/html/htmlparser.cpp @@ -35,19 +35,20 @@ * THE POSSIBILITY OF SUCH DAMAGE. */ -#include "htmlfilter.h" +#include "htmlparser.h" + #include "convert/text.h" namespace pt { -const int HTMLFilter::WHITE_MODE_ORIGIN; -const int HTMLFilter::WHITE_MODE_SINGLE_LINE; -const int HTMLFilter::WHITE_MODE_TREE; +const int HTMLParser::WHITE_MODE_ORIGIN; +const int HTMLParser::WHITE_MODE_SINGLE_LINE; +const int HTMLParser::WHITE_MODE_TREE; -void HTMLFilter::Item::Clear() +void HTMLParser::Item::Clear() { name.clear(); type = none; @@ -61,14 +62,14 @@ void HTMLFilter::Item::Clear() } -HTMLFilter::Item::Item() +HTMLParser::Item::Item() { Clear(); } -void HTMLFilter::Filter(const wchar_t * in, std::wstring & out) +void HTMLParser::Filter(const wchar_t * in, std::wstring & out) { reading_from_file = false; reading_from_wchar_string = true; @@ -89,18 +90,18 @@ void HTMLFilter::Filter(const wchar_t * in, std::wstring & out) -void HTMLFilter::Init() +void HTMLParser::Init() { } -void HTMLFilter::Uninit() +void HTMLParser::Uninit() { } -void HTMLFilter::Filter(const std::wstring & in, std::wstring & out) +void HTMLParser::Filter(const std::wstring & in, std::wstring & out) { if( &in == &out ) { @@ -117,7 +118,7 @@ void HTMLFilter::Filter(const std::wstring & in, std::wstring & out) } -void HTMLFilter::SetSomeDefaults() +void HTMLParser::SetSomeDefaults() { white_mode = WHITE_MODE_ORIGIN; @@ -132,7 +133,7 @@ void HTMLFilter::SetSomeDefaults() } -HTMLFilter::HTMLFilter() +HTMLParser::HTMLParser() { pstack = new Item[WINIX_HTMLFILTER_STACK_MAXLEN]; buffer = new wchar_t[WINIX_HTMLFILTER_BUFFER_MAXLEN]; @@ -141,7 +142,7 @@ HTMLFilter::HTMLFilter() } -HTMLFilter::HTMLFilter(const HTMLFilter & f) +HTMLParser::HTMLParser(const HTMLParser & f) { // don't need to copy the stack pstack = new Item[WINIX_HTMLFILTER_STACK_MAXLEN]; @@ -151,7 +152,7 @@ HTMLFilter::HTMLFilter(const HTMLFilter & f) } -HTMLFilter & HTMLFilter::operator=(const HTMLFilter & f) +HTMLParser & HTMLParser::operator=(const HTMLParser & f) { // don't need to copy the stack pstack = new Item[WINIX_HTMLFILTER_STACK_MAXLEN]; @@ -163,7 +164,7 @@ return *this; } -HTMLFilter::~HTMLFilter() +HTMLParser::~HTMLParser() { delete [] pstack; delete [] buffer; @@ -171,7 +172,7 @@ HTMLFilter::~HTMLFilter() -void HTMLFilter::white_chars_mode(int mode) +void HTMLParser::white_chars_mode(int mode) { if( mode >= WHITE_MODE_ORIGIN && mode <= WHITE_MODE_TREE ) white_mode = mode; @@ -180,7 +181,7 @@ void HTMLFilter::white_chars_mode(int mode) -void HTMLFilter::WrapLine(size_t wrap_line_) +void HTMLParser::WrapLine(size_t wrap_line_) { wrap_line = wrap_line_; @@ -190,7 +191,7 @@ void HTMLFilter::WrapLine(size_t wrap_line_) -void HTMLFilter::InsertTabs(size_t tabsize) +void HTMLParser::InsertTabs(size_t tabsize) { tab_size = tabsize; @@ -199,7 +200,7 @@ void HTMLFilter::InsertTabs(size_t tabsize) } -int HTMLFilter::current_white_char_mode() +int HTMLParser::current_white_char_mode() { if( !white_char_mode_tab.empty() ) return white_char_mode_tab.back(); @@ -208,7 +209,7 @@ int HTMLFilter::current_white_char_mode() } -void HTMLFilter::CalcOrphansMaxLen(Orphans & orphans) +void HTMLParser::CalcOrphansMaxLen(Orphans & orphans) { size_t i; @@ -222,7 +223,7 @@ size_t i; } -void HTMLFilter::AssignOrphans(const wchar_t * lang_code, const std::vector & otab) +void HTMLParser::AssignOrphans(const wchar_t * lang_code, const std::vector & otab) { lang_code_lower = lang_code; ToLower(lang_code_lower); @@ -236,13 +237,13 @@ void HTMLFilter::AssignOrphans(const wchar_t * lang_code, const std::vector & otab) +void HTMLParser::AssignOrphans(const std::wstring & lang_code, const std::vector & otab) { AssignOrphans(lang_code.c_str(), otab); } -void HTMLFilter::ClearOrphans() +void HTMLParser::ClearOrphans() { orphans_tab.clear(); } @@ -250,7 +251,7 @@ void HTMLFilter::ClearOrphans() -void HTMLFilter::OrphansMode(const std::wstring & orphan_mode_str) +void HTMLParser::OrphansMode(const std::wstring & orphan_mode_str) { if( orphan_mode_str == L"160" ) orphan_mode = orphan_160space; @@ -259,24 +260,24 @@ void HTMLFilter::OrphansMode(const std::wstring & orphan_mode_str) } -void HTMLFilter::SafeMode(bool safe_mode_) +void HTMLParser::SafeMode(bool safe_mode_) { safe_mode = safe_mode_; } -void HTMLFilter::SkipTags(bool skip_tags) +void HTMLParser::SkipTags(bool skip_tags) { this->skip_tags = skip_tags; } -void HTMLFilter::SkipCommentaries(bool skip_commentaries) +void HTMLParser::SkipCommentaries(bool skip_commentaries) { this->skip_commentaries = skip_commentaries; } -void HTMLFilter::SkipEntities(bool skip_entities) +void HTMLParser::SkipEntities(bool skip_entities) { this->skip_entities = skip_entities; @@ -287,13 +288,13 @@ void HTMLFilter::SkipEntities(bool skip_entities) } -void HTMLFilter::AnalyzeEntities(bool analyze_entities) +void HTMLParser::AnalyzeEntities(bool analyze_entities) { this->analyze_entities = analyze_entities; } -void HTMLFilter::SetNoFilterTag(const std::wstring & tag_name) +void HTMLParser::SetNoFilterTag(const std::wstring & tag_name) { no_filter_tag = tag_name; } @@ -301,7 +302,7 @@ void HTMLFilter::SetNoFilterTag(const std::wstring & tag_name) -HTMLFilter::Item & HTMLFilter::GetItem(size_t i) +HTMLParser::Item & HTMLParser::GetItem(size_t i) { if( i >= stack_len ) { @@ -313,7 +314,7 @@ return pstack[i]; } -HTMLFilter::Item & HTMLFilter::LastItem() +HTMLParser::Item & HTMLParser::LastItem() { if( stack_len == 0 ) { @@ -325,7 +326,7 @@ return pstack[stack_len-1]; } -bool HTMLFilter::PushStack() +bool HTMLParser::PushStack() { if( stack_len == WINIX_HTMLFILTER_STACK_MAXLEN ) // oops, too many items @@ -346,7 +347,7 @@ bool HTMLFilter::PushStack() return true; } -void HTMLFilter::PopStack() +void HTMLParser::PopStack() { if( stack_len == 0 ) // oops @@ -357,7 +358,7 @@ void HTMLFilter::PopStack() } -bool HTMLFilter::IsWhite(int c) +bool HTMLParser::IsWhite(int c) { // dont use c==10 here @@ -368,21 +369,21 @@ return false; } -void HTMLFilter::SkipWhite() +void HTMLParser::SkipWhite() { while( IsWhite(lastc) ) read_char(); } -void HTMLFilter::SkipWhiteLines() +void HTMLParser::SkipWhiteLines() { while( lastc==10 || IsWhite(lastc) ) read_char(); } -void HTMLFilter::SkipWhiteWithFirstNewLine() +void HTMLParser::SkipWhiteWithFirstNewLine() { SkipWhite(); @@ -394,7 +395,7 @@ void HTMLFilter::SkipWhiteWithFirstNewLine() } -//void HTMLFilter::CheckNewLine() +//void HTMLParser::CheckNewLine() //{ // if( white_mode == WHITE_MODE_TREE ) // { @@ -407,7 +408,7 @@ void HTMLFilter::SkipWhiteWithFirstNewLine() -void HTMLFilter::SkipAndCheckClosingTag(std::wstring * remember_text) +void HTMLParser::SkipAndCheckClosingTag(std::wstring * remember_text) { bool is_quoted = false; wchar_t quote_char = 0; @@ -450,7 +451,7 @@ void HTMLFilter::SkipAndCheckClosingTag(std::wstring * remember_text) -bool HTMLFilter::IsValidCharForName(int c) +bool HTMLParser::IsValidCharForName(int c) { if( (c>='a' && c<='z') || (c>='A' && c<='Z') || @@ -462,7 +463,7 @@ return false; } -bool HTMLFilter::IsValidCharForAttrName(int c) +bool HTMLParser::IsValidCharForAttrName(int c) { if( (c>='a' && c<='z') || (c>='A' && c<='Z') || @@ -474,7 +475,7 @@ return false; } -bool HTMLFilter::IsValidCharForEntityName(int c) +bool HTMLParser::IsValidCharForEntityName(int c) { if( (c>='a' && c<='z') || (c>='A' && c<='Z') || @@ -486,7 +487,7 @@ return false; } -void HTMLFilter::ReadItemName(std::wstring & name, bool clear_name) +void HTMLParser::ReadItemName(std::wstring & name, bool clear_name) { size_t i; @@ -513,7 +514,7 @@ size_t i; -void HTMLFilter::ReadItemAttrName() +void HTMLParser::ReadItemAttrName() { size_t i; @@ -530,7 +531,7 @@ size_t i; -void HTMLFilter::ReadItemAttrValueAdd(const std::wstring & str) +void HTMLParser::ReadItemAttrValueAdd(const std::wstring & str) { if( analyze_entities ) { @@ -544,7 +545,7 @@ void HTMLFilter::ReadItemAttrValueAdd(const std::wstring & str) } -void HTMLFilter::ReadItemAttrValue(bool has_quote, wchar_t quote_char) +void HTMLParser::ReadItemAttrValue(bool has_quote, wchar_t quote_char) { attr_value.clear(); tmp_text.clear(); @@ -585,7 +586,7 @@ void HTMLFilter::ReadItemAttrValue(bool has_quote, wchar_t quote_char) } -void HTMLFilter::CheckChar(wchar_t c) +void HTMLParser::CheckChar(wchar_t c) { if( c == 10 ) line_len = 0; @@ -594,14 +595,14 @@ void HTMLFilter::CheckChar(wchar_t c) } -void HTMLFilter::Put(wchar_t c) +void HTMLParser::Put(wchar_t c) { (*out_string) += c; CheckChar(c); } -void HTMLFilter::Put(const wchar_t * str, const wchar_t * end) +void HTMLParser::Put(const wchar_t * str, const wchar_t * end) { if( str >= end ) return; @@ -615,7 +616,7 @@ void HTMLFilter::Put(const wchar_t * str, const wchar_t * end) -void HTMLFilter::Put(const std::wstring & str) +void HTMLParser::Put(const std::wstring & str) { if( !str.empty() ) { @@ -628,7 +629,7 @@ void HTMLFilter::Put(const std::wstring & str) // out can be null -void HTMLFilter::AnalyzeEntitiesAndPut(const wchar_t * str, const wchar_t * end, std::wstring * out) +void HTMLParser::AnalyzeEntitiesAndPut(const wchar_t * str, const wchar_t * end, std::wstring * out) { size_t epsilon = 8; // !! IMPROVE ME put as a constant const wchar_t * old_str = str; @@ -680,7 +681,7 @@ void HTMLFilter::AnalyzeEntitiesAndPut(const wchar_t * str, const wchar_t * end, -int HTMLFilter::CheckOrphan(const wchar_t * str, const wchar_t * end, const std::wstring & orphan_str) +int HTMLParser::CheckOrphan(const wchar_t * str, const wchar_t * end, const std::wstring & orphan_str) { size_t res; @@ -704,7 +705,7 @@ return -int(ToLower(*orphan)); // binary search in table (table should be sorted) -bool HTMLFilter::CheckOrphan(const wchar_t * str, const wchar_t * end, const std::vector & table) +bool HTMLParser::CheckOrphan(const wchar_t * str, const wchar_t * end, const std::vector & table) { int res; @@ -749,7 +750,7 @@ return false; } -bool HTMLFilter::CheckOrphan(const wchar_t * str, const wchar_t * end) +bool HTMLParser::CheckOrphan(const wchar_t * str, const wchar_t * end) { if( str==end || !LastItem().has_body_tag || !LastItem().porphans ) return false; @@ -763,7 +764,7 @@ return CheckOrphan(str, end, LastItem().porphans->tab); } -void HTMLFilter::PutNormalNonWhite(std::wstring & str, bool allow_put_new_line, bool allow_put_space) +void HTMLParser::PutNormalNonWhite(std::wstring & str, bool allow_put_new_line, bool allow_put_space) { while( lastc != -1 && lastc != 10 && !IsWhite(lastc) && !IsOpeningTagMark(lastc) ) { @@ -799,7 +800,7 @@ void HTMLFilter::PutNormalNonWhite(std::wstring & str, bool allow_put_new_line, } -void HTMLFilter::PutNormalWhite(bool & was_white_char, bool & was_new_line) +void HTMLParser::PutNormalWhite(bool & was_white_char, bool & was_new_line) { was_white_char = false; was_new_line = false; @@ -829,13 +830,13 @@ void HTMLFilter::PutNormalWhite(bool & was_white_char, bool & was_new_line) -void HTMLFilter::PutOpeningTagMark() +void HTMLParser::PutOpeningTagMark() { Put('<'); } -void HTMLFilter::PutClosingTagMark() +void HTMLParser::PutClosingTagMark() { Put('>'); } @@ -845,7 +846,7 @@ void HTMLFilter::PutClosingTagMark() // !! IMPROVE ME change to a better name // this functions does not return true when the tag is safe -bool HTMLFilter::IsTagSafe(const wchar_t * tag) +bool HTMLParser::IsTagSafe(const wchar_t * tag) { if( !safe_mode ) return true; @@ -874,7 +875,7 @@ return true; } -bool HTMLFilter::IsTagSafe(const std::wstring & tag) +bool HTMLParser::IsTagSafe(const std::wstring & tag) { return IsTagSafe(tag.c_str()); } @@ -883,7 +884,7 @@ bool HTMLFilter::IsTagSafe(const std::wstring & tag) -bool HTMLFilter::PutOpeningTag() +bool HTMLParser::PutOpeningTag() { if( !IsTagSafe(LastItem().name) ) { @@ -905,7 +906,7 @@ return true; -void HTMLFilter::PutClosingTag(const Item & item) +void HTMLParser::PutClosingTag(const Item & item) { if( skip_tags || !IsTagSafe(item.name) ) return; @@ -922,7 +923,7 @@ void HTMLFilter::PutClosingTag(const Item & item) -void HTMLFilter::PutTabs(size_t len) +void HTMLParser::PutTabs(size_t len) { if( len > 30 ) len = 30; @@ -932,7 +933,7 @@ void HTMLFilter::PutTabs(size_t len) } -void HTMLFilter::PutNonBreakingSpace() +void HTMLParser::PutNonBreakingSpace() { if( orphan_mode == orphan_nbsp ) { @@ -947,35 +948,35 @@ void HTMLFilter::PutNonBreakingSpace() // we assume the size of the opening mark to be one -bool HTMLFilter::IsOpeningTagMark(wchar_t c) +bool HTMLParser::IsOpeningTagMark(wchar_t c) { return (c == '<'); } // we assume the size of the closing mark to be one -bool HTMLFilter::IsClosingTagMark(wchar_t c) +bool HTMLParser::IsClosingTagMark(wchar_t c) { return (c == '>'); } // the slash in the closing tag mark e.g.

-bool HTMLFilter::IsClosingTagIndicator(wchar_t c) +bool HTMLParser::IsClosingTagIndicator(wchar_t c) { return (c == '/'); } // the slash in the closing tag mark e.g.

-bool HTMLFilter::IsSpecialTagIndicator(wchar_t c) +bool HTMLParser::IsSpecialTagIndicator(wchar_t c) { return (c == '!'); } // the '=' operator e.g. class="value" -bool HTMLFilter::IsAttributeAssignmentMark(wchar_t c) +bool HTMLParser::IsAttributeAssignmentMark(wchar_t c) { return (c == '='); } @@ -984,13 +985,13 @@ bool HTMLFilter::IsAttributeAssignmentMark(wchar_t c) // the slash at the end (without '>' character) // we assume the size of the mark to be one -bool HTMLFilter::IsClosingXmlSimpleTagMark(wchar_t c) +bool HTMLParser::IsClosingXmlSimpleTagMark(wchar_t c) { return (c == '/'); } -bool HTMLFilter::IsEndingCommentaryTagMarkAtEndOfString(const std::wstring & str) +bool HTMLParser::IsEndingCommentaryTagMarkAtEndOfString(const std::wstring & str) { static wchar_t comm_end[] = L"-->"; size_t comm_end_len = sizeof(comm_end) / sizeof(wchar_t) - 1; @@ -1004,13 +1005,13 @@ bool HTMLFilter::IsEndingCommentaryTagMarkAtEndOfString(const std::wstring & str } -bool HTMLFilter::IsStartingEntityMark(wchar_t c) +bool HTMLParser::IsStartingEntityMark(wchar_t c) { return (c == '&'); } -bool HTMLFilter::IsEndingEntityMark(wchar_t c) +bool HTMLParser::IsEndingEntityMark(wchar_t c) { return (c == ';'); } @@ -1018,7 +1019,7 @@ bool HTMLFilter::IsEndingEntityMark(wchar_t c) // reading text between html tags -void HTMLFilter::ReadText() +void HTMLParser::ReadText() { bool was_white_char = false; bool was_new_line = false; @@ -1096,7 +1097,7 @@ void HTMLFilter::ReadText() -bool HTMLFilter::PrintOpeningItem() +bool HTMLParser::PrintOpeningItem() { if( skip_tags || IsNameEqual(no_filter_tag, LastItem().name) ) return true; @@ -1108,7 +1109,7 @@ bool HTMLFilter::PrintOpeningItem() -bool HTMLFilter::ReadItemAttr() +bool HTMLParser::ReadItemAttr() { attr_has_value = false; attr_name.clear(); @@ -1145,7 +1146,7 @@ return true; -void HTMLFilter::CheckItemLangAttr() +void HTMLParser::CheckItemLangAttr() { if( attr_has_value && IsNameEqual(L"lang", attr_name) ) { @@ -1166,7 +1167,7 @@ void HTMLFilter::CheckItemLangAttr() } -void HTMLFilter::PrintItemAttr() +void HTMLParser::PrintItemAttr() { size_t i; @@ -1193,7 +1194,7 @@ size_t i; } -void HTMLFilter::ReadItemClosing() +void HTMLParser::ReadItemClosing() { read_char(); // skipping '/' SkipWhiteLines(); @@ -1205,7 +1206,7 @@ void HTMLFilter::ReadItemClosing() } -void HTMLFilter::ReadItemSpecial() +void HTMLParser::ReadItemSpecial() { LastItem().type = Item::special; @@ -1255,7 +1256,7 @@ void HTMLFilter::ReadItemSpecial() } -void HTMLFilter::ReadItemOpening() +void HTMLParser::ReadItemOpening() { LastItem().type = Item::opening; ReadItemName(LastItem().name); @@ -1281,16 +1282,16 @@ void HTMLFilter::ReadItemOpening() } -void HTMLFilter::ItemFound() +void HTMLParser::ItemFound() { } -void HTMLFilter::EntityFound(const wchar_t * str, const wchar_t * end) +void HTMLParser::EntityFound(const wchar_t * str, const wchar_t * end) { } -bool HTMLFilter::ReadItem() +bool HTMLParser::ReadItem() { if( lastc == -1 ) return false; @@ -1332,7 +1333,7 @@ return true; -wchar_t HTMLFilter::ToLower(wchar_t c) +wchar_t HTMLParser::ToLower(wchar_t c) { if( c>='A' && c<='Z' ) return c - 'A' + 'a'; @@ -1341,7 +1342,7 @@ return c; } -void HTMLFilter::ToLower(std::wstring & str) +void HTMLParser::ToLower(std::wstring & str) { size_t i; @@ -1350,7 +1351,7 @@ size_t i; } -bool HTMLFilter::IsNameEqual(const wchar_t * name1, const wchar_t * name2) +bool HTMLParser::IsNameEqual(const wchar_t * name1, const wchar_t * name2) { for( ; *name1!=0 && *name2!=0 ; ++name1, ++name2 ) if( ToLower(*name1) != ToLower(*name2) ) @@ -1363,19 +1364,19 @@ return false; } -bool HTMLFilter::IsNameEqual(const wchar_t * name1, const std::wstring & name2) +bool HTMLParser::IsNameEqual(const wchar_t * name1, const std::wstring & name2) { return IsNameEqual(name1, name2.c_str()); } -bool HTMLFilter::IsNameEqual(const std::wstring & name1, const wchar_t * name2) +bool HTMLParser::IsNameEqual(const std::wstring & name1, const wchar_t * name2) { return IsNameEqual(name1.c_str(), name2); } -bool HTMLFilter::IsNameEqual(const std::wstring & name1, const std::wstring & name2) +bool HTMLParser::IsNameEqual(const std::wstring & name1, const std::wstring & name2) { return IsNameEqual(name1.c_str(), name2.c_str()); } @@ -1385,7 +1386,7 @@ bool HTMLFilter::IsNameEqual(const std::wstring & name1, const std::wstring & na // len characters from both strings must be equal // IMPROVE ME change name to something like IsBeginningNameEqual // and move to text.h (pikotools) -bool HTMLFilter::IsNameEqual(const wchar_t * name1, const wchar_t * name2, size_t len) +bool HTMLParser::IsNameEqual(const wchar_t * name1, const wchar_t * name2, size_t len) { for( ; *name1!=0 && *name2!=0 && len>0 ; ++name1, ++name2, --len ) if( ToLower(*name1) != ToLower(*name2) ) @@ -1399,19 +1400,19 @@ return false; -bool HTMLFilter::IsNameEqual(const wchar_t * name1, const std::wstring & name2, size_t len) +bool HTMLParser::IsNameEqual(const wchar_t * name1, const std::wstring & name2, size_t len) { return IsNameEqual(name1, name2.c_str(), len); } -bool HTMLFilter::IsNameEqual(const std::wstring & name1, const wchar_t * name2, size_t len) +bool HTMLParser::IsNameEqual(const std::wstring & name1, const wchar_t * name2, size_t len) { return IsNameEqual(name1.c_str(), name2, len); } -bool HTMLFilter::IsNameEqual(const std::wstring & name1, const std::wstring & name2, size_t len) +bool HTMLParser::IsNameEqual(const std::wstring & name1, const std::wstring & name2, size_t len) { return IsNameEqual(name1.c_str(), name2.c_str(), len); } @@ -1420,20 +1421,20 @@ bool HTMLFilter::IsNameEqual(const std::wstring & name1, const std::wstring & na -bool HTMLFilter::IsLastTag(const wchar_t * name) +bool HTMLParser::IsLastTag(const wchar_t * name) { return IsNameEqual(name, LastItem().name); } -bool HTMLFilter::IsLastTag(const std::wstring & name) +bool HTMLParser::IsLastTag(const std::wstring & name) { return IsNameEqual(name, LastItem().name); } // checking exceptions for opening tags -void HTMLFilter::CheckSingleItemExceptions() +void HTMLParser::CheckSingleItemExceptions() { if( IsLastTag(L"meta") || IsLastTag(L"input") || @@ -1456,7 +1457,7 @@ void HTMLFilter::CheckSingleItemExceptions() } -void HTMLFilter::CheckWhiteCharsExceptions(Item & item) +void HTMLParser::CheckWhiteCharsExceptions(Item & item) { bool change_white_mode = false; @@ -1493,7 +1494,7 @@ void HTMLFilter::CheckWhiteCharsExceptions(Item & item) -void HTMLFilter::AddForgottenTags() +void HTMLParser::AddForgottenTags() { int i; @@ -1539,7 +1540,7 @@ int i; } -void HTMLFilter::CheckStackPrintRest() +void HTMLParser::CheckStackPrintRest() { while( stack_len-- > 0 ) { @@ -1561,7 +1562,7 @@ void HTMLFilter::CheckStackPrintRest() } -void HTMLFilter::CheckClosingTags() +void HTMLParser::CheckClosingTags() { if( stack_len == 0 ) return; @@ -1604,7 +1605,7 @@ void HTMLFilter::CheckClosingTags() } -bool HTMLFilter::PrintRest() +bool HTMLParser::PrintRest() { //const wchar_t * start = pchar; @@ -1634,7 +1635,7 @@ bool HTMLFilter::PrintRest() -void HTMLFilter::ReadLoop() +void HTMLParser::ReadLoop() { while( ReadItem() ) { @@ -1671,7 +1672,7 @@ void HTMLFilter::ReadLoop() -void HTMLFilter::Read() +void HTMLParser::Read() { read_char(); // put first character to lastc is_first_item = true; diff --git a/src/html/htmlfilter.h b/src/html/htmlparser.h similarity index 98% rename from src/html/htmlfilter.h rename to src/html/htmlparser.h index b24e925..7e42eea 100644 --- a/src/html/htmlfilter.h +++ b/src/html/htmlparser.h @@ -90,7 +90,7 @@ namespace pt the filter recognizes xml simple tags (with / at the end) such as:
*/ -class HTMLFilter : public BaseParser +class HTMLParser : public BaseParser { public: @@ -100,10 +100,10 @@ public: orphan_160space // putting 160 ascii code }; - HTMLFilter(); - HTMLFilter(const HTMLFilter & f); - HTMLFilter & operator=(const HTMLFilter & f); - virtual ~HTMLFilter(); + HTMLParser(); + HTMLParser(const HTMLParser & f); + HTMLParser & operator=(const HTMLParser & f); + virtual ~HTMLParser(); // main methods used for filtering