/* ---------------------------------------------------------------------------- * This file was automatically generated by SWIG (http://www.swig.org). * Version 1.3.32 * * Do not make changes to this file unless you know what you are doing--modify * the SWIG interface file instead. * ----------------------------------------------------------------------------- */ namespace Xapian { using System; using System.Runtime.InteropServices; public class TermIterator : IDisposable { private HandleRef swigCPtr; protected bool swigCMemOwn; internal TermIterator(IntPtr cPtr, bool cMemoryOwn) { swigCMemOwn = cMemoryOwn; swigCPtr = new HandleRef(this, cPtr); } internal static HandleRef getCPtr(TermIterator obj) { return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; } ~TermIterator() { Dispose(); } public virtual void Dispose() { lock(this) { if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) { swigCMemOwn = false; XapianPINVOKE.delete_TermIterator(swigCPtr); } swigCPtr = new HandleRef(null, IntPtr.Zero); GC.SuppressFinalize(this); } } public static TermIterator operator++(TermIterator it) { return it.Next(); } public override bool Equals(object o) { return o is TermIterator && Equals((TermIterator)o); } public static bool operator==(TermIterator a, TermIterator b) { if ((object)a == (object)b) return true; if ((object)a == null || (object)b == null) return false; return a.Equals(b); } public static bool operator!=(TermIterator a, TermIterator b) { if ((object)a == (object)b) return false; if ((object)a == null || (object)b == null) return true; return !a.Equals(b); } // Implementing GetHashCode() to always return 0 is rather lame, but // using iterators as keys in a hash table would be rather strange. public override int GetHashCode() { return 0; } public TermIterator() : this(XapianPINVOKE.new_TermIterator__SWIG_0(), true) { if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); } public TermIterator(TermIterator other) : this(XapianPINVOKE.new_TermIterator__SWIG_1(TermIterator.getCPtr(other)), true) { if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); } public string GetTerm() { string ret = XapianPINVOKE.TermIterator_GetTerm(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public TermIterator Next() { TermIterator ret = new TermIterator(XapianPINVOKE.TermIterator_Next(swigCPtr), false); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public bool Equals(TermIterator other) { bool ret = XapianPINVOKE.TermIterator_Equals(swigCPtr, TermIterator.getCPtr(other)); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public void SkipTo(string tname) { XapianPINVOKE.TermIterator_SkipTo(swigCPtr, tname); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); } public uint GetWdf() { uint ret = XapianPINVOKE.TermIterator_GetWdf(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public uint GetTermFreq() { uint ret = XapianPINVOKE.TermIterator_GetTermFreq(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public PositionIterator PositionListBegin() { PositionIterator ret = new PositionIterator(XapianPINVOKE.TermIterator_PositionListBegin(swigCPtr), true); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public PositionIterator PositionListEnd() { PositionIterator ret = new PositionIterator(XapianPINVOKE.TermIterator_PositionListEnd(swigCPtr), true); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public string GetDescription() { string ret = XapianPINVOKE.TermIterator_GetDescription(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } } }