1 //------------------------------------------------------------------------------
2 // <auto-generated />
3 //
4 // This file was automatically generated by SWIG (http://www.swig.org).
5 // Version 3.0.13
6 //
7 // Do not make changes to this file unless you know what you are doing--modify
8 // the SWIG interface file instead.
9 //------------------------------------------------------------------------------
10 
11 namespace Xapian {
12 
13 public class InMemory : global::System.IDisposable {
14   private global::System.Runtime.InteropServices.HandleRef swigCPtr;
15   protected bool swigCMemOwn;
16 
17   internal InMemory(global::System.IntPtr cPtr, bool cMemoryOwn) {
18     swigCMemOwn = cMemoryOwn;
19     swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
20   }
21 
22   internal static global::System.Runtime.InteropServices.HandleRef getCPtr(InMemory obj) {
23     return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
24   }
25 
26   public virtual void Dispose() {
27     lock(this) {
28       if (swigCPtr.Handle != global::System.IntPtr.Zero) {
29         if (swigCMemOwn) {
30           swigCMemOwn = false;
31           throw new global::System.MethodAccessException("C++ destructor does not have public access");
32         }
33         swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
34       }
35       global::System.GC.SuppressFinalize(this);
36     }
37   }
38 
39   public static WritableDatabase Open() {
40     WritableDatabase ret = new WritableDatabase(XapianPINVOKE.InMemory_Open(), true);
41     if (XapianPINVOKE.SWIGPendingException.Pending) throw XapianPINVOKE.SWIGPendingException.Retrieve();
42     return ret;
43   }
44 
45 }
46 
47 }
48