14using System.Runtime.InteropServices;
15using System.Collections;
17public partial class Domain : global::System.IDisposable {
21 internal Domain(global::System.IntPtr cPtr,
bool cMemoryOwn) {
23 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
this, cPtr);
26 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(
Domain obj) {
27 return (obj ==
null) ?
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero) : obj.swigCPtr;
30 internal static global::System.Runtime.InteropServices.HandleRef swigRelease(
Domain obj) {
33 throw new global::System.ApplicationException(
"Cannot release ownership as memory is not owned");
34 global::System.Runtime.InteropServices.HandleRef ptr = obj.swigCPtr;
35 obj.swigCMemOwn =
false;
39 return new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
49 global::System.GC.SuppressFinalize(
this);
52 protected virtual void Dispose(
bool disposing) {
54 if (swigCPtr.Handle != global::System.IntPtr.Zero) {
59 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
64 public Domain() : this(operations_research_constraint_solverPINVOKE.new_Domain__SWIG_0(), true) {
85 intervals.GetLength(0),
100 if (cPtr != global::System.IntPtr.Zero) {
102 long[] outArray =
new long[tmpVector.
Count];
103 tmpVector.
CopyTo(outArray);
110 bool ret = operations_research_constraint_solverPINVOKE.Domain_IsEmpty(swigCPtr);
Domain IntersectionWith(Domain domain)
static Domain FromFlatIntervals(long[] flat_intervals)
Domain AdditionWith(Domain domain)
static Domain FromValues(long[] values)
static Domain AllValues()
static Domain FromIntervals(long[][] intervals)
override string ToString()
long[] FlattenedIntervals()
Domain UnionWith(Domain domain)
bool Contains(long value)