Z3
Public Member Functions
Z3Object Class Reference

Internal base class for interfacing with native Z3 objects. Should not be used externally. More...

+ Inheritance diagram for Z3Object:

Public Member Functions

void Dispose ()
 Disposes of the underlying native Z3 object. More...
 

Detailed Description

Internal base class for interfacing with native Z3 objects. Should not be used externally.

Definition at line 32 of file Z3Object.cs.

Member Function Documentation

◆ Dispose()

void Dispose ( )
inline

Disposes of the underlying native Z3 object.

Definition at line 45 of file Z3Object.cs.

46  {
47  if (m_n_obj != IntPtr.Zero)
48  {
49  DecRef(m_n_obj);
50  m_n_obj = IntPtr.Zero;
51  }
52 
53  if (m_ctx != null)
54  {
55  if (Interlocked.Decrement(ref m_ctx.refCount) == 0)
56  GC.ReRegisterForFinalize(m_ctx);
57  m_ctx = null;
58  }
59 
60  GC.SuppressFinalize(this);
61  }