| Left: | ||
| Right: |
| LEFT | RIGHT |
|---|---|
| 1 #ifndef ADBLOCKPLUS_ELEMHIDEBASE_H | 1 #pragma once |
| 2 #define ADBLOCKPLUS_ELEMHIDEBASE_H | |
| 3 | 2 |
| 4 #include <cstddef> | 3 #include <cstddef> |
| 5 #include <string> | |
| 6 | 4 |
| 7 #include "ActiveFilter.h" | 5 #include "ActiveFilter.h" |
| 8 | 6 |
| 7 struct ElemHideBaseData | |
| 8 { | |
| 9 String::size_type mDomainsEnd; | |
| 10 String::size_type mSelectorStart; | |
| 11 | |
| 12 bool HasDomains() const | |
| 13 { | |
| 14 return mDomainsEnd != 0; | |
| 15 } | |
| 16 | |
| 17 DependentString GetDomainsSource(String& text) const | |
| 18 { | |
| 19 return DependentString(text, 0, mDomainsEnd); | |
| 20 } | |
| 21 | |
| 22 const DependentString GetDomainsSource(const String& text) const | |
| 23 { | |
| 24 return DependentString(text, 0, mDomainsEnd); | |
| 25 } | |
| 26 | |
| 27 DependentString GetSelector(String& text) const | |
| 28 { | |
| 29 return DependentString(text, mSelectorStart); | |
| 30 } | |
| 31 | |
| 32 const DependentString GetSelector(const String& text) const | |
| 33 { | |
| 34 return DependentString(text, mSelectorStart); | |
| 35 } | |
| 36 }; | |
| 37 | |
| 38 struct ElemHideData; | |
| 39 | |
| 9 class ElemHideBase : public ActiveFilter | 40 class ElemHideBase : public ActiveFilter |
| 10 { | 41 { |
| 42 protected: | |
| 43 ElemHideBaseData mData; | |
| 11 public: | 44 public: |
| 12 ElemHideBase(const std::u16string& text, size_t domainsEnd, size_t selectorSta rt); | 45 explicit ElemHideBase(Type type, const String& text, const ElemHideBaseData& d ata); |
|
Felix Dahlke
2016/01/15 17:00:36
I'd prefer to largely stick to the 80 column rule
Wladimir Palant
2016/01/15 20:36:15
Done.
| |
| 13 static Type Parse(const std::u16string& text, size_t* domainsEnd, size_t* sele ctorStart); | 46 static Type Parse(DependentString& text, ElemHideData& data); |
| 14 static ElemHideBase* Create(const std::u16string& text); | 47 |
| 48 EMSCRIPTEN_KEEPALIVE const DependentString GetSelector() const | |
| 49 { | |
| 50 return mData.GetSelector(mText); | |
| 51 } | |
| 52 | |
| 53 EMSCRIPTEN_KEEPALIVE OwnedString GetSelectorDomain() const; | |
| 15 }; | 54 }; |
| 16 | |
| 17 #endif | |
| LEFT | RIGHT |