Index: compiled/RegExpFilter.h |
=================================================================== |
new file mode 100644 |
--- /dev/null |
+++ b/compiled/RegExpFilter.h |
@@ -0,0 +1,32 @@ |
+#ifndef ADBLOCK_PLUS_REG_EXP_FILTER_H |
+#define ADBLOCK_PLUS_REG_EXP_FILTER_H |
+ |
+#include "Filter.h" |
+#include "ActiveFilter.h" |
+ |
+class RegExpFilter : public ActiveFilter |
+{ |
+private: |
+ enum TrippleState {YES, NO, ANY}; |
+ |
+ mutable int mRegexpId; |
+ String mRegexpSource; |
+ int mContentType; |
+ bool mMatchCase; |
+ TrippleState mThirdParty; |
+ TrippleState mCollapse; |
+ void ProcessOption(String& options, int optionStart, |
+ int optionEnd, int valueStart, int valueEnd); |
+public: |
+ explicit RegExpFilter(const String& text, |
+ String::size_type patternStart, String::size_type patternEnd); |
+ ~RegExpFilter(); |
+ static Filter* Create(const String& text); |
+ static void InitJSTypes(); |
+ static String RegExpFromSource(const String& source); |
+ Type GetType() const; |
+ bool Matches(const String& location, int typeMask, String& docDomain, |
+ bool thirdParty, const String& sitekey) const; |
+}; |
+ |
+#endif |