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 |