/usr/include/CLucene/document/DateField.h is in libclucene-dev 2.3.3.4+dfsg-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 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_document_DateField_
#define _lucene_document_DateField_
CL_NS_DEF(document)
//here are some constants used throughout clucene
//make date strings long enough to last a millenium
#define DATEFIELD_DATE_MAX _ILONGLONG(31536000000000) //1000L*365*24*60*60*1000
/**
* Provides support for converting dates to strings and vice-versa.
* The strings are structured so that lexicographic sorting orders by date,
* which makes them suitable for use as field values and search terms.
*
* <P>Note that this class saves dates with millisecond granularity,
* which is bad for {@link lucene::search::RangeQuery} and {@link lucene::search::PrefixQuery}, as those
* queries are expanded to a BooleanQuery with a potentially large number
* of terms when searching. Thus you might want to use
* {@link lucene::document::DateTools} instead.
*
* <P>
* Note: dates before 1970 cannot be used, and therefore cannot be
* indexed when using this class. See {@link lucene::document::DateTools} for an
* alternative without such a limitation.
*
* @deprecated If you build a new index, use {@link lucene::document::DateTools} instead.
* This class is included for use with existing indices and will be removed in a future release.
*/
class CLUCENE_EXPORT DateField {
public:
virtual ~DateField();
/**
* Converts a millisecond time to a string suitable for indexing.
* @throws RuntimeException if the time specified in the
* method argument is negative, that is, before 1970
*/
_CL_DEPRECATED( DateTools ) static TCHAR* timeToString(const int64_t time);
/**
* Converts a millisecond time to a string suitable for indexing.
* @throws CL_ERR_IllegalArgument if the time specified in the
* method argument is negative, that is, before 1970
* @param str must be a character array DATEFIELD_DATE_LEN+1 or longer
*/
_CL_DEPRECATED( DateTools ) static void timeToString(const int64_t time, TCHAR* str);
/** Converts a string-encoded date into a millisecond time. */
_CL_DEPRECATED( DateTools ) static int64_t stringToTime(const TCHAR* s);
};
CL_NS_END
#endif
|