CpIntVector.cs
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 // <auto-generated />
3 //
4 // This file was automatically generated by SWIG (http://www.swig.org).
5 // Version 3.0.12
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 
12 
13 using System;
14 using System.Runtime.InteropServices;
15 using System.Collections;
16 using System.Collections.Generic;
17 
18 public partial class CpIntVector : global::System.IDisposable, global::System.Collections.IEnumerable
19  , global::System.Collections.Generic.IList<int>
20  {
21  private global::System.Runtime.InteropServices.HandleRef swigCPtr;
22  protected bool swigCMemOwn;
23 
24  internal CpIntVector(global::System.IntPtr cPtr, bool cMemoryOwn) {
25  swigCMemOwn = cMemoryOwn;
26  swigCPtr = new global::System.Runtime.InteropServices.HandleRef(this, cPtr);
27  }
28 
29  internal static global::System.Runtime.InteropServices.HandleRef getCPtr(CpIntVector obj) {
30  return (obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr;
31  }
32 
33  ~CpIntVector() {
34  Dispose();
35  }
36 
37  public virtual void Dispose() {
38  lock(this) {
39  if (swigCPtr.Handle != global::System.IntPtr.Zero) {
40  if (swigCMemOwn) {
41  swigCMemOwn = false;
43  }
44  swigCPtr = new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero);
45  }
46  global::System.GC.SuppressFinalize(this);
47  }
48  }
49 
50  public CpIntVector(global::System.Collections.ICollection c) : this() {
51  if (c == null)
52  throw new global::System.ArgumentNullException("c");
53  foreach (int element in c) {
54  this.Add(element);
55  }
56  }
57 
58  public bool IsFixedSize {
59  get {
60  return false;
61  }
62  }
63 
64  public bool IsReadOnly {
65  get {
66  return false;
67  }
68  }
69 
70  public int this[int index] {
71  get {
72  return getitem(index);
73  }
74  set {
75  setitem(index, value);
76  }
77  }
78 
79  public int Capacity {
80  get {
81  return (int)capacity();
82  }
83  set {
84  if (value < size())
85  throw new global::System.ArgumentOutOfRangeException("Capacity");
86  reserve((uint)value);
87  }
88  }
89 
90  public int Count {
91  get {
92  return (int)size();
93  }
94  }
95 
96  public bool IsSynchronized {
97  get {
98  return false;
99  }
100  }
101 
102  public void CopyTo(int[] array)
103  {
104  CopyTo(0, array, 0, this.Count);
105  }
106 
107  public void CopyTo(int[] array, int arrayIndex)
108  {
109  CopyTo(0, array, arrayIndex, this.Count);
110  }
111 
112  public void CopyTo(int index, int[] array, int arrayIndex, int count)
113  {
114  if (array == null)
115  throw new global::System.ArgumentNullException("array");
116  if (index < 0)
117  throw new global::System.ArgumentOutOfRangeException("index", "Value is less than zero");
118  if (arrayIndex < 0)
119  throw new global::System.ArgumentOutOfRangeException("arrayIndex", "Value is less than zero");
120  if (count < 0)
121  throw new global::System.ArgumentOutOfRangeException("count", "Value is less than zero");
122  if (array.Rank > 1)
123  throw new global::System.ArgumentException("Multi dimensional array.", "array");
124  if (index+count > this.Count || arrayIndex+count > array.Length)
125  throw new global::System.ArgumentException("Number of elements to copy is too large.");
126  for (int i=0; i<count; i++)
127  array.SetValue(getitemcopy(index+i), arrayIndex+i);
128  }
129 
130  global::System.Collections.Generic.IEnumerator<int> global::System.Collections.Generic.IEnumerable<int>.GetEnumerator() {
131  return new CpIntVectorEnumerator(this);
132  }
133 
134  global::System.Collections.IEnumerator global::System.Collections.IEnumerable.GetEnumerator() {
135  return new CpIntVectorEnumerator(this);
136  }
137 
139  return new CpIntVectorEnumerator(this);
140  }
141 
142  // Type-safe enumerator
147  public sealed class CpIntVectorEnumerator : global::System.Collections.IEnumerator
148  , global::System.Collections.Generic.IEnumerator<int>
149  {
150  private CpIntVector collectionRef;
151  private int currentIndex;
152  private object currentObject;
153  private int currentSize;
154 
155  public CpIntVectorEnumerator(CpIntVector collection) {
156  collectionRef = collection;
157  currentIndex = -1;
158  currentObject = null;
159  currentSize = collectionRef.Count;
160  }
161 
162  // Type-safe iterator Current
163  public int Current {
164  get {
165  if (currentIndex == -1)
166  throw new global::System.InvalidOperationException("Enumeration not started.");
167  if (currentIndex > currentSize - 1)
168  throw new global::System.InvalidOperationException("Enumeration finished.");
169  if (currentObject == null)
170  throw new global::System.InvalidOperationException("Collection modified.");
171  return (int)currentObject;
172  }
173  }
174 
175  // Type-unsafe IEnumerator.Current
176  object global::System.Collections.IEnumerator.Current {
177  get {
178  return Current;
179  }
180  }
181 
182  public bool MoveNext() {
183  int size = collectionRef.Count;
184  bool moveOkay = (currentIndex+1 < size) && (size == currentSize);
185  if (moveOkay) {
186  currentIndex++;
187  currentObject = collectionRef[currentIndex];
188  } else {
189  currentObject = null;
190  }
191  return moveOkay;
192  }
193 
194  public void Reset() {
195  currentIndex = -1;
196  currentObject = null;
197  if (collectionRef.Count != currentSize) {
198  throw new global::System.InvalidOperationException("Collection modified.");
199  }
200  }
201 
202  public void Dispose() {
203  currentIndex = -1;
204  currentObject = null;
205  }
206  }
207 
208  public void Clear() {
210  }
211 
212  public void Add(int x) {
214  }
215 
216  private uint size() {
218  return ret;
219  }
220 
221  private uint capacity() {
222  uint ret = operations_research_constraint_solverPINVOKE.CpIntVector_capacity(swigCPtr);
223  return ret;
224  }
225 
226  private void reserve(uint n) {
227  operations_research_constraint_solverPINVOKE.CpIntVector_reserve(swigCPtr, n);
228  }
229 
230  public CpIntVector() : this(operations_research_constraint_solverPINVOKE.new_CpIntVector__SWIG_0(), true) {
231  }
232 
233  public CpIntVector(CpIntVector other) : this(operations_research_constraint_solverPINVOKE.new_CpIntVector__SWIG_1(CpIntVector.getCPtr(other)), true) {
235  }
236 
237  public CpIntVector(int capacity) : this(operations_research_constraint_solverPINVOKE.new_CpIntVector__SWIG_2(capacity), true) {
239  }
240 
241  private int getitemcopy(int index) {
244  return ret;
245  }
246 
247  private int getitem(int index) {
248  int ret = operations_research_constraint_solverPINVOKE.CpIntVector_getitem(swigCPtr, index);
249  if (operations_research_constraint_solverPINVOKE.SWIGPendingException.Pending) throw operations_research_constraint_solverPINVOKE.SWIGPendingException.Retrieve();
250  return ret;
251  }
252 
253  private void setitem(int index, int val) {
254  operations_research_constraint_solverPINVOKE.CpIntVector_setitem(swigCPtr, index, val);
255  if (operations_research_constraint_solverPINVOKE.SWIGPendingException.Pending) throw operations_research_constraint_solverPINVOKE.SWIGPendingException.Retrieve();
256  }
257 
258  public void AddRange(CpIntVector values) {
261  }
262 
263  public CpIntVector GetRange(int index, int count) {
264  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.CpIntVector_GetRange(swigCPtr, index, count);
265  CpIntVector ret = (cPtr == global::System.IntPtr.Zero) ? null : new CpIntVector(cPtr, true);
267  return ret;
268  }
269 
270  public void Insert(int index, int x) {
273  }
274 
275  public void InsertRange(int index, CpIntVector values) {
278  }
279 
280  public void RemoveAt(int index) {
283  }
284 
285  public void RemoveRange(int index, int count) {
288  }
289 
290  public static CpIntVector Repeat(int value, int count) {
291  global::System.IntPtr cPtr = operations_research_constraint_solverPINVOKE.CpIntVector_Repeat(value, count);
292  CpIntVector ret = (cPtr == global::System.IntPtr.Zero) ? null : new CpIntVector(cPtr, true);
294  return ret;
295  }
296 
297  public void Reverse() {
299  }
300 
301  public void Reverse(int index, int count) {
304  }
305 
306  public void SetRange(int index, CpIntVector values) {
309  }
310 
311  public bool Contains(int value) {
313  return ret;
314  }
315 
316  public int IndexOf(int value) {
318  return ret;
319  }
320 
321  public int LastIndexOf(int value) {
323  return ret;
324  }
325 
326  public bool Remove(int value) {
328  return ret;
329  }
330 
331 }
332 
333 }
static int CpIntVector_getitemcopy(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
void CopyTo(int[] array, int arrayIndex)
Definition: CpIntVector.cs:107
static void CpIntVector_Add(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
void RemoveRange(int index, int count)
Definition: CpIntVector.cs:285
void InsertRange(int index, CpIntVector values)
Definition: CpIntVector.cs:275
void Reverse(int index, int count)
Definition: CpIntVector.cs:301
static void CpIntVector_RemoveRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
CpIntVector(global::System.Collections.ICollection c)
Definition: CpIntVector.cs:50
Note that the IEnumerator documentation requires an InvalidOperationException to be thrown whenever t...
Definition: CpIntVector.cs:147
void SetRange(int index, CpIntVector values)
Definition: CpIntVector.cs:306
static void CpIntVector_InsertRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)
static bool CpIntVector_Remove(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static CpIntVector Repeat(int value, int count)
Definition: CpIntVector.cs:290
static void CpIntVector_Clear(global::System.Runtime.InteropServices.HandleRef jarg1)
static uint CpIntVector_size(global::System.Runtime.InteropServices.HandleRef jarg1)
static void CpIntVector_Reverse__SWIG_0(global::System.Runtime.InteropServices.HandleRef jarg1)
static int CpIntVector_LastIndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static global::System.IntPtr CpIntVector_Repeat(int jarg1, int jarg2)
void CopyTo(int index, int[] array, int arrayIndex, int count)
Definition: CpIntVector.cs:112
static bool CpIntVector_Contains(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void CpIntVector_Insert(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void CpIntVector_RemoveAt(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
static void CpIntVector_AddRange(global::System.Runtime.InteropServices.HandleRef jarg1, global::System.Runtime.InteropServices.HandleRef jarg2)
static void delete_CpIntVector(global::System.Runtime.InteropServices.HandleRef jarg1)
static global::System.IntPtr CpIntVector_GetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static void CpIntVector_Reverse__SWIG_1(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, int jarg3)
static int CpIntVector_IndexOf(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2)
CpIntVector GetRange(int index, int count)
Definition: CpIntVector.cs:263
static void CpIntVector_SetRange(global::System.Runtime.InteropServices.HandleRef jarg1, int jarg2, global::System.Runtime.InteropServices.HandleRef jarg3)