summaryrefslogtreecommitdiffstats
path: root/3rdparty/clucene/src/CLucene/search/RangeFilter.h
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/clucene/src/CLucene/search/RangeFilter.h')
-rw-r--r--3rdparty/clucene/src/CLucene/search/RangeFilter.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/3rdparty/clucene/src/CLucene/search/RangeFilter.h b/3rdparty/clucene/src/CLucene/search/RangeFilter.h
new file mode 100644
index 000000000..0865e356f
--- /dev/null
+++ b/3rdparty/clucene/src/CLucene/search/RangeFilter.h
@@ -0,0 +1,51 @@
+/*------------------------------------------------------------------------------
+* Copyright (C) 2003-2006 Ben van Klinken and the CLucene Team
+*
+* Distributable under the terms of either the Apache License (Version 2.0) or
+* the GNU Lesser General Public License, as specified in the COPYING file.
+------------------------------------------------------------------------------*/
+
+#ifndef _lucene_search_RangeFilter_
+#define _lucene_search_RangeFilter_
+
+#include "CLucene/document/DateField.h"
+#include "CLucene/index/Term.h"
+#include "CLucene/index/Terms.h"
+#include "CLucene/index/IndexReader.h"
+#include "CLucene/util/BitSet.h"
+#include "CLucene/search/Filter.h"
+
+CL_NS_DEF(search)
+
+class RangeFilter: public Filter
+{
+private:
+ const TCHAR* field;
+ TCHAR* lowerValue;
+ TCHAR* upperValue;
+ bool includeLower;
+ bool includeUpper;
+
+protected:
+ RangeFilter( const RangeFilter& copy );
+
+public:
+ RangeFilter( const TCHAR* fieldName, const TCHAR* lowerValue, const TCHAR* upperValue, bool includeLower, bool includeUpper );
+
+ static RangeFilter* Less( TCHAR* fieldName, TCHAR* upperTerm );
+
+ static RangeFilter* More( TCHAR* fieldName, TCHAR* lowerTerm );
+
+ ~RangeFilter();
+
+ /** Returns a BitSet with true for documents which should be permitted in
+ search results, and false for those that should not. */
+ CL_NS(util)::BitSet* bits( CL_NS(index)::IndexReader* reader );
+
+ Filter* clone() const;
+
+ TCHAR* toString();
+};
+
+CL_NS_END
+#endif