Files
ortools-clone/docs/dotnet/NetDecisionBuilder_8cs_source.html
Corentin Le Molgat b670dc9daa Update doc
2020-04-23 15:34:43 +02:00

265 lines
51 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OR-Tools</title>
<meta http-equiv="Content-Type" content="text/html;"/>
<meta charset="utf-8"/>
<!--<link rel='stylesheet' type='text/css' href="https://fonts.googleapis.com/css?family=Ubuntu:400,700,400italic"/>-->
<link rel="stylesheet" type="text/css" href="ortools.css" title="default" media="screen,print" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
</head>
<body>
<div id="banner-container">
<div id="banner">
<span id="sfml">Google OR-Tools 7.5</span>
</div>
</div>
<div id="content" style="width: 100%; overflow: hidden;">
<div style="margin-left: 15px; margin-top: 5px; float: left; color: #145A32;">
<h2>DotNet Reference</h2>
<ul>
<li><a href="../dotnet/namespaceGoogle_1_1OrTools_1_1Sat.html">CP-SAT</a></li>
<li><a href="../dotnet/namespaceGoogle_1_1OrTools_1_1Graph.html">Graph</a></li>
<li><a href="../dotnet/namespaceGoogle_1_1OrTools_1_1Algorithms.html">Knapsack solver</a></li>
<li><a href="../dotnet/namespaceGoogle_1_1OrTools_1_1LinearSolver.html">Linear solver</a></li>
<li><a href="../dotnet/namespaceGoogle_1_1OrTools_1_1ConstraintSolver.html">Routing</a></li>
<li><a href="../dotnet/namespaceGoogle_1_1OrTools_1_1Util.html">Util</a></li>
</ul>
</div>
<div id="content">
<div align="center">
<h1 style="color: #145A32;">DotNet Reference</h1>
</div>
<!-- Generated by Doxygen 1.8.16 -->
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_a7cc1eeded8f693d0da6c729bc88c45a.html">ortools</a></li><li class="navelem"><a class="el" href="dir_afbb39f66221aac28bbdefd1dca2b2b0.html">constraint_solver</a></li><li class="navelem"><a class="el" href="dir_b409af3b37f7a4c6a39f3e8879c28522.html">csharp</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">NetDecisionBuilder.cs</div> </div>
</div><!--header-->
<div class="contents">
<a href="NetDecisionBuilder_8cs.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">// Copyright 2010-2018 Google LLC</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">// Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">// you may not use this file except in compliance with the License.</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// You may obtain a copy of the License at</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">// http://www.apache.org/licenses/LICENSE-2.0</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">// Unless required by applicable law or agreed to in writing, software</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// distributed under the License is distributed on an &quot;AS IS&quot; BASIS,</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">// See the License for the specific language governing permissions and</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment">// limitations under the License.</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160; </div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="keyword">using</span> System;</div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="keyword">using</span> System.Collections;</div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160; </div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceGoogle_1_1OrTools_1_1ConstraintSolver.html">Google.OrTools.ConstraintSolver</a></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;{</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html"> 27</a></span>&#160;<span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html">NetDecisionBuilder</a> : <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1DecisionBuilder.html">DecisionBuilder</a></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;{</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html#a5e56fd78aebd0685088aacdfc77601b8"> 33</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Decision.html">Decision</a> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html#a5e56fd78aebd0685088aacdfc77601b8">NextWrapper</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver)</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; {</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keywordflow">try</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; {</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html#af8d59af67b855f12e88b32d81fcda226">Next</a>(solver);</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; }</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">catch</span> (ApplicationException <span class="comment">/*e*/</span>)</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="comment">// TODO(user): Catch only fail exceptions.</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keywordflow">return</span> solver.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a3ee30f035a8674450521f8dc205c720e">MakeFailDecision</a>();</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; }</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html#af8d59af67b855f12e88b32d81fcda226"> 48</a></span>&#160; <span class="keyword">public</span> <span class="keyword">virtual</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Decision.html">Decision</a> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html#af8d59af67b855f12e88b32d81fcda226">Next</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver)</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; {</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordflow">return</span> <span class="keyword">null</span>;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;}</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html"> 62</a></span>&#160;<span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html">NetDecision</a> : <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Decision.html">Decision</a></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;{</div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#afc3ab75776376d96e1e13def2856c159"> 68</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#afc3ab75776376d96e1e13def2856c159">ApplyWrapper</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver)</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; {</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">try</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; {</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a46998d5b5832baaa10b124a91d561458">Apply</a>(solver);</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; }</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">catch</span> (ApplicationException <span class="comment">/*e*/</span>)</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; {</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// TODO(user): Catch only fail exceptions.</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; solver.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a64e3df5cecd4de1a3d052795458f7069">ShouldFail</a>();</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a46998d5b5832baaa10b124a91d561458"> 83</a></span>&#160; <span class="keyword">public</span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a46998d5b5832baaa10b124a91d561458">Apply</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver)</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; {</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">// By default, do nothing</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a5faad9eee2d65f54099c53534ea4c68f"> 88</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a5faad9eee2d65f54099c53534ea4c68f">RefuteWrapper</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver)</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; {</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">try</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; {</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a805defb31cbc4de51641839d0b916a8d">Refute</a>(solver);</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">catch</span> (ApplicationException <span class="comment">/*e*/</span>)</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// TODO(user): Catch only fail exceptions.</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; solver.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a64e3df5cecd4de1a3d052795458f7069">ShouldFail</a>();</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a805defb31cbc4de51641839d0b916a8d"> 103</a></span>&#160; <span class="keyword">public</span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a805defb31cbc4de51641839d0b916a8d">Refute</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver)</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; {</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;}</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; </div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html"> 108</a></span>&#160;<span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html">NetDemon</a> : <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Demon.html">Demon</a></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;{</div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#a270ba73cabf7ad56a55cb95a15691a2b"> 113</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#a270ba73cabf7ad56a55cb95a15691a2b">RunWrapper</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver)</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; {</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordflow">try</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; {</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#a0acc5e6148b61130424cee7a60419795">Run</a>(solver);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; }</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">catch</span> (ApplicationException <span class="comment">/*e*/</span>)</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; {</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="comment">// TODO(user): Check that this is indeed a fail. Try implementing</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// custom exceptions (hard).</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; solver.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a64e3df5cecd4de1a3d052795458f7069">ShouldFail</a>();</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#a0acc5e6148b61130424cee7a60419795"> 129</a></span>&#160; <span class="keyword">public</span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#a0acc5e6148b61130424cee7a60419795">Run</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> solver) {}</div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#ae3870c47268a3543acac33c145ec38e6"> 130</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">int</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#ae3870c47268a3543acac33c145ec38e6">Priority</a>() {</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a>.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a50accd19350cdbf467f06d40a023f9ce">NORMAL_PRIORITY</a>;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#aa73e7c4dd1df5fd5fbf81c7764ee1533"> 133</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">string</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#aa73e7c4dd1df5fd5fbf81c7764ee1533">ToString</a>() {</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;NetDemon&quot;</span>;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;}</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html"> 138</a></span>&#160;<span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html">NetConstraint</a> : <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Constraint.html">Constraint</a> {</div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#ac62fcd5cb508e643f4f5041f9dd3fd86"> 139</a></span>&#160; <span class="keyword">public</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#ac62fcd5cb508e643f4f5041f9dd3fd86">NetConstraint</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Solver</a> s) : base(s) {}</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#a93bb66baba79afa8f95616db6e2b2e84"> 141</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#a93bb66baba79afa8f95616db6e2b2e84">InitialPropagateWrapper</a>() {</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#afb9570b6312e98827ff3a349743c5108">InitialPropagate</a>();</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; } <span class="keywordflow">catch</span> (ApplicationException <span class="comment">/*e*/</span>) {</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1PropagationBaseObject.html#a731f5347bbdd221db54ada93d1a4f677">solver</a>().<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a64e3df5cecd4de1a3d052795458f7069">ShouldFail</a>();</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; }</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#afb9570b6312e98827ff3a349743c5108"> 148</a></span>&#160; <span class="keyword">public</span> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#afb9570b6312e98827ff3a349743c5108">InitialPropagate</a>() {}</div>
<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#aa73e7c4dd1df5fd5fbf81c7764ee1533"> 149</a></span>&#160; <span class="keyword">public</span> <span class="keyword">override</span> <span class="keywordtype">string</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#aa73e7c4dd1df5fd5fbf81c7764ee1533">ToString</a>() {</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">return</span> <span class="stringliteral">&quot;NetConstraint&quot;</span>;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;}</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; </div>
<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html"> 154</a></span>&#160;<span class="keyword">public</span> <span class="keyword">class </span><a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html">IntVarEnumerator</a> : IEnumerator {</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">private</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html">IntVarIterator</a> iterator_;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="comment">// Enumerators are positioned before the first element</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="comment">// until the first MoveNext() call.</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keyword">private</span> <span class="keywordtype">bool</span> first_ = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#a0873bf113d6740f313640ccb4e2dddce"> 161</a></span>&#160; <span class="keyword">public</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#a0873bf113d6740f313640ccb4e2dddce">IntVarEnumerator</a>(<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html">IntVarIterator</a> iterator) {</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; iterator_ = iterator;</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; </div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#ad5316c283894d57be1450edab878aed0"> 165</a></span>&#160; <span class="keyword">public</span> <span class="keywordtype">bool</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#ad5316c283894d57be1450edab878aed0">MoveNext</a>() {</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (first_) {</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; iterator_.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#a3e0b39e1326de703012f81ac2be7feba">Init</a>();</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; first_ = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; iterator_.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#af1427fc5208b9da0df501f35fc9bb5ce">Next</a>();</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; }</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">return</span> iterator_.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#a9a4b64c4463b6d70e7740d81fbe1143a">Ok</a>();</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; </div>
<div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#a372de693ad40b3f42839c8ec6ac845f4"> 175</a></span>&#160; <span class="keyword">public</span> <span class="keywordtype">void</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#a372de693ad40b3f42839c8ec6ac845f4">Reset</a>() {</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; first_ = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; }</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; </div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordtype">object</span> IEnumerator.Current {</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keyword">get</span> {</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; <span class="keywordflow">return</span> Current;</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; }</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#ae0cbc115a66699ead8d93fddccf271ef"> 185</a></span>&#160; <span class="keyword">public</span> <span class="keywordtype">long</span> Current {</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">get</span> {</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">if</span> (!first_ &amp;&amp; iterator_.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#a9a4b64c4463b6d70e7740d81fbe1143a">Ok</a>()) {</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordflow">return</span> iterator_.<a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#ae747c718b4da4ca31295bb318d39824c">Value</a>();</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keywordflow">throw</span> <span class="keyword">new</span> InvalidOperationException();</div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; }</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; }</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; }</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;}</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; </div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="keyword">public</span> <span class="keyword">partial class </span>IntVarIterator : BaseObject, IEnumerable {</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; IEnumerator IEnumerable.GetEnumerator() {</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">return</span> (IEnumerator) GetEnumerator();</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; }</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; </div>
<div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#acdfbc3c0111b56481f6c416d94dc0ebd"> 201</a></span>&#160; <span class="keyword">public</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html">IntVarEnumerator</a> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#acdfbc3c0111b56481f6c416d94dc0ebd">GetEnumerator</a>() {</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">return</span> <span class="keyword">new</span> <a class="code" href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html">IntVarEnumerator</a>(<span class="keyword">this</span>);</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;}</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;} <span class="comment">// namespace Google.OrTools.ConstraintSolver</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint_html_a93bb66baba79afa8f95616db6e2b2e84"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#a93bb66baba79afa8f95616db6e2b2e84">Google.OrTools.ConstraintSolver.NetConstraint.InitialPropagateWrapper</a></div><div class="ttdeci">override void InitialPropagateWrapper()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00141">NetDecisionBuilder.cs:141</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html">Google.OrTools.ConstraintSolver.NetDemon</a></div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00108">NetDecisionBuilder.cs:108</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver_html_a64e3df5cecd4de1a3d052795458f7069"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a64e3df5cecd4de1a3d052795458f7069">Google.OrTools.ConstraintSolver.Solver.ShouldFail</a></div><div class="ttdeci">void ShouldFail()</div><div class="ttdef"><b>Definition:</b> <a href="constraint__solver_2Solver_8cs_source.html#l02842">constraint_solver/Solver.cs:2842</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint_html_ac62fcd5cb508e643f4f5041f9dd3fd86"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#ac62fcd5cb508e643f4f5041f9dd3fd86">Google.OrTools.ConstraintSolver.NetConstraint.NetConstraint</a></div><div class="ttdeci">NetConstraint(Solver s)</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00139">NetDecisionBuilder.cs:139</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder_html_af8d59af67b855f12e88b32d81fcda226"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html#af8d59af67b855f12e88b32d81fcda226">Google.OrTools.ConstraintSolver.NetDecisionBuilder.Next</a></div><div class="ttdeci">virtual Decision Next(Solver solver)</div><div class="ttdoc">This is the new method to subclass when defining a .Net decision builder.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00048">NetDecisionBuilder.cs:48</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1Constraint_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Constraint.html">Google.OrTools.ConstraintSolver.Constraint</a></div><div class="ttdef"><b>Definition:</b> <a href="constraint__solver_2Constraint_8cs_source.html#l00018">constraint_solver/Constraint.cs:18</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1Demon_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Demon.html">Google.OrTools.ConstraintSolver.Demon</a></div><div class="ttdef"><b>Definition:</b> <a href="Demon_8cs_source.html#l00018">Demon.cs:18</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator_html_ad5316c283894d57be1450edab878aed0"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#ad5316c283894d57be1450edab878aed0">Google.OrTools.ConstraintSolver.IntVarEnumerator.MoveNext</a></div><div class="ttdeci">bool MoveNext()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00165">NetDecisionBuilder.cs:165</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator_html_a9a4b64c4463b6d70e7740d81fbe1143a"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#a9a4b64c4463b6d70e7740d81fbe1143a">Google.OrTools.ConstraintSolver.IntVarIterator.Ok</a></div><div class="ttdeci">virtual bool Ok()</div><div class="ttdef"><b>Definition:</b> <a href="IntVarIterator_8cs_source.html#l00046">IntVarIterator.cs:46</a></div></div>
<div class="ttc" id="anamespaceGoogle_1_1OrTools_1_1ConstraintSolver_html"><div class="ttname"><a href="namespaceGoogle_1_1OrTools_1_1ConstraintSolver.html">Google.OrTools.ConstraintSolver</a></div><div class="ttdef"><b>Definition:</b> <a href="Assignment_8cs_source.html#l00011">Assignment.cs:11</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon_html_a270ba73cabf7ad56a55cb95a15691a2b"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#a270ba73cabf7ad56a55cb95a15691a2b">Google.OrTools.ConstraintSolver.NetDemon.RunWrapper</a></div><div class="ttdeci">override void RunWrapper(Solver solver)</div><div class="ttdoc">This methods wraps the calls to next() and catches fail exceptions.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00113">NetDecisionBuilder.cs:113</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator_html_a372de693ad40b3f42839c8ec6ac845f4"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#a372de693ad40b3f42839c8ec6ac845f4">Google.OrTools.ConstraintSolver.IntVarEnumerator.Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00175">NetDecisionBuilder.cs:175</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision_html_a805defb31cbc4de51641839d0b916a8d"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a805defb31cbc4de51641839d0b916a8d">Google.OrTools.ConstraintSolver.NetDecision.Refute</a></div><div class="ttdeci">virtual void Refute(Solver solver)</div><div class="ttdoc">This is a new method to subclass when defining a .Net decision.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00103">NetDecisionBuilder.cs:103</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator_html_a0873bf113d6740f313640ccb4e2dddce"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html#a0873bf113d6740f313640ccb4e2dddce">Google.OrTools.ConstraintSolver.IntVarEnumerator.IntVarEnumerator</a></div><div class="ttdeci">IntVarEnumerator(IntVarIterator iterator)</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00161">NetDecisionBuilder.cs:161</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html">Google.OrTools.ConstraintSolver.Solver</a></div><div class="ttdef"><b>Definition:</b> <a href="constraint__solver_2Solver_8cs_source.html#l00018">constraint_solver/Solver.cs:18</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator_html_ae747c718b4da4ca31295bb318d39824c"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#ae747c718b4da4ca31295bb318d39824c">Google.OrTools.ConstraintSolver.IntVarIterator.Value</a></div><div class="ttdeci">virtual long Value()</div><div class="ttdef"><b>Definition:</b> <a href="IntVarIterator_8cs_source.html#l00051">IntVarIterator.cs:51</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon_html_aa73e7c4dd1df5fd5fbf81c7764ee1533"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#aa73e7c4dd1df5fd5fbf81c7764ee1533">Google.OrTools.ConstraintSolver.NetDemon.ToString</a></div><div class="ttdeci">override string ToString()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00133">NetDecisionBuilder.cs:133</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html">Google.OrTools.ConstraintSolver.NetDecisionBuilder</a></div><div class="ttdoc">This class acts as a intermediate step between a c++ decision builder and a .Net one.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00027">NetDecisionBuilder.cs:27</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder_html_a5e56fd78aebd0685088aacdfc77601b8"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecisionBuilder.html#a5e56fd78aebd0685088aacdfc77601b8">Google.OrTools.ConstraintSolver.NetDecisionBuilder.NextWrapper</a></div><div class="ttdeci">override Decision NextWrapper(Solver solver)</div><div class="ttdoc">This methods wraps the calls to next() and catches fail exceptions.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00033">NetDecisionBuilder.cs:33</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator_html_acdfbc3c0111b56481f6c416d94dc0ebd"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#acdfbc3c0111b56481f6c416d94dc0ebd">Google.OrTools.ConstraintSolver.IntVarIterator.GetEnumerator</a></div><div class="ttdeci">IntVarEnumerator GetEnumerator()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00201">NetDecisionBuilder.cs:201</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint_html_afb9570b6312e98827ff3a349743c5108"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#afb9570b6312e98827ff3a349743c5108">Google.OrTools.ConstraintSolver.NetConstraint.InitialPropagate</a></div><div class="ttdeci">virtual void InitialPropagate()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00148">NetDecisionBuilder.cs:148</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator_html_af1427fc5208b9da0df501f35fc9bb5ce"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#af1427fc5208b9da0df501f35fc9bb5ce">Google.OrTools.ConstraintSolver.IntVarIterator.Next</a></div><div class="ttdeci">virtual void Next()</div><div class="ttdef"><b>Definition:</b> <a href="IntVarIterator_8cs_source.html#l00056">IntVarIterator.cs:56</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html">Google.OrTools.ConstraintSolver.NetConstraint</a></div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00138">NetDecisionBuilder.cs:138</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon_html_a0acc5e6148b61130424cee7a60419795"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#a0acc5e6148b61130424cee7a60419795">Google.OrTools.ConstraintSolver.NetDemon.Run</a></div><div class="ttdeci">virtual void Run(Solver solver)</div><div class="ttdoc">This is the new method to subclass when defining a .Net decision builder.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00129">NetDecisionBuilder.cs:129</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html">Google.OrTools.ConstraintSolver.NetDecision</a></div><div class="ttdoc">This class acts as a intermediate step between a c++ decision and a .Net one.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00062">NetDecisionBuilder.cs:62</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator_html_a3e0b39e1326de703012f81ac2be7feba"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html#a3e0b39e1326de703012f81ac2be7feba">Google.OrTools.ConstraintSolver.IntVarIterator.Init</a></div><div class="ttdeci">virtual void Init()</div><div class="ttdef"><b>Definition:</b> <a href="IntVarIterator_8cs_source.html#l00042">IntVarIterator.cs:42</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver_html_a3ee30f035a8674450521f8dc205c720e"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a3ee30f035a8674450521f8dc205c720e">Google.OrTools.ConstraintSolver.Solver.MakeFailDecision</a></div><div class="ttdeci">Decision MakeFailDecision()</div><div class="ttdef"><b>Definition:</b> <a href="constraint__solver_2Solver_8cs_source.html#l02144">constraint_solver/Solver.cs:2144</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision_html_a46998d5b5832baaa10b124a91d561458"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a46998d5b5832baaa10b124a91d561458">Google.OrTools.ConstraintSolver.NetDecision.Apply</a></div><div class="ttdeci">virtual void Apply(Solver solver)</div><div class="ttdoc">This is a new method to subclass when defining a .Net decision.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00083">NetDecisionBuilder.cs:83</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon_html_ae3870c47268a3543acac33c145ec38e6"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDemon.html#ae3870c47268a3543acac33c145ec38e6">Google.OrTools.ConstraintSolver.NetDemon.Priority</a></div><div class="ttdeci">override int Priority()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00130">NetDecisionBuilder.cs:130</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision_html_a5faad9eee2d65f54099c53534ea4c68f"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#a5faad9eee2d65f54099c53534ea4c68f">Google.OrTools.ConstraintSolver.NetDecision.RefuteWrapper</a></div><div class="ttdeci">override void RefuteWrapper(Solver solver)</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00088">NetDecisionBuilder.cs:88</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision_html_afc3ab75776376d96e1e13def2856c159"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetDecision.html#afc3ab75776376d96e1e13def2856c159">Google.OrTools.ConstraintSolver.NetDecision.ApplyWrapper</a></div><div class="ttdeci">override void ApplyWrapper(Solver solver)</div><div class="ttdoc">This methods wraps the calls to Apply() and catches fail exceptions.</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00068">NetDecisionBuilder.cs:68</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint_html_aa73e7c4dd1df5fd5fbf81c7764ee1533"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1NetConstraint.html#aa73e7c4dd1df5fd5fbf81c7764ee1533">Google.OrTools.ConstraintSolver.NetConstraint.ToString</a></div><div class="ttdeci">override string ToString()</div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00149">NetDecisionBuilder.cs:149</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarIterator.html">Google.OrTools.ConstraintSolver.IntVarIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="IntVarIterator_8cs_source.html#l00018">IntVarIterator.cs:18</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1PropagationBaseObject_html_a731f5347bbdd221db54ada93d1a4f677"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1PropagationBaseObject.html#a731f5347bbdd221db54ada93d1a4f677">Google.OrTools.ConstraintSolver.PropagationBaseObject.solver</a></div><div class="ttdeci">Solver solver()</div><div class="ttdef"><b>Definition:</b> <a href="PropagationBaseObject_8cs_source.html#l00050">PropagationBaseObject.cs:50</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1DecisionBuilder_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1DecisionBuilder.html">Google.OrTools.ConstraintSolver.DecisionBuilder</a></div><div class="ttdef"><b>Definition:</b> <a href="DecisionBuilder_8cs_source.html#l00018">DecisionBuilder.cs:18</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver_html_a50accd19350cdbf467f06d40a023f9ce"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Solver.html#a50accd19350cdbf467f06d40a023f9ce">Google.OrTools.ConstraintSolver.Solver.NORMAL_PRIORITY</a></div><div class="ttdeci">static readonly int NORMAL_PRIORITY</div><div class="ttdef"><b>Definition:</b> <a href="constraint__solver_2Solver_8cs_source.html#l02924">constraint_solver/Solver.cs:2924</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1IntVarEnumerator.html">Google.OrTools.ConstraintSolver.IntVarEnumerator</a></div><div class="ttdef"><b>Definition:</b> <a href="NetDecisionBuilder_8cs_source.html#l00154">NetDecisionBuilder.cs:154</a></div></div>
<div class="ttc" id="aclassGoogle_1_1OrTools_1_1ConstraintSolver_1_1Decision_html"><div class="ttname"><a href="classGoogle_1_1OrTools_1_1ConstraintSolver_1_1Decision.html">Google.OrTools.ConstraintSolver.Decision</a></div><div class="ttdef"><b>Definition:</b> <a href="Decision_8cs_source.html#l00018">Decision.cs:18</a></div></div>
</div>
</div>
<div id="footer-container">
<div id="footer">
</div>
</div>
</body>
</html>