1 /* ---------------------------------------------------------------------------- 2 * This file was automatically generated by SWIG (http://www.swig.org). 3 * Version 2.0.5 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 QueryParser : IDisposable { 15 private HandleRef swigCPtr; 16 protected bool swigCMemOwn; 17 QueryParser(IntPtr cPtr, bool cMemoryOwn)18 internal QueryParser(IntPtr cPtr, bool cMemoryOwn) { 19 swigCMemOwn = cMemoryOwn; 20 swigCPtr = new HandleRef(this, cPtr); 21 } 22 getCPtr(QueryParser obj)23 internal static HandleRef getCPtr(QueryParser obj) { 24 return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; 25 } 26 ~QueryParser()27 ~QueryParser() { 28 Dispose(); 29 } 30 Dispose()31 public virtual void Dispose() { 32 lock(this) { 33 if (swigCPtr.Handle != IntPtr.Zero) { 34 if (swigCMemOwn) { 35 swigCMemOwn = false; 36 XapianPINVOKE.delete_QueryParser(swigCPtr); 37 } 38 swigCPtr = new HandleRef(null, IntPtr.Zero); 39 } 40 GC.SuppressFinalize(this); 41 } 42 } 43 QueryParser()44 public QueryParser() : this(XapianPINVOKE.new_QueryParser(), true) { 45 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 46 } 47 SetStemmer(Stem stemmer)48 public void SetStemmer(Stem stemmer) { 49 XapianPINVOKE.QueryParser_SetStemmer(swigCPtr, Stem.getCPtr(stemmer)); 50 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 51 } 52 SetStemmingStrategy(QueryParser.stem_strategy strategy)53 public void SetStemmingStrategy(QueryParser.stem_strategy strategy) { 54 XapianPINVOKE.QueryParser_SetStemmingStrategy(swigCPtr, (int)strategy); 55 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 56 } 57 SetStopper(Stopper stop)58 public void SetStopper(Stopper stop) { 59 XapianPINVOKE.QueryParser_SetStopper__SWIG_0(swigCPtr, Stopper.getCPtr(stop)); 60 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 61 } 62 SetStopper()63 public void SetStopper() { 64 XapianPINVOKE.QueryParser_SetStopper__SWIG_1(swigCPtr); 65 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 66 } 67 SetDefaultOp(Query.op default_op)68 public void SetDefaultOp(Query.op default_op) { 69 XapianPINVOKE.QueryParser_SetDefaultOp(swigCPtr, (int)default_op); 70 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 71 } 72 GetDefaultOp()73 public Query.op GetDefaultOp() { 74 Query.op ret = (Query.op)XapianPINVOKE.QueryParser_GetDefaultOp(swigCPtr); 75 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 76 return ret; 77 } 78 SetDatabase(Database db)79 public void SetDatabase(Database db) { 80 XapianPINVOKE.QueryParser_SetDatabase(swigCPtr, Database.getCPtr(db)); 81 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 82 } 83 SetMaxWildcardExpansion(uint limit)84 public void SetMaxWildcardExpansion(uint limit) { 85 XapianPINVOKE.QueryParser_SetMaxWildcardExpansion(swigCPtr, limit); 86 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 87 } 88 ParseQuery(string query_string, uint flags, string default_prefix)89 public Query ParseQuery(string query_string, uint flags, string default_prefix) { 90 Query ret = new Query(XapianPINVOKE.QueryParser_ParseQuery__SWIG_0(swigCPtr, query_string, flags, default_prefix), true); 91 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 92 return ret; 93 } 94 ParseQuery(string query_string, uint flags)95 public Query ParseQuery(string query_string, uint flags) { 96 Query ret = new Query(XapianPINVOKE.QueryParser_ParseQuery__SWIG_1(swigCPtr, query_string, flags), true); 97 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 98 return ret; 99 } 100 ParseQuery(string query_string)101 public Query ParseQuery(string query_string) { 102 Query ret = new Query(XapianPINVOKE.QueryParser_ParseQuery__SWIG_2(swigCPtr, query_string), true); 103 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 104 return ret; 105 } 106 AddPrefix(string field, string prefix)107 public void AddPrefix(string field, string prefix) { 108 XapianPINVOKE.QueryParser_AddPrefix(swigCPtr, field, prefix); 109 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 110 } 111 AddBooleanPrefix(string field, string prefix, bool exclusive)112 public void AddBooleanPrefix(string field, string prefix, bool exclusive) { 113 XapianPINVOKE.QueryParser_AddBooleanPrefix__SWIG_0(swigCPtr, field, prefix, exclusive); 114 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 115 } 116 AddBooleanPrefix(string field, string prefix)117 public void AddBooleanPrefix(string field, string prefix) { 118 XapianPINVOKE.QueryParser_AddBooleanPrefix__SWIG_1(swigCPtr, field, prefix); 119 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 120 } 121 StopListBegin()122 public TermIterator StopListBegin() { 123 TermIterator ret = new TermIterator(XapianPINVOKE.QueryParser_StopListBegin(swigCPtr), true); 124 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 125 return ret; 126 } 127 StopListEnd()128 public TermIterator StopListEnd() { 129 TermIterator ret = new TermIterator(XapianPINVOKE.QueryParser_StopListEnd(swigCPtr), true); 130 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 131 return ret; 132 } 133 UnstemBegin(string term)134 public TermIterator UnstemBegin(string term) { 135 TermIterator ret = new TermIterator(XapianPINVOKE.QueryParser_UnstemBegin(swigCPtr, term), true); 136 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 137 return ret; 138 } 139 UnstemEnd(string arg0)140 public TermIterator UnstemEnd(string arg0) { 141 TermIterator ret = new TermIterator(XapianPINVOKE.QueryParser_UnstemEnd(swigCPtr, arg0), true); 142 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 143 return ret; 144 } 145 AddValuerangeprocessor(ValueRangeProcessor vrproc)146 public void AddValuerangeprocessor(ValueRangeProcessor vrproc) { 147 XapianPINVOKE.QueryParser_AddValuerangeprocessor(swigCPtr, ValueRangeProcessor.getCPtr(vrproc)); 148 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 149 } 150 GetCorrectedQueryString()151 public string GetCorrectedQueryString() { 152 string ret = XapianPINVOKE.QueryParser_GetCorrectedQueryString(swigCPtr); 153 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 154 return ret; 155 } 156 GetDescription()157 public string GetDescription() { 158 string ret = XapianPINVOKE.QueryParser_GetDescription(swigCPtr); 159 if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); 160 return ret; 161 } 162 163 public enum feature_flag { 164 FLAG_BOOLEAN = 1, 165 FLAG_PHRASE = 2, 166 FLAG_LOVEHATE = 4, 167 FLAG_BOOLEAN_ANY_CASE = 8, 168 FLAG_WILDCARD = 16, 169 FLAG_PURE_NOT = 32, 170 FLAG_PARTIAL = 64, 171 FLAG_SPELLING_CORRECTION = 128, 172 FLAG_SYNONYM = 256, 173 FLAG_AUTO_SYNONYMS = 512, 174 FLAG_AUTO_MULTIWORD_SYNONYMS = 1024|FLAG_AUTO_SYNONYMS, 175 FLAG_CJK_NGRAM = 2048, 176 FLAG_DEFAULT = FLAG_PHRASE|FLAG_BOOLEAN|FLAG_LOVEHATE 177 } 178 179 public enum stem_strategy { 180 STEM_NONE, 181 STEM_SOME, 182 STEM_ALL, 183 STEM_ALL_Z 184 } 185 186 } 187 188 } 189