Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: compiled/CSSPropertyFilter.h

Issue 29333474: Issue 4125 - [emscripten] Convert filter classes to C++ (Closed)
Patch Set: Addressed comments from Patch Set 28 Created March 21, 2017, 10:04 a.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « compiled/BlockingFilter.cpp ('k') | compiled/CSSPropertyFilter.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: compiled/CSSPropertyFilter.h
===================================================================
new file mode 100644
--- /dev/null
+++ b/compiled/CSSPropertyFilter.h
@@ -0,0 +1,51 @@
+#pragma once
+
+#include <cstddef>
+
+#include "Filter.h"
+#include "ElemHideBase.h"
+
+struct CSSPropertyFilterData
+{
+ String::size_type mPrefixEnd;
+ String::size_type mRegexpStart;
+ String::size_type mRegexpEnd;
+ String::size_type mSuffixStart;
+
+ const DependentString GetSelectorPrefix(const String& text,
+ String::size_type selectorStart) const
+ {
+ return DependentString(text, selectorStart, mPrefixEnd - selectorStart);
+ }
+
+ const DependentString GetRegExpSource(const String& text) const
+ {
+ return DependentString(text, mRegexpStart, mRegexpEnd - mRegexpStart);
+ }
+
+ const DependentString GetSelectorSuffix(const String& text) const
+ {
+ return DependentString(text, mSuffixStart);
+ }
+};
+
+struct ElemHideData : ElemHideBaseData, CSSPropertyFilterData
+{
+};
+
+class CSSPropertyFilter: public ElemHideBase
+{
+protected:
+ CSSPropertyFilterData mPropertyData;
+public:
+ explicit CSSPropertyFilter(const String& text, const ElemHideData& data);
+ EMSCRIPTEN_KEEPALIVE OwnedString GetRegExpString() const;
+ EMSCRIPTEN_KEEPALIVE const DependentString GetSelectorPrefix() const
+ {
+ return mPropertyData.GetSelectorPrefix(mText, mData.mSelectorStart);
+ }
+ EMSCRIPTEN_KEEPALIVE const DependentString GetSelectorSuffix() const
+ {
+ return mPropertyData.GetSelectorSuffix(mText);
+ }
+};
« no previous file with comments | « compiled/BlockingFilter.cpp ('k') | compiled/CSSPropertyFilter.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld