mhs-xapian 1.0.18a
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +3 -0
- data/AUTHORS +1 -0
- data/COPYING +340 -0
- data/ChangeLog +5876 -0
- data/HACKING +101 -0
- data/INSTALL +293 -0
- data/Makefile +722 -0
- data/Makefile.am +26 -0
- data/Makefile.in +722 -0
- data/NEWS +2110 -0
- data/README +59 -0
- data/Rakefile +51 -0
- data/TODO +47 -0
- data/aclocal.m4 +7675 -0
- data/config.guess +1501 -0
- data/config.h +56 -0
- data/config.h.in +55 -0
- data/config.status +1298 -0
- data/config.sub +1705 -0
- data/configure +18536 -0
- data/configure.ac +944 -0
- data/csharp/.deps/xapian_wrap.Plo +1 -0
- data/csharp/AssemblyInfo.cs +40 -0
- data/csharp/AssemblyInfo.cs.in +40 -0
- data/csharp/Auto.cs +46 -0
- data/csharp/BM25Weight.cs +107 -0
- data/csharp/BoolWeight.cs +103 -0
- data/csharp/Database.cs +275 -0
- data/csharp/DateValueRangeProcessor.cs +61 -0
- data/csharp/Document.cs +177 -0
- data/csharp/ESet.cs +94 -0
- data/csharp/ESetIterator.cs +117 -0
- data/csharp/Enquire.cs +274 -0
- data/csharp/ExpandDecider.cs +76 -0
- data/csharp/Flint.cs +58 -0
- data/csharp/InMemory.cs +46 -0
- data/csharp/MSet.cs +193 -0
- data/csharp/MSetIterator.cs +141 -0
- data/csharp/Makefile +868 -0
- data/csharp/Makefile.am +106 -0
- data/csharp/Makefile.in +868 -0
- data/csharp/MatchDecider.cs +76 -0
- data/csharp/MultiValueSorter.cs +63 -0
- data/csharp/NumberValueRangeProcessor.cs +61 -0
- data/csharp/PositionIterator.cs +101 -0
- data/csharp/PostingIterator.cs +125 -0
- data/csharp/Quartz.cs +58 -0
- data/csharp/Query.cs +150 -0
- data/csharp/QueryParser.cs +174 -0
- data/csharp/RSet.cs +102 -0
- data/csharp/Remote.cs +100 -0
- data/csharp/SWIGTYPE_p_std__string.cs +30 -0
- data/csharp/SWIGTYPE_p_std__vectorTXapian__Query_t.cs +30 -0
- data/csharp/SWIGTYPE_p_std__vectorTstd__string_t.cs +30 -0
- data/csharp/SimpleStopper.cs +64 -0
- data/csharp/SmokeTest.cs +178 -0
- data/csharp/Sorter.cs +76 -0
- data/csharp/Stem.cs +66 -0
- data/csharp/Stopper.cs +91 -0
- data/csharp/StringValueRangeProcessor.cs +53 -0
- data/csharp/TermGenerator.cs +152 -0
- data/csharp/TermIterator.cs +125 -0
- data/csharp/TradWeight.cs +107 -0
- data/csharp/ValueIterator.cs +102 -0
- data/csharp/ValueRangeProcessor.cs +76 -0
- data/csharp/Version.cs +60 -0
- data/csharp/Weight.cs +93 -0
- data/csharp/WritableDatabase.cs +153 -0
- data/csharp/Xapian.cs +65 -0
- data/csharp/XapianPINVOKE.cs +1527 -0
- data/csharp/docs/Makefile +450 -0
- data/csharp/docs/Makefile.am +16 -0
- data/csharp/docs/Makefile.in +450 -0
- data/csharp/docs/examples/SimpleExpand.cs +109 -0
- data/csharp/docs/examples/SimpleIndex.cs +71 -0
- data/csharp/docs/examples/SimpleSearch.cs +78 -0
- data/csharp/docs/index.html +211 -0
- data/csharp/util.i +233 -0
- data/csharp/xapian_wrap.cc +10338 -0
- data/csharp/xapian_wrap.h +93 -0
- data/depcomp +632 -0
- data/extconf.rb +20 -0
- data/generic/except.i +80 -0
- data/generic/generic.mk +48 -0
- data/install-sh +520 -0
- data/java-swig/.deps/xapian_wrap.Plo +1 -0
- data/java-swig/Auto.java +35 -0
- data/java-swig/BM25Weight.java +81 -0
- data/java-swig/BoolWeight.java +77 -0
- data/java-swig/Database.java +195 -0
- data/java-swig/DateValueRangeProcessor.java +51 -0
- data/java-swig/Document.java +135 -0
- data/java-swig/ESet.java +71 -0
- data/java-swig/ESetIterator.java +71 -0
- data/java-swig/Enquire.java +246 -0
- data/java-swig/ExpandDecider.java +59 -0
- data/java-swig/Flint.java +43 -0
- data/java-swig/InMemory.java +35 -0
- data/java-swig/MSet.java +143 -0
- data/java-swig/MSetIterator.java +87 -0
- data/java-swig/Makefile +781 -0
- data/java-swig/Makefile.am +132 -0
- data/java-swig/Makefile.in +781 -0
- data/java-swig/MatchDecider.java +59 -0
- data/java-swig/MultiValueSorter.java +51 -0
- data/java-swig/NumberValueRangeProcessor.java +51 -0
- data/java-swig/PositionIterator.java +63 -0
- data/java-swig/PostingIterator.java +83 -0
- data/java-swig/Quartz.java +43 -0
- data/java-swig/Query.java +189 -0
- data/java-swig/QueryParser.java +214 -0
- data/java-swig/RSet.java +79 -0
- data/java-swig/Remote.java +71 -0
- data/java-swig/SWIGTYPE_p_std__string.java +25 -0
- data/java-swig/SimpleStopper.java +51 -0
- data/java-swig/SmokeTest.java +161 -0
- data/java-swig/Sorter.java +59 -0
- data/java-swig/Stem.java +51 -0
- data/java-swig/Stopper.java +63 -0
- data/java-swig/StringValueRangeProcessor.java +43 -0
- data/java-swig/TermGenerator.java +158 -0
- data/java-swig/TermIterator.java +83 -0
- data/java-swig/TradWeight.java +81 -0
- data/java-swig/ValueIterator.java +67 -0
- data/java-swig/ValueRangeProcessor.java +59 -0
- data/java-swig/Version.java +47 -0
- data/java-swig/Weight.java +68 -0
- data/java-swig/WritableDatabase.java +123 -0
- data/java-swig/Xapian.java +39 -0
- data/java-swig/XapianConstants.java +15 -0
- data/java-swig/XapianJNI.java +508 -0
- data/java-swig/run-java-test +6 -0
- data/java-swig/xapian_wrap.cc +12594 -0
- data/java-swig/xapian_wrap.h +91 -0
- data/java/Makefile +660 -0
- data/java/Makefile.am +35 -0
- data/java/Makefile.in +660 -0
- data/java/README +76 -0
- data/java/SmokeTest.java +148 -0
- data/java/native/.deps/Database.Plo +1 -0
- data/java/native/.deps/Document.Plo +1 -0
- data/java/native/.deps/ESet.Plo +1 -0
- data/java/native/.deps/ESetIterator.Plo +1 -0
- data/java/native/.deps/Enquire.Plo +1 -0
- data/java/native/.deps/MSet.Plo +1 -0
- data/java/native/.deps/MSetIterator.Plo +1 -0
- data/java/native/.deps/PositionIterator.Plo +1 -0
- data/java/native/.deps/Query.Plo +1 -0
- data/java/native/.deps/RSet.Plo +1 -0
- data/java/native/.deps/Stem.Plo +1 -0
- data/java/native/.deps/TermIterator.Plo +1 -0
- data/java/native/.deps/WritableDatabase.Plo +1 -0
- data/java/native/.deps/org_xapian_XapianJNI.Plo +1 -0
- data/java/native/.deps/utils.Plo +1 -0
- data/java/native/Database.cc +222 -0
- data/java/native/Document.cc +173 -0
- data/java/native/ESet.cc +79 -0
- data/java/native/ESetIterator.cc +82 -0
- data/java/native/Enquire.cc +271 -0
- data/java/native/MSet.cc +169 -0
- data/java/native/MSetIterator.cc +107 -0
- data/java/native/Makefile +594 -0
- data/java/native/Makefile.am +51 -0
- data/java/native/Makefile.in +594 -0
- data/java/native/PositionIterator.cc +64 -0
- data/java/native/Query.cc +180 -0
- data/java/native/RSet.cc +98 -0
- data/java/native/Stem.cc +75 -0
- data/java/native/TermIterator.cc +107 -0
- data/java/native/WritableDatabase.cc +118 -0
- data/java/native/XapianObjectHolder.h +115 -0
- data/java/native/org_xapian_XapianJNI.cc +78 -0
- data/java/native/org_xapian_XapianJNI.h +1369 -0
- data/java/native/utils.cc +51 -0
- data/java/native/xapian_jni.h +116 -0
- data/java/org/xapian/Database.java +148 -0
- data/java/org/xapian/Document.java +135 -0
- data/java/org/xapian/ESet.java +66 -0
- data/java/org/xapian/ESetIterator.java +97 -0
- data/java/org/xapian/Enquire.java +136 -0
- data/java/org/xapian/ExpandDecider.java +30 -0
- data/java/org/xapian/MSet.java +104 -0
- data/java/org/xapian/MSetIterator.java +132 -0
- data/java/org/xapian/Makefile +580 -0
- data/java/org/xapian/Makefile.am +38 -0
- data/java/org/xapian/Makefile.in +580 -0
- data/java/org/xapian/MatchDecider.java +30 -0
- data/java/org/xapian/PositionIterator.java +89 -0
- data/java/org/xapian/Query.java +190 -0
- data/java/org/xapian/RSet.java +89 -0
- data/java/org/xapian/Stem.java +80 -0
- data/java/org/xapian/TermIterator.java +142 -0
- data/java/org/xapian/WritableDatabase.java +92 -0
- data/java/org/xapian/Xapian.java +114 -0
- data/java/org/xapian/XapianJNI.java +444 -0
- data/java/org/xapian/errors/AssertionError.java +40 -0
- data/java/org/xapian/errors/DatabaseCorruptError.java +40 -0
- data/java/org/xapian/errors/DatabaseError.java +40 -0
- data/java/org/xapian/errors/DatabaseLockError.java +40 -0
- data/java/org/xapian/errors/DatabaseModifiedError.java +40 -0
- data/java/org/xapian/errors/DatabaseOpeningError.java +40 -0
- data/java/org/xapian/errors/DocNotFoundError.java +40 -0
- data/java/org/xapian/errors/FeatureUnavailableError.java +40 -0
- data/java/org/xapian/errors/InternalError.java +40 -0
- data/java/org/xapian/errors/InvalidArgumentError.java +40 -0
- data/java/org/xapian/errors/InvalidOperationError.java +40 -0
- data/java/org/xapian/errors/LogicError.java +40 -0
- data/java/org/xapian/errors/Makefile +416 -0
- data/java/org/xapian/errors/Makefile.am +32 -0
- data/java/org/xapian/errors/Makefile.in +416 -0
- data/java/org/xapian/errors/NetworkError.java +40 -0
- data/java/org/xapian/errors/NetworkTimeoutError.java +40 -0
- data/java/org/xapian/errors/RangeError.java +40 -0
- data/java/org/xapian/errors/RuntimeError.java +40 -0
- data/java/org/xapian/errors/UnimplementedError.java +40 -0
- data/java/org/xapian/errors/XapianError.java +40 -0
- data/java/org/xapian/errors/XapianRuntimeError.java +49 -0
- data/java/org/xapian/examples/Makefile +391 -0
- data/java/org/xapian/examples/Makefile.am +8 -0
- data/java/org/xapian/examples/Makefile.in +391 -0
- data/java/org/xapian/examples/SimpleIndex.java +68 -0
- data/java/org/xapian/examples/SimpleSearch.java +71 -0
- data/java/run-java-test +6 -0
- data/libtool +7618 -0
- data/ltmain.sh +6956 -0
- data/mhs-xapian.gemspec +368 -0
- data/missing +378 -0
- data/php/.deps/xapian_wrap.Plo +1 -0
- data/php/Makefile +871 -0
- data/php/Makefile.am +82 -0
- data/php/Makefile.in +871 -0
- data/php/docs/Makefile +453 -0
- data/php/docs/Makefile.am +19 -0
- data/php/docs/Makefile.in +453 -0
- data/php/docs/examples/simpleexpand.php4 +108 -0
- data/php/docs/examples/simpleexpand.php5 +104 -0
- data/php/docs/examples/simpleindex.php4 +76 -0
- data/php/docs/examples/simpleindex.php5 +73 -0
- data/php/docs/examples/simplesearch.php4 +75 -0
- data/php/docs/examples/simplesearch.php5 +72 -0
- data/php/docs/index.html +313 -0
- data/php/except.i +98 -0
- data/php/php4/php_xapian.h +323 -0
- data/php/php4/xapian.php +32 -0
- data/php/php4/xapian_wrap.cc +27656 -0
- data/php/php5/php_xapian.h +319 -0
- data/php/php5/xapian.php +1566 -0
- data/php/php5/xapian_wrap.cc +24330 -0
- data/php/smoketest.php +246 -0
- data/php/smoketest4.php +84 -0
- data/php/smoketest5.php +79 -0
- data/php/util.i +187 -0
- data/python/.deps/xapian_wrap.Plo +1 -0
- data/python/Makefile +891 -0
- data/python/Makefile.am +105 -0
- data/python/Makefile.in +891 -0
- data/python/doccomments.i +5134 -0
- data/python/docs/Makefile +448 -0
- data/python/docs/Makefile.am +14 -0
- data/python/docs/Makefile.in +448 -0
- data/python/docs/examples/simpleexpand.py +98 -0
- data/python/docs/examples/simpleindex.py +65 -0
- data/python/docs/examples/simplematchdecider.py +78 -0
- data/python/docs/examples/simplesearch.py +65 -0
- data/python/docs/index.html +420 -0
- data/python/except.i +290 -0
- data/python/extra.i +1048 -0
- data/python/extracomments.i +28 -0
- data/python/generate-python-exceptions +189 -0
- data/python/generate-python-exceptions.in +189 -0
- data/python/modern/xapian.py +5662 -0
- data/python/modern/xapian_wrap.cc +35170 -0
- data/python/modern/xapian_wrap.h +244 -0
- data/python/pythontest.py +1110 -0
- data/python/smoketest.py +328 -0
- data/python/testsuite.py +382 -0
- data/python/util.i +517 -0
- data/ruby/.deps/xapian_wrap.Plo +494 -0
- data/ruby/.libs/_xapian.bundle +0 -0
- data/ruby/.libs/_xapian.bundle.dSYM/Contents/Info.plist +25 -0
- data/ruby/.libs/_xapian.bundle.dSYM/Contents/Resources/DWARF/_xapian.bundle +0 -0
- data/ruby/.libs/_xapian.la +35 -0
- data/ruby/.libs/_xapian.lai +35 -0
- data/ruby/Makefile +854 -0
- data/ruby/Makefile.am +62 -0
- data/ruby/Makefile.in +854 -0
- data/ruby/_xapian.la +35 -0
- data/ruby/docs/Makefile +487 -0
- data/ruby/docs/Makefile.am +50 -0
- data/ruby/docs/Makefile.in +487 -0
- data/ruby/docs/examples/simpleexpand.rb +98 -0
- data/ruby/docs/examples/simpleindex.rb +60 -0
- data/ruby/docs/examples/simplematchdecider.rb +74 -0
- data/ruby/docs/examples/simplesearch.rb +63 -0
- data/ruby/docs/index.html +197 -0
- data/ruby/smoketest.rb +211 -0
- data/ruby/util.i +232 -0
- data/ruby/xapian.rb +280 -0
- data/ruby/xapian_wrap.cc +25837 -0
- data/ruby/xapian_wrap.h +65 -0
- data/ruby/xapian_wrap.lo +12 -0
- data/skiptest +2 -0
- data/stamp-h1 +1 -0
- data/tcl8/.deps/xapian_wrap.Plo +1 -0
- data/tcl8/Makefile +835 -0
- data/tcl8/Makefile.am +49 -0
- data/tcl8/Makefile.in +835 -0
- data/tcl8/docs/Makefile +448 -0
- data/tcl8/docs/Makefile.am +14 -0
- data/tcl8/docs/Makefile.in +448 -0
- data/tcl8/docs/examples/simpleexpand.tcl +104 -0
- data/tcl8/docs/examples/simpleindex.tcl +68 -0
- data/tcl8/docs/examples/simplesearch.tcl +66 -0
- data/tcl8/docs/index.html +208 -0
- data/tcl8/except.i +48 -0
- data/tcl8/pkgIndex.tcl +1 -0
- data/tcl8/pkgIndex.tcl.in +1 -0
- data/tcl8/run-tcl-test +15 -0
- data/tcl8/runtest.tcl +29 -0
- data/tcl8/smoketest.tcl +155 -0
- data/tcl8/util.i +76 -0
- data/tcl8/xapian_wrap.cc +20900 -0
- data/xapian-bindings.spec +206 -0
- data/xapian-bindings.spec.in +206 -0
- data/xapian-version.h +1 -0
- data/xapian-version.h.in +1 -0
- data/xapian.i +939 -0
- metadata +395 -0
@@ -0,0 +1,30 @@
|
|
1
|
+
/* ----------------------------------------------------------------------------
|
2
|
+
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
+
* Version 1.3.32
|
4
|
+
*
|
5
|
+
* Do not make changes to this file unless you know what you are doing--modify
|
6
|
+
* the SWIG interface file instead.
|
7
|
+
* ----------------------------------------------------------------------------- */
|
8
|
+
|
9
|
+
namespace Xapian {
|
10
|
+
|
11
|
+
using System;
|
12
|
+
using System.Runtime.InteropServices;
|
13
|
+
|
14
|
+
public class SWIGTYPE_p_std__string {
|
15
|
+
private HandleRef swigCPtr;
|
16
|
+
|
17
|
+
internal SWIGTYPE_p_std__string(IntPtr cPtr, bool futureUse) {
|
18
|
+
swigCPtr = new HandleRef(this, cPtr);
|
19
|
+
}
|
20
|
+
|
21
|
+
protected SWIGTYPE_p_std__string() {
|
22
|
+
swigCPtr = new HandleRef(null, IntPtr.Zero);
|
23
|
+
}
|
24
|
+
|
25
|
+
internal static HandleRef getCPtr(SWIGTYPE_p_std__string obj) {
|
26
|
+
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
|
30
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
/* ----------------------------------------------------------------------------
|
2
|
+
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
+
* Version 1.3.32
|
4
|
+
*
|
5
|
+
* Do not make changes to this file unless you know what you are doing--modify
|
6
|
+
* the SWIG interface file instead.
|
7
|
+
* ----------------------------------------------------------------------------- */
|
8
|
+
|
9
|
+
namespace Xapian {
|
10
|
+
|
11
|
+
using System;
|
12
|
+
using System.Runtime.InteropServices;
|
13
|
+
|
14
|
+
public class SWIGTYPE_p_std__vectorTXapian__Query_t {
|
15
|
+
private HandleRef swigCPtr;
|
16
|
+
|
17
|
+
internal SWIGTYPE_p_std__vectorTXapian__Query_t(IntPtr cPtr, bool futureUse) {
|
18
|
+
swigCPtr = new HandleRef(this, cPtr);
|
19
|
+
}
|
20
|
+
|
21
|
+
protected SWIGTYPE_p_std__vectorTXapian__Query_t() {
|
22
|
+
swigCPtr = new HandleRef(null, IntPtr.Zero);
|
23
|
+
}
|
24
|
+
|
25
|
+
internal static HandleRef getCPtr(SWIGTYPE_p_std__vectorTXapian__Query_t obj) {
|
26
|
+
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
|
30
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
/* ----------------------------------------------------------------------------
|
2
|
+
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
+
* Version 1.3.32
|
4
|
+
*
|
5
|
+
* Do not make changes to this file unless you know what you are doing--modify
|
6
|
+
* the SWIG interface file instead.
|
7
|
+
* ----------------------------------------------------------------------------- */
|
8
|
+
|
9
|
+
namespace Xapian {
|
10
|
+
|
11
|
+
using System;
|
12
|
+
using System.Runtime.InteropServices;
|
13
|
+
|
14
|
+
public class SWIGTYPE_p_std__vectorTstd__string_t {
|
15
|
+
private HandleRef swigCPtr;
|
16
|
+
|
17
|
+
internal SWIGTYPE_p_std__vectorTstd__string_t(IntPtr cPtr, bool futureUse) {
|
18
|
+
swigCPtr = new HandleRef(this, cPtr);
|
19
|
+
}
|
20
|
+
|
21
|
+
protected SWIGTYPE_p_std__vectorTstd__string_t() {
|
22
|
+
swigCPtr = new HandleRef(null, IntPtr.Zero);
|
23
|
+
}
|
24
|
+
|
25
|
+
internal static HandleRef getCPtr(SWIGTYPE_p_std__vectorTstd__string_t obj) {
|
26
|
+
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
|
30
|
+
}
|
@@ -0,0 +1,64 @@
|
|
1
|
+
/* ----------------------------------------------------------------------------
|
2
|
+
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
+
* Version 1.3.32
|
4
|
+
*
|
5
|
+
* Do not make changes to this file unless you know what you are doing--modify
|
6
|
+
* the SWIG interface file instead.
|
7
|
+
* ----------------------------------------------------------------------------- */
|
8
|
+
|
9
|
+
namespace Xapian {
|
10
|
+
|
11
|
+
using System;
|
12
|
+
using System.Runtime.InteropServices;
|
13
|
+
|
14
|
+
public class SimpleStopper : Stopper {
|
15
|
+
private HandleRef swigCPtr;
|
16
|
+
|
17
|
+
internal SimpleStopper(IntPtr cPtr, bool cMemoryOwn) : base(XapianPINVOKE.SimpleStopperUpcast(cPtr), cMemoryOwn) {
|
18
|
+
swigCPtr = new HandleRef(this, cPtr);
|
19
|
+
}
|
20
|
+
|
21
|
+
internal static HandleRef getCPtr(SimpleStopper obj) {
|
22
|
+
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
|
23
|
+
}
|
24
|
+
|
25
|
+
~SimpleStopper() {
|
26
|
+
Dispose();
|
27
|
+
}
|
28
|
+
|
29
|
+
public override void Dispose() {
|
30
|
+
lock(this) {
|
31
|
+
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
|
32
|
+
swigCMemOwn = false;
|
33
|
+
XapianPINVOKE.delete_SimpleStopper(swigCPtr);
|
34
|
+
}
|
35
|
+
swigCPtr = new HandleRef(null, IntPtr.Zero);
|
36
|
+
GC.SuppressFinalize(this);
|
37
|
+
base.Dispose();
|
38
|
+
}
|
39
|
+
}
|
40
|
+
|
41
|
+
public SimpleStopper() : this(XapianPINVOKE.new_SimpleStopper(), true) {
|
42
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
43
|
+
}
|
44
|
+
|
45
|
+
public void Add(string word) {
|
46
|
+
XapianPINVOKE.SimpleStopper_Add(swigCPtr, word);
|
47
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
48
|
+
}
|
49
|
+
|
50
|
+
public override bool Apply(string term) {
|
51
|
+
bool ret = XapianPINVOKE.SimpleStopper_Apply(swigCPtr, term);
|
52
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
53
|
+
return ret;
|
54
|
+
}
|
55
|
+
|
56
|
+
public override string GetDescription() {
|
57
|
+
string ret = XapianPINVOKE.SimpleStopper_GetDescription(swigCPtr);
|
58
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
59
|
+
return ret;
|
60
|
+
}
|
61
|
+
|
62
|
+
}
|
63
|
+
|
64
|
+
}
|
data/csharp/SmokeTest.cs
ADDED
@@ -0,0 +1,178 @@
|
|
1
|
+
// Simple test that we can load the xapian module and run a simple test
|
2
|
+
//
|
3
|
+
// Copyright (C) 2004,2005,2006,2007 Olly Betts
|
4
|
+
//
|
5
|
+
// This program is free software; you can redistribute it and/or
|
6
|
+
// modify it under the terms of the GNU General Public License as
|
7
|
+
// published by the Free Software Foundation; either version 2 of the
|
8
|
+
// License, or (at your option) any later version.
|
9
|
+
//
|
10
|
+
// This program is distributed in the hope that it will be useful,
|
11
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
+
// GNU General Public License for more details.
|
14
|
+
//
|
15
|
+
// You should have received a copy of the GNU General Public License
|
16
|
+
// along with this program; if not, write to the Free Software
|
17
|
+
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
|
18
|
+
// USA
|
19
|
+
|
20
|
+
// The Portable.NET compiler has a bug which prevents it finding static
|
21
|
+
// member functions such as Xapian.Version.Major():
|
22
|
+
//
|
23
|
+
// http://savannah.gnu.org/bugs/?func=detailitem&item_id=12231
|
24
|
+
//
|
25
|
+
// The bug is fixed in Portable.NET CVS HEAD - the fix should make it
|
26
|
+
// into Portable.NET 0.8.2.
|
27
|
+
//
|
28
|
+
// The workaround for now is to add an explicit "using Xapian;" here:
|
29
|
+
using Xapian;
|
30
|
+
|
31
|
+
class TestMatchDecider : Xapian.MatchDecider {
|
32
|
+
public override bool Apply(Xapian.Document doc) {
|
33
|
+
return (doc.GetValue(0) == "yes");
|
34
|
+
}
|
35
|
+
}
|
36
|
+
|
37
|
+
class SmokeTest {
|
38
|
+
public static void Main() {
|
39
|
+
try {
|
40
|
+
// Test the version number reporting functions give plausible
|
41
|
+
// results.
|
42
|
+
string v = "";
|
43
|
+
v += Xapian.Version.Major();
|
44
|
+
v += ".";
|
45
|
+
v += Xapian.Version.Minor();
|
46
|
+
v += ".";
|
47
|
+
v += Xapian.Version.Revision();
|
48
|
+
string v2 = Xapian.Version.String();
|
49
|
+
if (v != v2) {
|
50
|
+
System.Console.WriteLine("Unexpected version output (" + v + " != " + v2 + ")");
|
51
|
+
System.Environment.Exit(1);
|
52
|
+
}
|
53
|
+
|
54
|
+
Xapian.Stem stem = new Xapian.Stem("english");
|
55
|
+
Xapian.Document doc = new Xapian.Document();
|
56
|
+
// Currently SWIG doesn't generate zero-byte clean code for
|
57
|
+
// transferring strings between C# and C++.
|
58
|
+
/*
|
59
|
+
doc.SetData("a\0b");
|
60
|
+
if (doc.GetData() == "a") {
|
61
|
+
System.Console.WriteLine("GetData+SetData truncates at a zero byte");
|
62
|
+
System.Environment.Exit(1);
|
63
|
+
}
|
64
|
+
if (doc.GetData() != "a\0b") {
|
65
|
+
System.Console.WriteLine("GetData+SetData doesn't transparently handle a zero byte");
|
66
|
+
System.Environment.Exit(1);
|
67
|
+
}
|
68
|
+
*/
|
69
|
+
doc.SetData("is there anybody out there?");
|
70
|
+
doc.AddTerm("XYzzy");
|
71
|
+
doc.AddPosting(stem.Apply("is"), 1);
|
72
|
+
doc.AddPosting(stem.Apply("there"), 2);
|
73
|
+
doc.AddPosting(stem.Apply("anybody"), 3);
|
74
|
+
doc.AddPosting(stem.Apply("out"), 4);
|
75
|
+
doc.AddPosting(stem.Apply("there"), 5);
|
76
|
+
|
77
|
+
Xapian.WritableDatabase db = Xapian.InMemory.Open();
|
78
|
+
db.AddDocument(doc);
|
79
|
+
if (db.GetDocCount() != 1) {
|
80
|
+
System.Environment.Exit(1);
|
81
|
+
}
|
82
|
+
|
83
|
+
if (doc.TermListCount() != 5) {
|
84
|
+
System.Environment.Exit(1);
|
85
|
+
}
|
86
|
+
int count = 0;
|
87
|
+
Xapian.TermIterator i = doc.TermListBegin();
|
88
|
+
while (i != doc.TermListEnd()) {
|
89
|
+
++count;
|
90
|
+
++i;
|
91
|
+
}
|
92
|
+
if (count != 5) {
|
93
|
+
System.Environment.Exit(1);
|
94
|
+
}
|
95
|
+
|
96
|
+
// Check exception handling for Xapian::DocNotFoundError.
|
97
|
+
try {
|
98
|
+
Xapian.Document doc2 = db.GetDocument(2);
|
99
|
+
System.Console.WriteLine("Retrieved non-existent document: " + doc2.ToString());
|
100
|
+
System.Environment.Exit(1);
|
101
|
+
} catch (System.Exception e) {
|
102
|
+
// We expect DocNotFoundError
|
103
|
+
if (e.Message.Substring(0, 16) != "DocNotFoundError") {
|
104
|
+
System.Console.WriteLine("Unexpected exception from accessing non-existent document: " + e.Message);
|
105
|
+
System.Environment.Exit(1);
|
106
|
+
}
|
107
|
+
}
|
108
|
+
|
109
|
+
// Check QueryParser parsing error.
|
110
|
+
try {
|
111
|
+
Xapian.QueryParser qp = new Xapian.QueryParser();
|
112
|
+
qp.ParseQuery("test AND");
|
113
|
+
System.Console.WriteLine("Successfully parsed bad query");
|
114
|
+
System.Environment.Exit(1);
|
115
|
+
} catch (System.Exception e) {
|
116
|
+
if (e.Message != "QueryParserError: Syntax: <expression> AND <expression>") {
|
117
|
+
System.Console.WriteLine("Exception string not as expected, got: '" + e.Message + "'");
|
118
|
+
System.Environment.Exit(1);
|
119
|
+
}
|
120
|
+
}
|
121
|
+
|
122
|
+
// Check that OP_ELITE_SET works (in 0.9.6 and earlier it had the
|
123
|
+
// wrong value in C#).
|
124
|
+
try {
|
125
|
+
Xapian.Query foo = new Xapian.Query(Xapian.Query.op.OP_OR, "hello", "world");
|
126
|
+
Xapian.Query foo2 = new Xapian.Query(Xapian.Query.op.OP_ELITE_SET, foo);
|
127
|
+
foo = foo2; // Avoid "unused variable" warning.
|
128
|
+
} catch (System.Exception e) {
|
129
|
+
System.Console.WriteLine("Using OP_ELITE_SET cause exception '" + e.Message + "'");
|
130
|
+
System.Environment.Exit(1);
|
131
|
+
}
|
132
|
+
|
133
|
+
// Feature test for MatchDecider.
|
134
|
+
doc = new Xapian.Document();
|
135
|
+
doc.SetData("Two");
|
136
|
+
doc.AddPosting(stem.Apply("out"), 1);
|
137
|
+
doc.AddPosting(stem.Apply("source"), 2);
|
138
|
+
doc.AddValue(0, "yes");
|
139
|
+
db.AddDocument(doc);
|
140
|
+
|
141
|
+
Xapian.Query query = new Xapian.Query(stem.Apply("out"));
|
142
|
+
Xapian.Enquire enquire = new Xapian.Enquire(db);
|
143
|
+
enquire.SetQuery(query);
|
144
|
+
Xapian.MSet mset = enquire.GetMSet(0, 10, null, new TestMatchDecider());
|
145
|
+
if (mset.Size() != 1) {
|
146
|
+
System.Console.WriteLine("MatchDecider found " + mset.Size().ToString() + " documents, expected 1");
|
147
|
+
System.Environment.Exit(1);
|
148
|
+
}
|
149
|
+
if (mset.GetDocId(0) != 2) {
|
150
|
+
System.Console.WriteLine("MatchDecider mset has wrong docid in");
|
151
|
+
System.Environment.Exit(1);
|
152
|
+
}
|
153
|
+
|
154
|
+
|
155
|
+
// Test setting and getting metadata
|
156
|
+
if (db.GetMetadata("Foo") != "") {
|
157
|
+
System.Console.WriteLine("db.GetMetadata(\"Foo\") returned wrong value \"" + db.GetMetadata("Foo") + "\" - expected \"\"");
|
158
|
+
System.Environment.Exit(1);
|
159
|
+
}
|
160
|
+
db.SetMetadata("Foo", "Foo");
|
161
|
+
if (db.GetMetadata("Foo") != "Foo") {
|
162
|
+
System.Console.WriteLine("db.GetMetadata(\"Foo\") returned wrong value \"" + db.GetMetadata("Foo") + "\" - expected \"Foo\"");
|
163
|
+
System.Environment.Exit(1);
|
164
|
+
}
|
165
|
+
|
166
|
+
// Test OP_SCALE_WEIGHT and corresponding constructor
|
167
|
+
Xapian.Query query4 = new Xapian.Query(Xapian.Query.op.OP_SCALE_WEIGHT, new Xapian.Query("foo"), 5.0);
|
168
|
+
if (query4.GetDescription() != "Xapian::Query(5 * foo)") {
|
169
|
+
System.Console.WriteLine("Unexpected query4.GetDescription()");
|
170
|
+
System.Environment.Exit(1);
|
171
|
+
}
|
172
|
+
|
173
|
+
} catch (System.Exception e) {
|
174
|
+
System.Console.WriteLine("Exception: " + e.ToString());
|
175
|
+
System.Environment.Exit(1);
|
176
|
+
}
|
177
|
+
}
|
178
|
+
}
|
data/csharp/Sorter.cs
ADDED
@@ -0,0 +1,76 @@
|
|
1
|
+
/* ----------------------------------------------------------------------------
|
2
|
+
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
+
* Version 1.3.32
|
4
|
+
*
|
5
|
+
* Do not make changes to this file unless you know what you are doing--modify
|
6
|
+
* the SWIG interface file instead.
|
7
|
+
* ----------------------------------------------------------------------------- */
|
8
|
+
|
9
|
+
namespace Xapian {
|
10
|
+
|
11
|
+
using System;
|
12
|
+
using System.Runtime.InteropServices;
|
13
|
+
|
14
|
+
public class Sorter : IDisposable {
|
15
|
+
private HandleRef swigCPtr;
|
16
|
+
protected bool swigCMemOwn;
|
17
|
+
|
18
|
+
internal Sorter(IntPtr cPtr, bool cMemoryOwn) {
|
19
|
+
swigCMemOwn = cMemoryOwn;
|
20
|
+
swigCPtr = new HandleRef(this, cPtr);
|
21
|
+
}
|
22
|
+
|
23
|
+
internal static HandleRef getCPtr(Sorter obj) {
|
24
|
+
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
|
25
|
+
}
|
26
|
+
|
27
|
+
~Sorter() {
|
28
|
+
Dispose();
|
29
|
+
}
|
30
|
+
|
31
|
+
public virtual void Dispose() {
|
32
|
+
lock(this) {
|
33
|
+
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
|
34
|
+
swigCMemOwn = false;
|
35
|
+
XapianPINVOKE.delete_Sorter(swigCPtr);
|
36
|
+
}
|
37
|
+
swigCPtr = new HandleRef(null, IntPtr.Zero);
|
38
|
+
GC.SuppressFinalize(this);
|
39
|
+
}
|
40
|
+
}
|
41
|
+
|
42
|
+
public virtual string Apply(Document doc) {
|
43
|
+
string ret = XapianPINVOKE.Sorter_Apply(swigCPtr, Document.getCPtr(doc));
|
44
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
45
|
+
return ret;
|
46
|
+
}
|
47
|
+
|
48
|
+
public Sorter() : this(XapianPINVOKE.new_Sorter(), true) {
|
49
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
50
|
+
SwigDirectorConnect();
|
51
|
+
}
|
52
|
+
|
53
|
+
private void SwigDirectorConnect() {
|
54
|
+
if (SwigDerivedClassHasMethod("Apply", swigMethodTypes0))
|
55
|
+
swigDelegate0 = new SwigDelegateSorter_0(SwigDirectorApply);
|
56
|
+
XapianPINVOKE.Sorter_director_connect(swigCPtr, swigDelegate0);
|
57
|
+
}
|
58
|
+
|
59
|
+
private bool SwigDerivedClassHasMethod(string methodName, Type[] methodTypes) {
|
60
|
+
System.Reflection.MethodInfo methodInfo = this.GetType().GetMethod(methodName, System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance, null, methodTypes, null);
|
61
|
+
bool hasDerivedMethod = methodInfo.DeclaringType.IsSubclassOf(typeof(Sorter));
|
62
|
+
return hasDerivedMethod;
|
63
|
+
}
|
64
|
+
|
65
|
+
private string SwigDirectorApply(IntPtr doc) {
|
66
|
+
return Apply(new Document(doc, false));
|
67
|
+
}
|
68
|
+
|
69
|
+
public delegate string SwigDelegateSorter_0(IntPtr doc);
|
70
|
+
|
71
|
+
private SwigDelegateSorter_0 swigDelegate0;
|
72
|
+
|
73
|
+
private static Type[] swigMethodTypes0 = new Type[] { typeof(Document) };
|
74
|
+
}
|
75
|
+
|
76
|
+
}
|
data/csharp/Stem.cs
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
/* ----------------------------------------------------------------------------
|
2
|
+
* This file was automatically generated by SWIG (http://www.swig.org).
|
3
|
+
* Version 1.3.32
|
4
|
+
*
|
5
|
+
* Do not make changes to this file unless you know what you are doing--modify
|
6
|
+
* the SWIG interface file instead.
|
7
|
+
* ----------------------------------------------------------------------------- */
|
8
|
+
|
9
|
+
namespace Xapian {
|
10
|
+
|
11
|
+
using System;
|
12
|
+
using System.Runtime.InteropServices;
|
13
|
+
|
14
|
+
public class Stem : IDisposable {
|
15
|
+
private HandleRef swigCPtr;
|
16
|
+
protected bool swigCMemOwn;
|
17
|
+
|
18
|
+
internal Stem(IntPtr cPtr, bool cMemoryOwn) {
|
19
|
+
swigCMemOwn = cMemoryOwn;
|
20
|
+
swigCPtr = new HandleRef(this, cPtr);
|
21
|
+
}
|
22
|
+
|
23
|
+
internal static HandleRef getCPtr(Stem obj) {
|
24
|
+
return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr;
|
25
|
+
}
|
26
|
+
|
27
|
+
~Stem() {
|
28
|
+
Dispose();
|
29
|
+
}
|
30
|
+
|
31
|
+
public virtual void Dispose() {
|
32
|
+
lock(this) {
|
33
|
+
if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) {
|
34
|
+
swigCMemOwn = false;
|
35
|
+
XapianPINVOKE.delete_Stem(swigCPtr);
|
36
|
+
}
|
37
|
+
swigCPtr = new HandleRef(null, IntPtr.Zero);
|
38
|
+
GC.SuppressFinalize(this);
|
39
|
+
}
|
40
|
+
}
|
41
|
+
|
42
|
+
public Stem(string language) : this(XapianPINVOKE.new_Stem(language), true) {
|
43
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
44
|
+
}
|
45
|
+
|
46
|
+
public string Apply(string word) {
|
47
|
+
string ret = XapianPINVOKE.Stem_Apply(swigCPtr, word);
|
48
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
49
|
+
return ret;
|
50
|
+
}
|
51
|
+
|
52
|
+
public string GetDescription() {
|
53
|
+
string ret = XapianPINVOKE.Stem_GetDescription(swigCPtr);
|
54
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
55
|
+
return ret;
|
56
|
+
}
|
57
|
+
|
58
|
+
public static string GetAvailableLanguages() {
|
59
|
+
string ret = XapianPINVOKE.Stem_GetAvailableLanguages();
|
60
|
+
if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
|
61
|
+
return ret;
|
62
|
+
}
|
63
|
+
|
64
|
+
}
|
65
|
+
|
66
|
+
}
|