/* ---------------------------------------------------------------------------- * 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 MSetIterator : IDisposable { private HandleRef swigCPtr; protected bool swigCMemOwn; internal MSetIterator(IntPtr cPtr, bool cMemoryOwn) { swigCMemOwn = cMemoryOwn; swigCPtr = new HandleRef(this, cPtr); } internal static HandleRef getCPtr(MSetIterator obj) { return (obj == null) ? new HandleRef(null, IntPtr.Zero) : obj.swigCPtr; } ~MSetIterator() { Dispose(); } public virtual void Dispose() { lock(this) { if(swigCPtr.Handle != IntPtr.Zero && swigCMemOwn) { swigCMemOwn = false; XapianPINVOKE.delete_MSetIterator(swigCPtr); } swigCPtr = new HandleRef(null, IntPtr.Zero); GC.SuppressFinalize(this); } } public static MSetIterator operator++(MSetIterator it) { return it.Next(); } public static MSetIterator operator--(MSetIterator it) { return it.Prev(); } public override bool Equals(object o) { return o is MSetIterator && Equals((MSetIterator)o); } public static bool operator==(MSetIterator a, MSetIterator 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!=(MSetIterator a, MSetIterator 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 MSetIterator() : this(XapianPINVOKE.new_MSetIterator__SWIG_0(), true) { if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); } public MSetIterator(MSetIterator other) : this(XapianPINVOKE.new_MSetIterator__SWIG_1(MSetIterator.getCPtr(other)), true) { if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); } public uint GetDocId() { uint ret = XapianPINVOKE.MSetIterator_GetDocId(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public MSetIterator Next() { MSetIterator ret = new MSetIterator(XapianPINVOKE.MSetIterator_Next(swigCPtr), false); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public MSetIterator Prev() { MSetIterator ret = new MSetIterator(XapianPINVOKE.MSetIterator_Prev(swigCPtr), false); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public bool Equals(MSetIterator other) { bool ret = XapianPINVOKE.MSetIterator_Equals(swigCPtr, MSetIterator.getCPtr(other)); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public Document GetDocument() { Document ret = new Document(XapianPINVOKE.MSetIterator_GetDocument(swigCPtr), true); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public uint GetRank() { uint ret = XapianPINVOKE.MSetIterator_GetRank(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public double GetWeight() { double ret = XapianPINVOKE.MSetIterator_GetWeight(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public string GetCollapseKey() { string ret = XapianPINVOKE.MSetIterator_GetCollapseKey(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public uint GetCollapseCount() { uint ret = XapianPINVOKE.MSetIterator_GetCollapseCount(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public int GetPercent() { int ret = XapianPINVOKE.MSetIterator_GetPercent(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } public string GetDescription() { string ret = XapianPINVOKE.MSetIterator_GetDescription(swigCPtr); if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve(); return ret; } } }