22 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
this, cPtr);
25 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(
BaseLns obj) {
26 return (obj ==
null) ?
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero) : obj.swigCPtr;
29 internal static global::System.Runtime.InteropServices.HandleRef swigRelease(BaseLns obj) {
32 throw new global::System.ApplicationException(
"Cannot release ownership as memory is not owned");
33 global::System.Runtime.InteropServices.HandleRef ptr = obj.swigCPtr;
34 obj.swigCMemOwn =
false;
38 return new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
42 protected override void Dispose(
bool disposing) {
44 if (swigCPtr.Handle != global::System.IntPtr.Zero) {
49 swigCPtr =
new global::System.Runtime.InteropServices.HandleRef(
null, global::System.IntPtr.Zero);
51 base.Dispose(disposing);
55 public BaseLns(IntVarVector vars) : this(operations_research_constraint_solverPINVOKE.new_BaseLns(IntVarVector.getCPtr(vars)), true) {
56 if (operations_research_constraint_solverPINVOKE.SWIGPendingException.Pending)
throw operations_research_constraint_solverPINVOKE.SWIGPendingException.Retrieve();
57 SwigDirectorConnect();
83 private void SwigDirectorConnect() {
84 if (SwigDerivedClassHasMethod(
"ToString", swigMethodTypes0))
86 if (SwigDerivedClassHasMethod(
"EnterSearch", swigMethodTypes1))
88 if (SwigDerivedClassHasMethod(
"Start", swigMethodTypes2))
90 if (SwigDerivedClassHasMethod(
"Reset", swigMethodTypes3))
92 if (SwigDerivedClassHasMethod(
"HasFragments", swigMethodTypes4))
94 if (SwigDerivedClassHasMethod(
"HoldsDelta", swigMethodTypes5))
96 if (SwigDerivedClassHasMethod(
"IsIncremental", swigMethodTypes6))
98 if (SwigDerivedClassHasMethod(
"InitFragments", swigMethodTypes7))
100 if (SwigDerivedClassHasMethod(
"NextFragment", swigMethodTypes8))
105 private bool SwigDerivedClassHasMethod(
string methodName, global::System.Type[] methodTypes) {
106 global::System.Reflection.MethodInfo[] methodInfos = this.GetType().GetMethods(
107 global::System.Reflection.BindingFlags.Public | global::System.Reflection.BindingFlags.NonPublic | global::System.Reflection.BindingFlags.Instance);
108 foreach (global::System.Reflection.MethodInfo methodInfo in methodInfos) {
109 if (methodInfo.DeclaringType ==
null)
112 if (methodInfo.Name != methodName)
115 var parameters = methodInfo.GetParameters();
116 if (parameters.Length != methodTypes.Length)
119 bool parametersMatch =
true;
120 for (var i = 0; i < parameters.Length; i++) {
121 if (parameters[i].ParameterType != methodTypes[i]) {
122 parametersMatch =
false;
127 if (!parametersMatch)
130 if (methodInfo.IsVirtual && (methodInfo.DeclaringType.IsSubclassOf(typeof(BaseLns))) &&
131 methodInfo.DeclaringType != methodInfo.GetBaseDefinition().DeclaringType) {
139 private string SwigDirectorMethodToString() {
143 private void SwigDirectorMethodEnterSearch() {
147 private void SwigDirectorMethodStart(global::System.IntPtr assignment) {
148 Start((assignment == global::System.IntPtr.Zero) ?
null :
new Assignment(assignment,
false));
151 private void SwigDirectorMethodReset() {
155 private bool SwigDirectorMethodHasFragments() {
159 private bool SwigDirectorMethodHoldsDelta() {
163 private bool SwigDirectorMethodIsIncremental() {
167 private void SwigDirectorMethodInitFragments() {
171 private bool SwigDirectorMethodNextFragment() {
195 private static global::System.Type[] swigMethodTypes0 =
new global::System.Type[] { };
196 private static global::System.Type[] swigMethodTypes1 =
new global::System.Type[] { };
197 private static global::System.Type[] swigMethodTypes2 =
new global::System.Type[] { typeof(Assignment) };
198 private static global::System.Type[] swigMethodTypes3 =
new global::System.Type[] { };
199 private static global::System.Type[] swigMethodTypes4 =
new global::System.Type[] { };
200 private static global::System.Type[] swigMethodTypes5 =
new global::System.Type[] { };
201 private static global::System.Type[] swigMethodTypes6 =
new global::System.Type[] { };
202 private static global::System.Type[] swigMethodTypes7 =
new global::System.Type[] { };
203 private static global::System.Type[] swigMethodTypes8 =
new global::System.Type[] { };