summaryrefslogtreecommitdiffstats
path: root/3rdparty/clucene/src/CLucene/search/DateFilter.h
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/clucene/src/CLucene/search/DateFilter.h')
-rw-r--r--3rdparty/clucene/src/CLucene/search/DateFilter.h59
1 files changed, 59 insertions, 0 deletions
diff --git a/3rdparty/clucene/src/CLucene/search/DateFilter.h b/3rdparty/clucene/src/CLucene/search/DateFilter.h
new file mode 100644
index 000000000..b37272b84
--- /dev/null
+++ b/3rdparty/clucene/src/CLucene/search/DateFilter.h
@@ -0,0 +1,59 @@
+/*------------------------------------------------------------------------------
+* 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_DateFilter_
+#define _lucene_search_DateFilter_
+
+#if defined(_LUCENE_PRAGMA_ONCE)
+# pragma once
+#endif
+
+#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 "Filter.h"
+
+CL_NS_DEF(search)
+ /**
+ * A Filter that restricts search results to a range of time.
+ *
+ * <p>For this to work, documents must have been indexed with a
+ * {@link DateField}.
+ */
+ class DateFilter: public Filter {
+ private:
+ CL_NS(index)::Term* start;
+ CL_NS(index)::Term* end;
+
+ protected:
+ DateFilter(const DateFilter& copy);
+ public:
+ ~DateFilter();
+
+ /** Constructs a filter for field <code>f</code> matching times between
+ <code>from</code> and <code>to</code>. */
+ DateFilter(const TCHAR* f, int64_t from, int64_t to);
+
+ /** Constructs a filter for field <code>f</code> matching times before
+ <code>time</code>. */
+ static DateFilter* Before(const TCHAR* field, int64_t time) ;
+
+ /** Constructs a filter for field <code>f</code> matching times after
+ <code>time</code>. */
+ static DateFilter* After(const TCHAR* field, int64_t time) ;
+
+ /** 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