2020-09-01 16:00:33 +02:00
<!-- HTML header for doxygen 1.8.18 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=9" / >
2022-01-17 21:42:14 +01:00
< meta name = "generator" content = "Doxygen 1.9.3" / >
2020-09-01 16:00:33 +02:00
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< title > OR-Tools: constraint_solveri.h Source File< / title >
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< link href = "navtree.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "resize.js" > < / script >
< script type = "text/javascript" src = "navtreedata.js" > < / script >
< script type = "text/javascript" src = "navtree.js" > < / script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "search/searchdata.js" > < / script >
< script type = "text/javascript" src = "search/search.js" > < / script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
< link href = "styleSheet.tmp.css" rel = "stylesheet" type = "text/css" / >
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr style = "height: 56px;" >
< td id = "projectlogo" > < img alt = "Logo" src = "orLogo.png" / > < / td >
< td id = "projectalign" style = "padding-left: 0.5em;" >
< div id = "projectname" > OR-Tools
2021-12-14 13:41:01 +01:00
  < span id = "projectnumber" > 9.2< / span >
2020-09-01 16:00:33 +02:00
< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
2022-01-17 21:42:14 +01:00
<!-- Generated by Doxygen 1.9.3 -->
2020-09-01 16:00:33 +02:00
< script type = "text/javascript" >
2022-01-17 21:42:14 +01:00
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
2020-09-01 16:00:33 +02:00
/* @license-end */
< / script >
< script type = "text/javascript" src = "menudata.js" > < / script >
< script type = "text/javascript" src = "menu.js" > < / script >
< script type = "text/javascript" >
2022-01-17 21:42:14 +01:00
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
2020-09-01 16:00:33 +02:00
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
2022-01-17 21:42:14 +01:00
/* @license-end */
< / script >
2020-09-01 16:00:33 +02:00
< div id = "main-nav" > < / div >
< / div > <!-- top -->
< div id = "side-nav" class = "ui-resizable side-nav-resizable" >
< div id = "nav-tree" >
< div id = "nav-tree-contents" >
< div id = "nav-sync" class = "sync" > < / div >
< / div >
< / div >
< div id = "splitbar" style = "-moz-user-select:none;"
class="ui-resizable-handle">
< / div >
< / div >
< script type = "text/javascript" >
2022-01-17 21:42:14 +01:00
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699& dn=expat.txt MIT */
$(document).ready(function(){initNavTree('constraint__solveri_8h_source.html',''); initResizable(); });
2020-09-01 16:00:33 +02:00
/* @license-end */
< / script >
< div id = "doc-content" >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< iframe src = "javascript:void(0)" frameborder = "0"
name="MSearchResults" id="MSearchResults">
< / iframe >
< / div >
< div class = "header" >
2022-01-17 21:42:14 +01:00
< div class = "headertitle" > < div class = "title" > constraint_solveri.h< / div > < / div >
2020-09-01 16:00:33 +02:00
< / div > <!-- header -->
< div class = "contents" >
2022-01-17 21:42:14 +01:00
< a href = "constraint__solveri_8h.html" > Go to the documentation of this file.< / a > < div class = "fragment" > < div class = "line" > < a id = "l00001" name = "l00001" > < / a > < span class = "lineno" > 1< / span > < span class = "comment" > // Copyright 2010-2021 Google LLC< / span > < / div >
< div class = "line" > < a id = "l00002" name = "l00002" > < / a > < span class = "lineno" > 2< / span > < span class = "comment" > // Licensed under the Apache License, Version 2.0 (the " License" );< / span > < / div >
< div class = "line" > < a id = "l00003" name = "l00003" > < / a > < span class = "lineno" > 3< / span > < span class = "comment" > // you may not use this file except in compliance with the License.< / span > < / div >
< div class = "line" > < a id = "l00004" name = "l00004" > < / a > < span class = "lineno" > 4< / span > < span class = "comment" > // You may obtain a copy of the License at< / span > < / div >
< div class = "line" > < a id = "l00005" name = "l00005" > < / a > < span class = "lineno" > 5< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l00006" name = "l00006" > < / a > < span class = "lineno" > 6< / span > < span class = "comment" > // http://www.apache.org/licenses/LICENSE-2.0< / span > < / div >
< div class = "line" > < a id = "l00007" name = "l00007" > < / a > < span class = "lineno" > 7< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l00008" name = "l00008" > < / a > < span class = "lineno" > 8< / span > < span class = "comment" > // Unless required by applicable law or agreed to in writing, software< / span > < / div >
< div class = "line" > < a id = "l00009" name = "l00009" > < / a > < span class = "lineno" > 9< / span > < span class = "comment" > // distributed under the License is distributed on an " AS IS" BASIS,< / span > < / div >
< div class = "line" > < a id = "l00010" name = "l00010" > < / a > < span class = "lineno" > 10< / span > < span class = "comment" > // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.< / span > < / div >
< div class = "line" > < a id = "l00011" name = "l00011" > < / a > < span class = "lineno" > 11< / span > < span class = "comment" > // See the License for the specific language governing permissions and< / span > < / div >
< div class = "line" > < a id = "l00012" name = "l00012" > < / a > < span class = "lineno" > 12< / span > < span class = "comment" > // limitations under the License.< / span > < / div >
< div class = "line" > < a id = "l00013" name = "l00013" > < / a > < span class = "lineno" > 13< / span > < / div >
< div class = "line" > < a id = "l00048" name = "l00048" > < / a > < span class = "lineno" > 48< / span > < / div >
< div class = "line" > < a id = "l00049" name = "l00049" > < / a > < span class = "lineno" > 49< / span > < span class = "preprocessor" > #ifndef OR_TOOLS_CONSTRAINT_SOLVER_CONSTRAINT_SOLVERI_H_< / span > < / div >
< div class = "line" > < a id = "l00050" name = "l00050" > < / a > < span class = "lineno" > 50< / span > < span class = "preprocessor" > #define OR_TOOLS_CONSTRAINT_SOLVER_CONSTRAINT_SOLVERI_H_< / span > < / div >
< div class = "line" > < a id = "l00051" name = "l00051" > < / a > < span class = "lineno" > 51< / span > < / div >
< div class = "line" > < a id = "l00052" name = "l00052" > < / a > < span class = "lineno" > 52< / span > < span class = "preprocessor" > #include < stdint.h> < / span > < / div >
< div class = "line" > < a id = "l00053" name = "l00053" > < / a > < span class = "lineno" > 53< / span > < span class = "preprocessor" > #include < string.h> < / span > < / div >
< div class = "line" > < a id = "l00054" name = "l00054" > < / a > < span class = "lineno" > 54< / span > < / div >
< div class = "line" > < a id = "l00055" name = "l00055" > < / a > < span class = "lineno" > 55< / span > < span class = "preprocessor" > #include < algorithm> < / span > < / div >
< div class = "line" > < a id = "l00056" name = "l00056" > < / a > < span class = "lineno" > 56< / span > < span class = "preprocessor" > #include < functional> < / span > < / div >
< div class = "line" > < a id = "l00057" name = "l00057" > < / a > < span class = "lineno" > 57< / span > < span class = "preprocessor" > #include < initializer_list> < / span > < / div >
< div class = "line" > < a id = "l00058" name = "l00058" > < / a > < span class = "lineno" > 58< / span > < span class = "preprocessor" > #include < memory> < / span > < / div >
< div class = "line" > < a id = "l00059" name = "l00059" > < / a > < span class = "lineno" > 59< / span > < span class = "preprocessor" > #include < string> < / span > < / div >
< div class = "line" > < a id = "l00060" name = "l00060" > < / a > < span class = "lineno" > 60< / span > < span class = "preprocessor" > #include < utility> < / span > < / div >
< div class = "line" > < a id = "l00061" name = "l00061" > < / a > < span class = "lineno" > 61< / span > < span class = "preprocessor" > #include < vector> < / span > < / div >
< div class = "line" > < a id = "l00062" name = "l00062" > < / a > < span class = "lineno" > 62< / span > < / div >
< div class = "line" > < a id = "l00063" name = "l00063" > < / a > < span class = "lineno" > 63< / span > < span class = "preprocessor" > #include " absl/container/flat_hash_map.h" < / span > < / div >
< div class = "line" > < a id = "l00064" name = "l00064" > < / a > < span class = "lineno" > 64< / span > < span class = "preprocessor" > #include " absl/strings/str_cat.h" < / span > < / div >
< div class = "line" > < a id = "l00065" name = "l00065" > < / a > < span class = "lineno" > 65< / span > < span class = "preprocessor" > #include " < a class = "code" href = "integral__types_8h.html" > ortools/base/integral_types.h< / a > " < / span > < / div >
< div class = "line" > < a id = "l00066" name = "l00066" > < / a > < span class = "lineno" > 66< / span > < span class = "preprocessor" > #include " < a class = "code" href = "base_2logging_8h.html" > ortools/base/logging.h< / a > " < / span > < / div >
< div class = "line" > < a id = "l00067" name = "l00067" > < / a > < span class = "lineno" > 67< / span > < span class = "preprocessor" > #include " < a class = "code" href = "timer_8h.html" > ortools/base/timer.h< / a > " < / span > < / div >
< div class = "line" > < a id = "l00068" name = "l00068" > < / a > < span class = "lineno" > 68< / span > < span class = "preprocessor" > #include " < a class = "code" href = "constraint__solver_8h.html" > ortools/constraint_solver/constraint_solver.h< / a > " < / span > < / div >
< div class = "line" > < a id = "l00069" name = "l00069" > < / a > < span class = "lineno" > 69< / span > < span class = "preprocessor" > #include " < a class = "code" href = "bitset_8h.html" > ortools/util/bitset.h< / a > " < / span > < / div >
< div class = "line" > < a id = "l00070" name = "l00070" > < / a > < span class = "lineno" > 70< / span > < span class = "preprocessor" > #include " < a class = "code" href = "tuple__set_8h.html" > ortools/util/tuple_set.h< / a > " < / span > < / div >
< div class = "line" > < a id = "l00071" name = "l00071" > < / a > < span class = "lineno" > 71< / span > < / div >
< div class = "line" > < a id = "l00072" name = "l00072" > < / a > < span class = "lineno" > 72< / span > < span class = "keyword" > namespace < / span > < a class = "code hl_namespace" href = "namespaceoperations__research.html" > operations_research< / a > {< / div >
< div class = "line" > < a id = "l00073" name = "l00073" > < / a > < span class = "lineno" > 73< / span > < / div >
< div class = "line" > < a id = "l00099" name = "l00099" > < / a > < span class = "lineno" > 99< / span > < span class = "keyword" > class < / span > LocalSearchMonitor;< / div >
< div class = "line" > < a id = "l00100" name = "l00100" > < / a > < span class = "lineno" > 100< / span > < / div >
< div class = "line" > < a id = "l00101" name = "l00101" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_base_int_expr.html" > 101< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_base_int_expr.html" > BaseIntExpr< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > {< / div >
< div class = "line" > < a id = "l00102" name = "l00102" > < / a > < span class = "lineno" > 102< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00103" name = "l00103" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_base_int_expr.html#a1040963d944bb74b3f2cbfb4f03a89d0" > 103< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_int_expr.html#a1040963d944bb74b3f2cbfb4f03a89d0" > BaseIntExpr< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s) : < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > (s), var_(nullptr) {}< / div >
< div class = "line" > < a id = "l00104" name = "l00104" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_base_int_expr.html#ad10ba599bb4d5563b023f6d80363e713" > 104< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_int_expr.html#ad10ba599bb4d5563b023f6d80363e713" > ~BaseIntExpr< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00105" name = "l00105" > < / a > < span class = "lineno" > 105< / span > < / div >
< div class = "line" > < a id = "l00106" name = "l00106" > < / a > < span class = "lineno" > 106< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_base_int_expr.html#aabb6b039a96b1f9aaed302ba620c08cd" > Var< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l00107" name = "l00107" > < / a > < span class = "lineno" > 107< / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_base_int_expr.html#a6ba6001437b394e4a55076c4369b8113" > CastToVar< / a > ();< / div >
< div class = "line" > < a id = "l00108" name = "l00108" > < / a > < span class = "lineno" > 108< / span > < / div >
< div class = "line" > < a id = "l00109" name = "l00109" > < / a > < span class = "lineno" > 109< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00110" name = "l00110" > < / a > < span class = "lineno" > 110< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * var_;< / div >
< div class = "line" > < a id = "l00111" name = "l00111" > < / a > < span class = "lineno" > 111< / span > };< / div >
< div class = "line" > < a id = "l00112" name = "l00112" > < / a > < span class = "lineno" > 112< / span > < / div >
< div class = "line" > < a id = "l00115" name = "l00115" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2" > 115< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2" > VarTypes< / a > {< / div >
< div class = "line" > < a id = "l00116" name = "l00116" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce" > 116< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce" > UNSPECIFIED< / a > ,< / div >
< div class = "line" > < a id = "l00117" name = "l00117" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38" > 117< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38" > DOMAIN_INT_VAR< / a > ,< / div >
< div class = "line" > < a id = "l00118" name = "l00118" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" > 118< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" > BOOLEAN_VAR< / a > ,< / div >
< div class = "line" > < a id = "l00119" name = "l00119" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b" > 119< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b" > CONST_VAR< / a > ,< / div >
< div class = "line" > < a id = "l00120" name = "l00120" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0" > 120< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0" > VAR_ADD_CST< / a > ,< / div >
< div class = "line" > < a id = "l00121" name = "l00121" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36" > 121< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36" > VAR_TIMES_CST< / a > ,< / div >
< div class = "line" > < a id = "l00122" name = "l00122" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30" > 122< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30" > CST_SUB_VAR< / a > ,< / div >
< div class = "line" > < a id = "l00123" name = "l00123" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860" > 123< / a > < / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860" > OPP_VAR< / a > ,< / div >
< div class = "line" > < a id = "l00124" name = "l00124" > < / a > < span class = "lineno" > 124< / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6" > TRACE_VAR< / a > < / div >
< div class = "line" > < a id = "l00125" name = "l00125" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6" > 125< / a > < / span > };< / div >
< div class = "line" > < a id = "l00126" name = "l00126" > < / a > < span class = "lineno" > 126< / span > < / div >
< div class = "line" > < a id = "l00135" name = "l00135" > < / a > < span class = "lineno" > 135< / span > < span class = "preprocessor" > #ifndef SWIG< / span > < / div >
< div class = "line" > < a id = "l00136" name = "l00136" > < / a > < span class = "lineno" > 136< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l00137" name = "l00137" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" > 137< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" > SimpleRevFIFO< / a > {< / div >
< div class = "line" > < a id = "l00138" name = "l00138" > < / a > < span class = "lineno" > 138< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00139" name = "l00139" > < / a > < span class = "lineno" > 139< / span > < span class = "keyword" > enum< / span > { CHUNK_SIZE = 16 }; < span class = "comment" > // TODO(user): could be an extra template param< / span > < / div >
< div class = "line" > < a id = "l00140" name = "l00140" > < / a > < span class = "lineno" > 140< / span > < span class = "keyword" > struct < / span > Chunk {< / div >
< div class = "line" > < a id = "l00141" name = "l00141" > < / a > < span class = "lineno" > 141< / span > T data_[CHUNK_SIZE];< / div >
< div class = "line" > < a id = "l00142" name = "l00142" > < / a > < span class = "lineno" > 142< / span > < span class = "keyword" > const< / span > Chunk* < span class = "keyword" > const< / span > next_;< / div >
< div class = "line" > < a id = "l00143" name = "l00143" > < / a > < span class = "lineno" > 143< / span > < span class = "keyword" > explicit< / span > Chunk(< span class = "keyword" > const< / span > Chunk* < a class = "code hl_variable" href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > ) : next_(< a class = "code hl_variable" href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > ) {}< / div >
< div class = "line" > < a id = "l00144" name = "l00144" > < / a > < span class = "lineno" > 144< / span > };< / div >
< div class = "line" > < a id = "l00145" name = "l00145" > < / a > < span class = "lineno" > 145< / span > < / div >
< div class = "line" > < a id = "l00146" name = "l00146" > < / a > < span class = "lineno" > 146< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00148" name = "l00148" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html" > 148< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html" > Iterator< / a > {< / div >
< div class = "line" > < a id = "l00149" name = "l00149" > < / a > < span class = "lineno" > 149< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00150" name = "l00150" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a5d5b15d8c55444f6730c4b54e8365e34" > 150< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a5d5b15d8c55444f6730c4b54e8365e34" > Iterator< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" > SimpleRevFIFO< T> < / a > * l)< / div >
< div class = "line" > < a id = "l00151" name = "l00151" > < / a > < span class = "lineno" > 151< / span > : chunk_(l-> chunks_), value_(l-> < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a8e1916ec93af03f2667921b00287c6c2" > Last< / a > ()) {}< / div >
< div class = "line" > < a id = "l00152" name = "l00152" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a03cb7eaa663dc83af68bc28a596d09e6" > 152< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a03cb7eaa663dc83af68bc28a596d09e6" > ok< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > (value_ != < span class = "keyword" > nullptr< / span > ); }< / div >
< div class = "line" > < a id = "l00153" name = "l00153" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a4f623cf5dc191f1dc0257dc5701228a3" > 153< / a > < / span > T < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a4f623cf5dc191f1dc0257dc5701228a3" > operator*< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > *value_; }< / div >
< div class = "line" > < a id = "l00154" name = "l00154" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a00f008b80917746917b874d00abd02a9" > 154< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a00f008b80917746917b874d00abd02a9" > operator++< / a > () {< / div >
< div class = "line" > < a id = "l00155" name = "l00155" > < / a > < span class = "lineno" > 155< / span > ++value_;< / div >
< div class = "line" > < a id = "l00156" name = "l00156" > < / a > < span class = "lineno" > 156< / span > < span class = "keywordflow" > if< / span > (value_ == chunk_-> data_ + CHUNK_SIZE) {< / div >
< div class = "line" > < a id = "l00157" name = "l00157" > < / a > < span class = "lineno" > 157< / span > chunk_ = chunk_-> next_;< / div >
< div class = "line" > < a id = "l00158" name = "l00158" > < / a > < span class = "lineno" > 158< / span > value_ = chunk_ ? chunk_-> data_ : < span class = "keyword" > nullptr< / span > ;< / div >
< div class = "line" > < a id = "l00159" name = "l00159" > < / a > < span class = "lineno" > 159< / span > }< / div >
< div class = "line" > < a id = "l00160" name = "l00160" > < / a > < span class = "lineno" > 160< / span > }< / div >
< div class = "line" > < a id = "l00161" name = "l00161" > < / a > < span class = "lineno" > 161< / span > < / div >
< div class = "line" > < a id = "l00162" name = "l00162" > < / a > < span class = "lineno" > 162< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00163" name = "l00163" > < / a > < span class = "lineno" > 163< / span > < span class = "keyword" > const< / span > Chunk* chunk_;< / div >
< div class = "line" > < a id = "l00164" name = "l00164" > < / a > < span class = "lineno" > 164< / span > < span class = "keyword" > const< / span > T* value_;< / div >
< div class = "line" > < a id = "l00165" name = "l00165" > < / a > < span class = "lineno" > 165< / span > };< / div >
< div class = "line" > < a id = "l00166" name = "l00166" > < / a > < span class = "lineno" > 166< / span > < / div >
< div class = "line" > < a id = "l00167" name = "l00167" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#adae7d9827dba5077a4e09158d8dbabcc" > 167< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#adae7d9827dba5077a4e09158d8dbabcc" > SimpleRevFIFO< / a > () : chunks_(nullptr), pos_(0) {}< / div >
< div class = "line" > < a id = "l00168" name = "l00168" > < / a > < span class = "lineno" > 168< / span > < / div >
< div class = "line" > < a id = "l00169" name = "l00169" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#ac75dccd75215a324b2add603b8631ed5" > 169< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#ac75dccd75215a324b2add603b8631ed5" > Push< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T val) {< / div >
< div class = "line" > < a id = "l00170" name = "l00170" > < / a > < span class = "lineno" > 170< / span > < span class = "keywordflow" > if< / span > (pos_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () == 0) {< / div >
< div class = "line" > < a id = "l00171" name = "l00171" > < / a > < span class = "lineno" > 171< / span > Chunk* < span class = "keyword" > const< / span > chunk = s-> UnsafeRevAlloc(< span class = "keyword" > new< / span > Chunk(chunks_));< / div >
< div class = "line" > < a id = "l00172" name = "l00172" > < / a > < span class = "lineno" > 172< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#a675d33a9ef9aa399017fb68e652c7a5c" > SaveAndSetValue< / a > (< span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > **< span class = "keyword" > > < / span > (& chunks_),< / div >
< div class = "line" > < a id = "l00173" name = "l00173" > < / a > < span class = "lineno" > 173< / span > < span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > *< span class = "keyword" > > < / span > (chunk));< / div >
< div class = "line" > < a id = "l00174" name = "l00174" > < / a > < span class = "lineno" > 174< / span > pos_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#a95da6a138a3b56de0cf0c3c4ba7c4688" > SetValue< / a > (s, CHUNK_SIZE - 1);< / div >
< div class = "line" > < a id = "l00175" name = "l00175" > < / a > < span class = "lineno" > 175< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l00176" name = "l00176" > < / a > < span class = "lineno" > 176< / span > pos_.< a class = "code hl_function" href = "classoperations__research_1_1_numerical_rev.html#a83c8a2812799fd87becd114374fb1d36" > Decr< / a > (s);< / div >
< div class = "line" > < a id = "l00177" name = "l00177" > < / a > < span class = "lineno" > 177< / span > }< / div >
< div class = "line" > < a id = "l00178" name = "l00178" > < / a > < span class = "lineno" > 178< / span > chunks_-> data_[pos_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ()] = val;< / div >
< div class = "line" > < a id = "l00179" name = "l00179" > < / a > < span class = "lineno" > 179< / span > }< / div >
< div class = "line" > < a id = "l00180" name = "l00180" > < / a > < span class = "lineno" > 180< / span > < / div >
< div class = "line" > < a id = "l00182" name = "l00182" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#abc8f4bc09139f8f3951cc8280823a0f3" > 182< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#abc8f4bc09139f8f3951cc8280823a0f3" > PushIfNotTop< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T val) {< / div >
< div class = "line" > < a id = "l00183" name = "l00183" > < / a > < span class = "lineno" > 183< / span > < span class = "keywordflow" > if< / span > (chunks_ == < span class = "keyword" > nullptr< / span > || < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#aa2770463f2ad695d4d3b18e7cada907f" > LastValue< / a > () != val) {< / div >
< div class = "line" > < a id = "l00184" name = "l00184" > < / a > < span class = "lineno" > 184< / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#ac75dccd75215a324b2add603b8631ed5" > Push< / a > (s, val);< / div >
< div class = "line" > < a id = "l00185" name = "l00185" > < / a > < span class = "lineno" > 185< / span > }< / div >
< div class = "line" > < a id = "l00186" name = "l00186" > < / a > < span class = "lineno" > 186< / span > }< / div >
< div class = "line" > < a id = "l00187" name = "l00187" > < / a > < span class = "lineno" > 187< / span > < / div >
< div class = "line" > < a id = "l00189" name = "l00189" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a8e1916ec93af03f2667921b00287c6c2" > 189< / a > < / span > < span class = "keyword" > const< / span > T* < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a8e1916ec93af03f2667921b00287c6c2" > Last< / a > ()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00190" name = "l00190" > < / a > < span class = "lineno" > 190< / span > < span class = "keywordflow" > return< / span > chunks_ ? & chunks_-> data_[pos_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ()] : < span class = "keyword" > nullptr< / span > ;< / div >
< div class = "line" > < a id = "l00191" name = "l00191" > < / a > < span class = "lineno" > 191< / span > }< / div >
< div class = "line" > < a id = "l00192" name = "l00192" > < / a > < span class = "lineno" > 192< / span > < / div >
< div class = "line" > < a id = "l00193" name = "l00193" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a0903aed95afe1d5c18a6a85a57fbcf1c" > 193< / a > < / span > T* < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a0903aed95afe1d5c18a6a85a57fbcf1c" > MutableLast< / a > () { < span class = "keywordflow" > return< / span > chunks_ ? & chunks_-> data_[pos_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ()] : < span class = "keyword" > nullptr< / span > ; }< / div >
< div class = "line" > < a id = "l00194" name = "l00194" > < / a > < span class = "lineno" > 194< / span > < / div >
< div class = "line" > < a id = "l00196" name = "l00196" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#aa2770463f2ad695d4d3b18e7cada907f" > 196< / a > < / span > < span class = "keyword" > const< / span > T& < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#aa2770463f2ad695d4d3b18e7cada907f" > LastValue< / a > ()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00197" name = "l00197" > < / a > < span class = "lineno" > 197< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (chunks_);< / div >
< div class = "line" > < a id = "l00198" name = "l00198" > < / a > < span class = "lineno" > 198< / span > < span class = "keywordflow" > return< / span > chunks_-> data_[pos_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ()];< / div >
< div class = "line" > < a id = "l00199" name = "l00199" > < / a > < span class = "lineno" > 199< / span > }< / div >
< div class = "line" > < a id = "l00200" name = "l00200" > < / a > < span class = "lineno" > 200< / span > < / div >
< div class = "line" > < a id = "l00202" name = "l00202" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a374c7d46981794e6b107b12a0f3b4dea" > 202< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a374c7d46981794e6b107b12a0f3b4dea" > SetLastValue< / a > (< span class = "keyword" > const< / span > T& v) {< / div >
< div class = "line" > < a id = "l00203" name = "l00203" > < / a > < span class = "lineno" > 203< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (< a class = "code hl_function" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a8e1916ec93af03f2667921b00287c6c2" > Last< / a > ());< / div >
< div class = "line" > < a id = "l00204" name = "l00204" > < / a > < span class = "lineno" > 204< / span > chunks_-> data_[pos_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ()] = v;< / div >
< div class = "line" > < a id = "l00205" name = "l00205" > < / a > < span class = "lineno" > 205< / span > }< / div >
< div class = "line" > < a id = "l00206" name = "l00206" > < / a > < span class = "lineno" > 206< / span > < / div >
< div class = "line" > < a id = "l00207" name = "l00207" > < / a > < span class = "lineno" > 207< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00208" name = "l00208" > < / a > < span class = "lineno" > 208< / span > Chunk* chunks_;< / div >
< div class = "line" > < a id = "l00209" name = "l00209" > < / a > < span class = "lineno" > 209< / span > < a class = "code hl_class" href = "classoperations__research_1_1_numerical_rev.html" > NumericalRev< int> < / a > pos_;< / div >
< div class = "line" > < a id = "l00210" name = "l00210" > < / a > < span class = "lineno" > 210< / span > };< / div >
< div class = "line" > < a id = "l00211" name = "l00211" > < / a > < span class = "lineno" > 211< / span > < / div >
< div class = "line" > < a id = "l00213" name = "l00213" > < / a > < span class = "lineno" > 213< / span > < span class = "comment" > // TODO(user): use murmurhash.< / span > < / div >
< div class = "line" > < a id = "l00214" name = "l00214" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > 214< / a > < / span > < span class = "keyword" > inline< / span > uint64_t < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (uint64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l00215" name = "l00215" > < / a > < span class = "lineno" > 215< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > = (~value) + (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < < 21); < / div >
< div class = "line" > < a id = "l00216" name = "l00216" > < / a > < span class = "lineno" > 216< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ^= < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > > > 24;< / div >
< div class = "line" > < a id = "l00217" name = "l00217" > < / a > < span class = "lineno" > 217< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > += (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < < 3) + (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < < 8); < / div >
< div class = "line" > < a id = "l00218" name = "l00218" > < / a > < span class = "lineno" > 218< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ^= < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > > > 14;< / div >
< div class = "line" > < a id = "l00219" name = "l00219" > < / a > < span class = "lineno" > 219< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > += (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < < 2) + (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < < 4); < / div >
< div class = "line" > < a id = "l00220" name = "l00220" > < / a > < span class = "lineno" > 220< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ^= < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > > > 28;< / div >
< div class = "line" > < a id = "l00221" name = "l00221" > < / a > < span class = "lineno" > 221< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > += (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < < 31);< / div >
< div class = "line" > < a id = "l00222" name = "l00222" > < / a > < span class = "lineno" > 222< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ;< / div >
< div class = "line" > < a id = "l00223" name = "l00223" > < / a > < span class = "lineno" > 223< / span > }< / div >
< div class = "line" > < a id = "l00224" name = "l00224" > < / a > < span class = "lineno" > 224< / span > < / div >
< div class = "line" > < a id = "l00225" name = "l00225" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a5c150546a98dce59439f838f68493d84" > 225< / a > < / span > < span class = "keyword" > inline< / span > uint64_t < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (uint32_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l00226" name = "l00226" > < / a > < span class = "lineno" > 226< / span > uint64_t < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > = < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ;< / div >
< div class = "line" > < a id = "l00227" name = "l00227" > < / a > < span class = "lineno" > 227< / span > < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > = (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > + 0x7ed55d16) + (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > < < 12);< / div >
< div class = "line" > < a id = "l00228" name = "l00228" > < / a > < span class = "lineno" > 228< / span > < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > = (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > ^ 0xc761c23c) ^ (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > > > 19);< / div >
< div class = "line" > < a id = "l00229" name = "l00229" > < / a > < span class = "lineno" > 229< / span > < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > = (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > + 0x165667b1) + (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > < < 5);< / div >
< div class = "line" > < a id = "l00230" name = "l00230" > < / a > < span class = "lineno" > 230< / span > < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > = (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > + 0xd3a2646c) ^ (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > < < 9);< / div >
< div class = "line" > < a id = "l00231" name = "l00231" > < / a > < span class = "lineno" > 231< / span > < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > = (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > + 0xfd7046c5) + (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > < < 3);< / div >
< div class = "line" > < a id = "l00232" name = "l00232" > < / a > < span class = "lineno" > 232< / span > < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > = (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > ^ 0xb55a4f09) ^ (< a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > > > 16);< / div >
< div class = "line" > < a id = "l00233" name = "l00233" > < / a > < span class = "lineno" > 233< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > ;< / div >
< div class = "line" > < a id = "l00234" name = "l00234" > < / a > < span class = "lineno" > 234< / span > }< / div >
< div class = "line" > < a id = "l00235" name = "l00235" > < / a > < span class = "lineno" > 235< / span > < / div >
< div class = "line" > < a id = "l00236" name = "l00236" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a8e95e16a711ae93395f3735e07708708" > 236< / a > < / span > < span class = "keyword" > inline< / span > uint64_t < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l00237" name = "l00237" > < / a > < span class = "lineno" > 237< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keyword" > static_cast< < / span > uint64_t< span class = "keyword" > > < / span > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ));< / div >
< div class = "line" > < a id = "l00238" name = "l00238" > < / a > < span class = "lineno" > 238< / span > }< / div >
< div class = "line" > < a id = "l00239" name = "l00239" > < / a > < span class = "lineno" > 239< / span > < / div >
< div class = "line" > < a id = "l00240" name = "l00240" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a53a6358ea0e13e600820df98156f132d" > 240< / a > < / span > < span class = "keyword" > inline< / span > uint64_t < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) { < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keyword" > static_cast< < / span > uint32_t< span class = "keyword" > > < / span > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > )); }< / div >
< div class = "line" > < a id = "l00241" name = "l00241" > < / a > < span class = "lineno" > 241< / span > < / div >
< div class = "line" > < a id = "l00242" name = "l00242" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a24d85d1e77f31f346dba6bdc02067473" > 242< / a > < / span > < span class = "keyword" > inline< / span > uint64_t < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keywordtype" > void< / span > * < span class = "keyword" > const< / span > ptr) {< / div >
< div class = "line" > < a id = "l00243" name = "l00243" > < / a > < span class = "lineno" > 243< / span > < span class = "preprocessor" > #if defined(__x86_64__) || defined(_M_X64) || defined(__powerpc64__) || \< / span > < / div >
< div class = "line" > < a id = "l00244" name = "l00244" > < / a > < span class = "lineno" > 244< / span > < span class = "preprocessor" > defined(__aarch64__)< / span > < / div >
< div class = "line" > < a id = "l00245" name = "l00245" > < / a > < span class = "lineno" > 245< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keyword" > reinterpret_cast< < / span > uint64_t< span class = "keyword" > > < / span > (ptr));< / div >
< div class = "line" > < a id = "l00246" name = "l00246" > < / a > < span class = "lineno" > 246< / span > < span class = "preprocessor" > #else< / span > < / div >
< div class = "line" > < a id = "l00247" name = "l00247" > < / a > < span class = "lineno" > 247< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keyword" > reinterpret_cast< < / span > uint32_t< span class = "keyword" > > < / span > (ptr));< / div >
< div class = "line" > < a id = "l00248" name = "l00248" > < / a > < span class = "lineno" > 248< / span > < span class = "preprocessor" > #endif< / span > < / div >
< div class = "line" > < a id = "l00249" name = "l00249" > < / a > < span class = "lineno" > 249< / span > }< / div >
< div class = "line" > < a id = "l00250" name = "l00250" > < / a > < span class = "lineno" > 250< / span > < / div >
< div class = "line" > < a id = "l00251" name = "l00251" > < / a > < span class = "lineno" > 251< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l00252" name = "l00252" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a14927dac339bd5be7348433e5ae46551" > 252< / a > < / span > uint64_t < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keyword" > const< / span > std::vector< T*> & ptrs) {< / div >
< div class = "line" > < a id = "l00253" name = "l00253" > < / a > < span class = "lineno" > 253< / span > < span class = "keywordflow" > if< / span > (ptrs.empty()) < span class = "keywordflow" > return< / span > 0;< / div >
< div class = "line" > < a id = "l00254" name = "l00254" > < / a > < span class = "lineno" > 254< / span > < span class = "keywordflow" > if< / span > (ptrs.size() == 1) < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (ptrs[0]);< / div >
< div class = "line" > < a id = "l00255" name = "l00255" > < / a > < span class = "lineno" > 255< / span > uint64_t < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > = < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (ptrs[0]);< / div >
< div class = "line" > < a id = "l00256" name = "l00256" > < / a > < span class = "lineno" > 256< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 1; i < ptrs.size(); ++i) {< / div >
< div class = "line" > < a id = "l00257" name = "l00257" > < / a > < span class = "lineno" > 257< / span > < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > = < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > * i + < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (ptrs[i]);< / div >
< div class = "line" > < a id = "l00258" name = "l00258" > < / a > < span class = "lineno" > 258< / span > }< / div >
< div class = "line" > < a id = "l00259" name = "l00259" > < / a > < span class = "lineno" > 259< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > ;< / div >
< div class = "line" > < a id = "l00260" name = "l00260" > < / a > < span class = "lineno" > 260< / span > }< / div >
< div class = "line" > < a id = "l00261" name = "l00261" > < / a > < span class = "lineno" > 261< / span > < / div >
< div class = "line" > < a id = "l00262" name = "l00262" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a597f70b9007402fadc265ccb27687966" > 262< / a > < / span > < span class = "keyword" > inline< / span > uint64_t < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (< span class = "keyword" > const< / span > std::vector< int64_t> & ptrs) {< / div >
< div class = "line" > < a id = "l00263" name = "l00263" > < / a > < span class = "lineno" > 263< / span > < span class = "keywordflow" > if< / span > (ptrs.empty()) < span class = "keywordflow" > return< / span > 0;< / div >
< div class = "line" > < a id = "l00264" name = "l00264" > < / a > < span class = "lineno" > 264< / span > < span class = "keywordflow" > if< / span > (ptrs.size() == 1) < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (ptrs[0]);< / div >
< div class = "line" > < a id = "l00265" name = "l00265" > < / a > < span class = "lineno" > 265< / span > uint64_t < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > = < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (ptrs[0]);< / div >
< div class = "line" > < a id = "l00266" name = "l00266" > < / a > < span class = "lineno" > 266< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 1; i < ptrs.size(); ++i) {< / div >
< div class = "line" > < a id = "l00267" name = "l00267" > < / a > < span class = "lineno" > 267< / span > < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > = < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > * i + < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (ptrs[i]);< / div >
< div class = "line" > < a id = "l00268" name = "l00268" > < / a > < span class = "lineno" > 268< / span > }< / div >
< div class = "line" > < a id = "l00269" name = "l00269" > < / a > < span class = "lineno" > 269< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > ;< / div >
< div class = "line" > < a id = "l00270" name = "l00270" > < / a > < span class = "lineno" > 270< / span > }< / div >
< div class = "line" > < a id = "l00271" name = "l00271" > < / a > < span class = "lineno" > 271< / span > < / div >
< div class = "line" > < a id = "l00274" name = "l00274" > < / a > < span class = "lineno" > 274< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > K, < span class = "keyword" > class< / span > V> < / div >
< div class = "line" > < a id = "l00275" name = "l00275" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_immutable_multi_map.html" > 275< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_immutable_multi_map.html" > RevImmutableMultiMap< / a > {< / div >
< div class = "line" > < a id = "l00276" name = "l00276" > < / a > < span class = "lineno" > 276< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00277" name = "l00277" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a3c7e62a9a396c5d8fd2b85b762c2a850" > 277< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a3c7e62a9a396c5d8fd2b85b762c2a850" > RevImmutableMultiMap< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keywordtype" > int< / span > initial_size)< / div >
< div class = "line" > < a id = "l00278" name = "l00278" > < / a > < span class = "lineno" > 278< / span > : solver_(solver),< / div >
< div class = "line" > < a id = "l00279" name = "l00279" > < / a > < span class = "lineno" > 279< / span > array_(solver-> UnsafeRevAllocArray(new Cell*[initial_size])),< / div >
< div class = "line" > < a id = "l00280" name = "l00280" > < / a > < span class = "lineno" > 280< / span > size_(initial_size),< / div >
< div class = "line" > < a id = "l00281" name = "l00281" > < / a > < span class = "lineno" > 281< / span > num_items_(0) {< / div >
< div class = "line" > < a id = "l00282" name = "l00282" > < / a > < span class = "lineno" > 282< / span > memset(array_, 0, < span class = "keyword" > sizeof< / span > (*array_) * size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ());< / div >
< div class = "line" > < a id = "l00283" name = "l00283" > < / a > < span class = "lineno" > 283< / span > }< / div >
< div class = "line" > < a id = "l00284" name = "l00284" > < / a > < span class = "lineno" > 284< / span > < / div >
< div class = "line" > < a id = "l00285" name = "l00285" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a6053bb9c0d664074153ddfd9c7cd2598" > 285< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a6053bb9c0d664074153ddfd9c7cd2598" > ~RevImmutableMultiMap< / a > () {}< / div >
< div class = "line" > < a id = "l00286" name = "l00286" > < / a > < span class = "lineno" > 286< / span > < / div >
< div class = "line" > < a id = "l00287" name = "l00287" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_immutable_multi_map.html#ab273f390966237d6f5cdb9c45f5361d6" > 287< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_immutable_multi_map.html#ab273f390966237d6f5cdb9c45f5361d6" > num_items< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > num_items_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > (); }< / div >
< div class = "line" > < a id = "l00288" name = "l00288" > < / a > < span class = "lineno" > 288< / span > < / div >
< div class = "line" > < a id = "l00290" name = "l00290" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a8f6b848968f58150836b9fba3dea4aef" > 290< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a8f6b848968f58150836b9fba3dea4aef" > ContainsKey< / a > (< span class = "keyword" > const< / span > K& key)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00291" name = "l00291" > < / a > < span class = "lineno" > 291< / span > uint64_t code = < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (key) % size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ();< / div >
< div class = "line" > < a id = "l00292" name = "l00292" > < / a > < span class = "lineno" > 292< / span > Cell* tmp = array_[code];< / div >
< div class = "line" > < a id = "l00293" name = "l00293" > < / a > < span class = "lineno" > 293< / span > < span class = "keywordflow" > while< / span > (tmp) {< / div >
< div class = "line" > < a id = "l00294" name = "l00294" > < / a > < span class = "lineno" > 294< / span > < span class = "keywordflow" > if< / span > (tmp-> key() == key) {< / div >
< div class = "line" > < a id = "l00295" name = "l00295" > < / a > < span class = "lineno" > 295< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l00296" name = "l00296" > < / a > < span class = "lineno" > 296< / span > }< / div >
< div class = "line" > < a id = "l00297" name = "l00297" > < / a > < span class = "lineno" > 297< / span > tmp = tmp-> next();< / div >
< div class = "line" > < a id = "l00298" name = "l00298" > < / a > < span class = "lineno" > 298< / span > }< / div >
< div class = "line" > < a id = "l00299" name = "l00299" > < / a > < span class = "lineno" > 299< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l00300" name = "l00300" > < / a > < span class = "lineno" > 300< / span > }< / div >
< div class = "line" > < a id = "l00301" name = "l00301" > < / a > < span class = "lineno" > 301< / span > < / div >
< div class = "line" > < a id = "l00305" name = "l00305" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a5f616bf78c26f40857a7d6514b0d40a5" > 305< / a > < / span > < span class = "keyword" > const< / span > V& < a class = "code hl_function" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a5f616bf78c26f40857a7d6514b0d40a5" > FindWithDefault< / a > (< span class = "keyword" > const< / span > K& key, < span class = "keyword" > const< / span > V& default_value)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00306" name = "l00306" > < / a > < span class = "lineno" > 306< / span > uint64_t code = < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (key) % size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ();< / div >
< div class = "line" > < a id = "l00307" name = "l00307" > < / a > < span class = "lineno" > 307< / span > Cell* tmp = array_[code];< / div >
< div class = "line" > < a id = "l00308" name = "l00308" > < / a > < span class = "lineno" > 308< / span > < span class = "keywordflow" > while< / span > (tmp) {< / div >
< div class = "line" > < a id = "l00309" name = "l00309" > < / a > < span class = "lineno" > 309< / span > < span class = "keywordflow" > if< / span > (tmp-> key() == key) {< / div >
< div class = "line" > < a id = "l00310" name = "l00310" > < / a > < span class = "lineno" > 310< / span > < span class = "keywordflow" > return< / span > tmp-> value();< / div >
< div class = "line" > < a id = "l00311" name = "l00311" > < / a > < span class = "lineno" > 311< / span > }< / div >
< div class = "line" > < a id = "l00312" name = "l00312" > < / a > < span class = "lineno" > 312< / span > tmp = tmp-> next();< / div >
< div class = "line" > < a id = "l00313" name = "l00313" > < / a > < span class = "lineno" > 313< / span > }< / div >
< div class = "line" > < a id = "l00314" name = "l00314" > < / a > < span class = "lineno" > 314< / span > < span class = "keywordflow" > return< / span > default_value;< / div >
< div class = "line" > < a id = "l00315" name = "l00315" > < / a > < span class = "lineno" > 315< / span > }< / div >
< div class = "line" > < a id = "l00316" name = "l00316" > < / a > < span class = "lineno" > 316< / span > < / div >
< div class = "line" > < a id = "l00318" name = "l00318" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a0b5c13dc004b78fa86ae2a2e76f25f99" > 318< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_immutable_multi_map.html#a0b5c13dc004b78fa86ae2a2e76f25f99" > Insert< / a > (< span class = "keyword" > const< / span > K& key, < span class = "keyword" > const< / span > V& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l00319" name = "l00319" > < / a > < span class = "lineno" > 319< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > position = < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (key) % size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ();< / div >
< div class = "line" > < a id = "l00320" name = "l00320" > < / a > < span class = "lineno" > 320< / span > Cell* < span class = "keyword" > const< / span > cell =< / div >
< div class = "line" > < a id = "l00321" name = "l00321" > < / a > < span class = "lineno" > 321< / span > solver_-> UnsafeRevAlloc(< span class = "keyword" > new< / span > Cell(key, < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , array_[position]));< / div >
< div class = "line" > < a id = "l00322" name = "l00322" > < / a > < span class = "lineno" > 322< / span > solver_-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#a675d33a9ef9aa399017fb68e652c7a5c" > SaveAndSetValue< / a > (< span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > **< span class = "keyword" > > < / span > (& array_[position]),< / div >
< div class = "line" > < a id = "l00323" name = "l00323" > < / a > < span class = "lineno" > 323< / span > < span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > *< span class = "keyword" > > < / span > (cell));< / div >
< div class = "line" > < a id = "l00324" name = "l00324" > < / a > < span class = "lineno" > 324< / span > num_items_.< a class = "code hl_function" href = "classoperations__research_1_1_numerical_rev.html#ac8beef1ef5cd6ce8bdfb3f48016ff72b" > Incr< / a > (solver_);< / div >
< div class = "line" > < a id = "l00325" name = "l00325" > < / a > < span class = "lineno" > 325< / span > < span class = "keywordflow" > if< / span > (num_items_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () > 2 * size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ()) {< / div >
< div class = "line" > < a id = "l00326" name = "l00326" > < / a > < span class = "lineno" > 326< / span > Double();< / div >
< div class = "line" > < a id = "l00327" name = "l00327" > < / a > < span class = "lineno" > 327< / span > }< / div >
< div class = "line" > < a id = "l00328" name = "l00328" > < / a > < span class = "lineno" > 328< / span > }< / div >
< div class = "line" > < a id = "l00329" name = "l00329" > < / a > < span class = "lineno" > 329< / span > < / div >
< div class = "line" > < a id = "l00330" name = "l00330" > < / a > < span class = "lineno" > 330< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00331" name = "l00331" > < / a > < span class = "lineno" > 331< / span > < span class = "keyword" > class < / span > Cell {< / div >
< div class = "line" > < a id = "l00332" name = "l00332" > < / a > < span class = "lineno" > 332< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00333" name = "l00333" > < / a > < span class = "lineno" > 333< / span > Cell(< span class = "keyword" > const< / span > K& key, < span class = "keyword" > const< / span > V& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , Cell* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > )< / div >
< div class = "line" > < a id = "l00334" name = "l00334" > < / a > < span class = "lineno" > 334< / span > : key_(key), value_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ), next_(< a class = "code hl_variable" href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > ) {}< / div >
< div class = "line" > < a id = "l00335" name = "l00335" > < / a > < span class = "lineno" > 335< / span > < / div >
< div class = "line" > < a id = "l00336" name = "l00336" > < / a > < span class = "lineno" > 336< / span > < span class = "keywordtype" > void< / span > SetRevNext(Solver* < span class = "keyword" > const< / span > solver, Cell* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > ) {< / div >
< div class = "line" > < a id = "l00337" name = "l00337" > < / a > < span class = "lineno" > 337< / span > solver-> SaveAndSetValue(< span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > **< span class = "keyword" > > < / span > (& next_),< / div >
< div class = "line" > < a id = "l00338" name = "l00338" > < / a > < span class = "lineno" > 338< / span > < span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > *< span class = "keyword" > > < / span > (< a class = "code hl_variable" href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > ));< / div >
< div class = "line" > < a id = "l00339" name = "l00339" > < / a > < span class = "lineno" > 339< / span > }< / div >
< div class = "line" > < a id = "l00340" name = "l00340" > < / a > < span class = "lineno" > 340< / span > < / div >
< div class = "line" > < a id = "l00341" name = "l00341" > < / a > < span class = "lineno" > 341< / span > Cell* < a class = "code hl_variable" href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > next_; }< / div >
< div class = "line" > < a id = "l00342" name = "l00342" > < / a > < span class = "lineno" > 342< / span > < / div >
< div class = "line" > < a id = "l00343" name = "l00343" > < / a > < span class = "lineno" > 343< / span > < span class = "keyword" > const< / span > K& key()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > key_; }< / div >
< div class = "line" > < a id = "l00344" name = "l00344" > < / a > < span class = "lineno" > 344< / span > < / div >
< div class = "line" > < a id = "l00345" name = "l00345" > < / a > < span class = "lineno" > 345< / span > < span class = "keyword" > const< / span > V& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > value_; }< / div >
< div class = "line" > < a id = "l00346" name = "l00346" > < / a > < span class = "lineno" > 346< / span > < / div >
< div class = "line" > < a id = "l00347" name = "l00347" > < / a > < span class = "lineno" > 347< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00348" name = "l00348" > < / a > < span class = "lineno" > 348< / span > < span class = "keyword" > const< / span > K key_;< / div >
< div class = "line" > < a id = "l00349" name = "l00349" > < / a > < span class = "lineno" > 349< / span > < span class = "keyword" > const< / span > V value_;< / div >
< div class = "line" > < a id = "l00350" name = "l00350" > < / a > < span class = "lineno" > 350< / span > Cell* next_;< / div >
< div class = "line" > < a id = "l00351" name = "l00351" > < / a > < span class = "lineno" > 351< / span > };< / div >
< div class = "line" > < a id = "l00352" name = "l00352" > < / a > < span class = "lineno" > 352< / span > < / div >
< div class = "line" > < a id = "l00353" name = "l00353" > < / a > < span class = "lineno" > 353< / span > < span class = "keywordtype" > void< / span > Double() {< / div >
< div class = "line" > < a id = "l00354" name = "l00354" > < / a > < span class = "lineno" > 354< / span > Cell** < span class = "keyword" > const< / span > old_cell_array = array_;< / div >
< div class = "line" > < a id = "l00355" name = "l00355" > < / a > < span class = "lineno" > 355< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > old_size = size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ();< / div >
< div class = "line" > < a id = "l00356" name = "l00356" > < / a > < span class = "lineno" > 356< / span > size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#a95da6a138a3b56de0cf0c3c4ba7c4688" > SetValue< / a > (solver_, size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () * 2);< / div >
< div class = "line" > < a id = "l00357" name = "l00357" > < / a > < span class = "lineno" > 357< / span > solver_-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#a675d33a9ef9aa399017fb68e652c7a5c" > SaveAndSetValue< / a > (< / div >
< div class = "line" > < a id = "l00358" name = "l00358" > < / a > < span class = "lineno" > 358< / span > < span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > **< span class = "keyword" > > < / span > (& array_),< / div >
< div class = "line" > < a id = "l00359" name = "l00359" > < / a > < span class = "lineno" > 359< / span > < span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > *< span class = "keyword" > > < / span > (< / div >
< div class = "line" > < a id = "l00360" name = "l00360" > < / a > < span class = "lineno" > 360< / span > solver_-> UnsafeRevAllocArray(< span class = "keyword" > new< / span > Cell*[size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ()])));< / div >
< div class = "line" > < a id = "l00361" name = "l00361" > < / a > < span class = "lineno" > 361< / span > memset(array_, 0, size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () * < span class = "keyword" > sizeof< / span > (*array_));< / div >
< div class = "line" > < a id = "l00362" name = "l00362" > < / a > < span class = "lineno" > 362< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < old_size; ++i) {< / div >
< div class = "line" > < a id = "l00363" name = "l00363" > < / a > < span class = "lineno" > 363< / span > Cell* tmp = old_cell_array[i];< / div >
< div class = "line" > < a id = "l00364" name = "l00364" > < / a > < span class = "lineno" > 364< / span > < span class = "keywordflow" > while< / span > (tmp != < span class = "keyword" > nullptr< / span > ) {< / div >
< div class = "line" > < a id = "l00365" name = "l00365" > < / a > < span class = "lineno" > 365< / span > Cell* < span class = "keyword" > const< / span > to_reinsert = tmp;< / div >
< div class = "line" > < a id = "l00366" name = "l00366" > < / a > < span class = "lineno" > 366< / span > tmp = tmp-> next();< / div >
< div class = "line" > < a id = "l00367" name = "l00367" > < / a > < span class = "lineno" > 367< / span > < span class = "keyword" > const< / span > uint64_t new_position = < a class = "code hl_function" href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > Hash1< / a > (to_reinsert-> key()) % size_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > ();< / div >
< div class = "line" > < a id = "l00368" name = "l00368" > < / a > < span class = "lineno" > 368< / span > to_reinsert-> SetRevNext(solver_, array_[new_position]);< / div >
< div class = "line" > < a id = "l00369" name = "l00369" > < / a > < span class = "lineno" > 369< / span > solver_-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#a675d33a9ef9aa399017fb68e652c7a5c" > SaveAndSetValue< / a > (< / div >
< div class = "line" > < a id = "l00370" name = "l00370" > < / a > < span class = "lineno" > 370< / span > < span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > **< span class = "keyword" > > < / span > (& array_[new_position]),< / div >
< div class = "line" > < a id = "l00371" name = "l00371" > < / a > < span class = "lineno" > 371< / span > < span class = "keyword" > reinterpret_cast< < / span > < span class = "keywordtype" > void< / span > *< span class = "keyword" > > < / span > (to_reinsert));< / div >
< div class = "line" > < a id = "l00372" name = "l00372" > < / a > < span class = "lineno" > 372< / span > }< / div >
< div class = "line" > < a id = "l00373" name = "l00373" > < / a > < span class = "lineno" > 373< / span > }< / div >
< div class = "line" > < a id = "l00374" name = "l00374" > < / a > < span class = "lineno" > 374< / span > }< / div >
< div class = "line" > < a id = "l00375" name = "l00375" > < / a > < span class = "lineno" > 375< / span > < / div >
< div class = "line" > < a id = "l00376" name = "l00376" > < / a > < span class = "lineno" > 376< / span > Solver* < span class = "keyword" > const< / span > solver_;< / div >
< div class = "line" > < a id = "l00377" name = "l00377" > < / a > < span class = "lineno" > 377< / span > Cell** array_;< / div >
< div class = "line" > < a id = "l00378" name = "l00378" > < / a > < span class = "lineno" > 378< / span > NumericalRev< int> size_;< / div >
< div class = "line" > < a id = "l00379" name = "l00379" > < / a > < span class = "lineno" > 379< / span > NumericalRev< int> num_items_;< / div >
< div class = "line" > < a id = "l00380" name = "l00380" > < / a > < span class = "lineno" > 380< / span > };< / div >
< div class = "line" > < a id = "l00381" name = "l00381" > < / a > < span class = "lineno" > 381< / span > < / div >
< div class = "line" > < a id = "l00383" name = "l00383" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_switch.html" > 383< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_switch.html" > RevSwitch< / a > {< / div >
< div class = "line" > < a id = "l00384" name = "l00384" > < / a > < span class = "lineno" > 384< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00385" name = "l00385" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_switch.html#a52e986be86c35c4a5fd860e4e9c0f855" > 385< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_switch.html#a52e986be86c35c4a5fd860e4e9c0f855" > RevSwitch< / a > () : value_(false) {}< / div >
< div class = "line" > < a id = "l00386" name = "l00386" > < / a > < span class = "lineno" > 386< / span > < / div >
< div class = "line" > < a id = "l00387" name = "l00387" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_switch.html#acd90006e99a15f7e9df2aee5cf46549c" > 387< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_switch.html#acd90006e99a15f7e9df2aee5cf46549c" > Switched< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > value_; }< / div >
< div class = "line" > < a id = "l00388" name = "l00388" > < / a > < span class = "lineno" > 388< / span > < / div >
< div class = "line" > < a id = "l00389" name = "l00389" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_switch.html#aba56f30d7550dc96d418c689e3ea41f0" > 389< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_switch.html#aba56f30d7550dc96d418c689e3ea41f0" > Switch< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver) { solver-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#a675d33a9ef9aa399017fb68e652c7a5c" > SaveAndSetValue< / a > (& value_, < span class = "keyword" > true< / span > ); }< / div >
< div class = "line" > < a id = "l00390" name = "l00390" > < / a > < span class = "lineno" > 390< / span > < / div >
< div class = "line" > < a id = "l00391" name = "l00391" > < / a > < span class = "lineno" > 391< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00392" name = "l00392" > < / a > < span class = "lineno" > 392< / span > < span class = "keywordtype" > bool< / span > value_;< / div >
< div class = "line" > < a id = "l00393" name = "l00393" > < / a > < span class = "lineno" > 393< / span > };< / div >
< div class = "line" > < a id = "l00394" name = "l00394" > < / a > < span class = "lineno" > 394< / span > < / div >
< div class = "line" > < a id = "l00397" name = "l00397" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_small_rev_bit_set.html" > 397< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_small_rev_bit_set.html" > SmallRevBitSet< / a > {< / div >
< div class = "line" > < a id = "l00398" name = "l00398" > < / a > < span class = "lineno" > 398< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00399" name = "l00399" > < / a > < span class = "lineno" > 399< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_small_rev_bit_set.html#a7dd3bcd9082dd85b0af9db2010086d2d" > SmallRevBitSet< / a > (int64_t size);< / div >
< div class = "line" > < a id = "l00401" name = "l00401" > < / a > < span class = "lineno" > 401< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_small_rev_bit_set.html#ad262cac8f729abc8901904c302709f99" > SetToOne< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, int64_t pos);< / div >
< div class = "line" > < a id = "l00403" name = "l00403" > < / a > < span class = "lineno" > 403< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_small_rev_bit_set.html#a9b5d965cdd1d77de0d2b55c41d86b116" > SetToZero< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, int64_t pos);< / div >
< div class = "line" > < a id = "l00405" name = "l00405" > < / a > < span class = "lineno" > 405< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_small_rev_bit_set.html#a50b7e2f9702d2416550ce54327b73a9c" > Cardinality< / a > () < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00407" name = "l00407" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_small_rev_bit_set.html#ad175c4019a4a927bec26eb8cd819d81e" > 407< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_small_rev_bit_set.html#ad175c4019a4a927bec26eb8cd819d81e" > IsCardinalityZero< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > bits_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () == uint64_t{0}; }< / div >
< div class = "line" > < a id = "l00409" name = "l00409" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_small_rev_bit_set.html#a16202f709ab06d78dcae8db3ff21fd9c" > 409< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_small_rev_bit_set.html#a16202f709ab06d78dcae8db3ff21fd9c" > IsCardinalityOne< / a > ()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00410" name = "l00410" > < / a > < span class = "lineno" > 410< / span > < span class = "keywordflow" > return< / span > (bits_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () != 0) & & !(bits_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () & (bits_.< a class = "code hl_function" href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > Value< / a > () - 1));< / div >
< div class = "line" > < a id = "l00411" name = "l00411" > < / a > < span class = "lineno" > 411< / span > }< / div >
< div class = "line" > < a id = "l00414" name = "l00414" > < / a > < span class = "lineno" > 414< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_small_rev_bit_set.html#ad1bc0969b66434da4c13ee6404dffce9" > GetFirstOne< / a > () < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00415" name = "l00415" > < / a > < span class = "lineno" > 415< / span > < / div >
< div class = "line" > < a id = "l00416" name = "l00416" > < / a > < span class = "lineno" > 416< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00417" name = "l00417" > < / a > < span class = "lineno" > 417< / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev.html" > Rev< uint64_t> < / a > bits_;< / div >
< div class = "line" > < a id = "l00418" name = "l00418" > < / a > < span class = "lineno" > 418< / span > };< / div >
< div class = "line" > < a id = "l00419" name = "l00419" > < / a > < span class = "lineno" > 419< / span > < / div >
< div class = "line" > < a id = "l00422" name = "l00422" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_bit_set.html" > 422< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_bit_set.html" > RevBitSet< / a > {< / div >
< div class = "line" > < a id = "l00423" name = "l00423" > < / a > < span class = "lineno" > 423< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00424" name = "l00424" > < / a > < span class = "lineno" > 424< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a1031675c710b49107c846359dd825dfb" > RevBitSet< / a > (int64_t size);< / div >
< div class = "line" > < a id = "l00425" name = "l00425" > < / a > < span class = "lineno" > 425< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#add39d7a314f959b1de71df09c5e862bb" > ~RevBitSet< / a > ();< / div >
< div class = "line" > < a id = "l00426" name = "l00426" > < / a > < span class = "lineno" > 426< / span > < / div >
< div class = "line" > < a id = "l00428" name = "l00428" > < / a > < span class = "lineno" > 428< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a06d0831df3626060e4b9b80c7f96c682" > SetToOne< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00430" name = "l00430" > < / a > < span class = "lineno" > 430< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a4a36258ad75b9ddbb095da574c172b1b" > SetToZero< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00432" name = "l00432" > < / a > < span class = "lineno" > 432< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a98b1ea1fa2f50e5d846e0e1b425db458" > IsSet< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00434" name = "l00434" > < / a > < span class = "lineno" > 434< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a50b7e2f9702d2416550ce54327b73a9c" > Cardinality< / a > () < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00436" name = "l00436" > < / a > < span class = "lineno" > 436< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#ad175c4019a4a927bec26eb8cd819d81e" > IsCardinalityZero< / a > () < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00438" name = "l00438" > < / a > < span class = "lineno" > 438< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a16202f709ab06d78dcae8db3ff21fd9c" > IsCardinalityOne< / a > () < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00441" name = "l00441" > < / a > < span class = "lineno" > 441< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a68ac6adba6fc78b4499583900c4a2648" > GetFirstBit< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a9b7656b922ea4ec96097d7380c0e61fe" > start< / a > ) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00443" name = "l00443" > < / a > < span class = "lineno" > 443< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#ac4f70832be8ef45fb84c8170f17cc187" > ClearAll< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver);< / div >
< div class = "line" > < a id = "l00444" name = "l00444" > < / a > < span class = "lineno" > 444< / span > < / div >
< div class = "line" > < a id = "l00445" name = "l00445" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_bit_set.html#ac9da3e5301f8c4c0ed8a261d0a0b2cbd" > 445< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_bit_matrix.html" > RevBitMatrix< / a > ;< / div >
< div class = "line" > < a id = "l00446" name = "l00446" > < / a > < span class = "lineno" > 446< / span > < / div >
< div class = "line" > < a id = "l00447" name = "l00447" > < / a > < span class = "lineno" > 447< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00449" name = "l00449" > < / a > < span class = "lineno" > 449< / span > < span class = "keywordtype" > void< / span > Save(< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keywordtype" > int< / span > offset);< / div >
< div class = "line" > < a id = "l00450" name = "l00450" > < / a > < span class = "lineno" > 450< / span > < span class = "keyword" > const< / span > int64_t size_;< / div >
< div class = "line" > < a id = "l00451" name = "l00451" > < / a > < span class = "lineno" > 451< / span > < span class = "keyword" > const< / span > int64_t length_;< / div >
< div class = "line" > < a id = "l00452" name = "l00452" > < / a > < span class = "lineno" > 452< / span > uint64_t* bits_;< / div >
< div class = "line" > < a id = "l00453" name = "l00453" > < / a > < span class = "lineno" > 453< / span > uint64_t* stamps_;< / div >
< div class = "line" > < a id = "l00454" name = "l00454" > < / a > < span class = "lineno" > 454< / span > };< / div >
< div class = "line" > < a id = "l00455" name = "l00455" > < / a > < span class = "lineno" > 455< / span > < / div >
< div class = "line" > < a id = "l00457" name = "l00457" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_bit_matrix.html" > 457< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_bit_matrix.html" > RevBitMatrix< / a > : < span class = "keyword" > private< / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_bit_set.html" > RevBitSet< / a > {< / div >
< div class = "line" > < a id = "l00458" name = "l00458" > < / a > < span class = "lineno" > 458< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00459" name = "l00459" > < / a > < span class = "lineno" > 459< / span > < a class = "code hl_friend" href = "classoperations__research_1_1_rev_bit_set.html#ac9da3e5301f8c4c0ed8a261d0a0b2cbd" > RevBitMatrix< / a > (int64_t rows, int64_t columns);< / div >
< div class = "line" > < a id = "l00460" name = "l00460" > < / a > < span class = "lineno" > 460< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_matrix.html#a1c9efd24f68d098eedb9c6ae3fdd25c4" > ~RevBitMatrix< / a > ();< / div >
< div class = "line" > < a id = "l00461" name = "l00461" > < / a > < span class = "lineno" > 461< / span > < / div >
< div class = "line" > < a id = "l00463" name = "l00463" > < / a > < span class = "lineno" > 463< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_matrix.html#ab1f7d7749ed4799119614efc507ebc64" > SetToOne< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, int64_t < a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > , int64_t column);< / div >
< div class = "line" > < a id = "l00465" name = "l00465" > < / a > < span class = "lineno" > 465< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_matrix.html#a0bbb89e6f783ea950b5bd38049428b4c" > SetToZero< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, int64_t < a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > , int64_t column);< / div >
< div class = "line" > < a id = "l00467" name = "l00467" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_bit_matrix.html#a35395dc664c7939e68c29390a8591e1c" > 467< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_matrix.html#a35395dc664c7939e68c29390a8591e1c" > IsSet< / a > (int64_t < a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > , int64_t column)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00468" name = "l00468" > < / a > < span class = "lineno" > 468< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (< a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > , 0);< / div >
< div class = "line" > < a id = "l00469" name = "l00469" > < / a > < span class = "lineno" > 469< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (< a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > , rows_);< / div >
< div class = "line" > < a id = "l00470" name = "l00470" > < / a > < span class = "lineno" > 470< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (column, 0);< / div >
< div class = "line" > < a id = "l00471" name = "l00471" > < / a > < span class = "lineno" > 471< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (column, columns_);< / div >
< div class = "line" > < a id = "l00472" name = "l00472" > < / a > < span class = "lineno" > 472< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a98b1ea1fa2f50e5d846e0e1b425db458" > RevBitSet::IsSet< / a > (< a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > * columns_ + column);< / div >
< div class = "line" > < a id = "l00473" name = "l00473" > < / a > < span class = "lineno" > 473< / span > }< / div >
< div class = "line" > < a id = "l00475" name = "l00475" > < / a > < span class = "lineno" > 475< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a50b7e2f9702d2416550ce54327b73a9c" > Cardinality< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > ) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00477" name = "l00477" > < / a > < span class = "lineno" > 477< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#ad175c4019a4a927bec26eb8cd819d81e" > IsCardinalityZero< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > ) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00479" name = "l00479" > < / a > < span class = "lineno" > 479< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_set.html#a16202f709ab06d78dcae8db3ff21fd9c" > IsCardinalityOne< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > ) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00482" name = "l00482" > < / a > < span class = "lineno" > 482< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_matrix.html#ac5c126872434730d4dde8a14a83b142b" > GetFirstBit< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > , < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a9b7656b922ea4ec96097d7380c0e61fe" > start< / a > ) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l00484" name = "l00484" > < / a > < span class = "lineno" > 484< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_bit_matrix.html#ac4f70832be8ef45fb84c8170f17cc187" > ClearAll< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver);< / div >
< div class = "line" > < a id = "l00485" name = "l00485" > < / a > < span class = "lineno" > 485< / span > < / div >
< div class = "line" > < a id = "l00486" name = "l00486" > < / a > < span class = "lineno" > 486< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00487" name = "l00487" > < / a > < span class = "lineno" > 487< / span > < span class = "keyword" > const< / span > int64_t rows_;< / div >
< div class = "line" > < a id = "l00488" name = "l00488" > < / a > < span class = "lineno" > 488< / span > < span class = "keyword" > const< / span > int64_t columns_;< / div >
< div class = "line" > < a id = "l00489" name = "l00489" > < / a > < span class = "lineno" > 489< / span > };< / div >
< div class = "line" > < a id = "l00490" name = "l00490" > < / a > < span class = "lineno" > 490< / span > < / div >
< div class = "line" > < a id = "l00496" name = "l00496" > < / a > < span class = "lineno" > 496< / span > < / div >
< div class = "line" > < a id = "l00498" name = "l00498" > < / a > < span class = "lineno" > 498< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l00499" name = "l00499" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method0.html" > 499< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method0.html" > CallMethod0< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > {< / div >
< div class = "line" > < a id = "l00500" name = "l00500" > < / a > < span class = "lineno" > 500< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00501" name = "l00501" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method0.html#a7b6140d03824eabe8579c6f72d8bd725" > 501< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method0.html#a7b6140d03824eabe8579c6f72d8bd725" > CallMethod0< / a > (T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > )< / div >
< div class = "line" > < a id = "l00502" name = "l00502" > < / a > < span class = "lineno" > 502< / span > : constraint_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ), method_(method), name_(< a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ) {}< / div >
< div class = "line" > < a id = "l00503" name = "l00503" > < / a > < span class = "lineno" > 503< / span > < / div >
< div class = "line" > < a id = "l00504" name = "l00504" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method0.html#a27e4f9bb590aef0900a373cfe7f34615" > 504< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method0.html#a27e4f9bb590aef0900a373cfe7f34615" > ~CallMethod0< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00505" name = "l00505" > < / a > < span class = "lineno" > 505< / span > < / div >
< div class = "line" > < a id = "l00506" name = "l00506" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method0.html#ac863f0fdd6a476ca003c99f58f14e623" > 506< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method0.html#ac863f0fdd6a476ca003c99f58f14e623" > Run< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s)< span class = "keyword" > override < / span > { (constraint_-> *method_)(); }< / div >
< div class = "line" > < a id = "l00507" name = "l00507" > < / a > < span class = "lineno" > 507< / span > < / div >
< div class = "line" > < a id = "l00508" name = "l00508" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method0.html#aed804747c45a7e1caf81461f9e45dd91" > 508< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_call_method0.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00509" name = "l00509" > < / a > < span class = "lineno" > 509< / span > < span class = "keywordflow" > return< / span > < span class = "stringliteral" > " CallMethod_" < / span > + name_ + < span class = "stringliteral" > " (" < / span > + constraint_-> DebugString() + < span class = "stringliteral" > " )" < / span > ;< / div >
< div class = "line" > < a id = "l00510" name = "l00510" > < / a > < span class = "lineno" > 510< / span > }< / div >
< div class = "line" > < a id = "l00511" name = "l00511" > < / a > < span class = "lineno" > 511< / span > < / div >
< div class = "line" > < a id = "l00512" name = "l00512" > < / a > < span class = "lineno" > 512< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00513" name = "l00513" > < / a > < span class = "lineno" > 513< / span > T* < span class = "keyword" > const< / span > constraint_;< / div >
< div class = "line" > < a id = "l00514" name = "l00514" > < / a > < span class = "lineno" > 514< / span > void (T::*< span class = "keyword" > const< / span > method_)();< / div >
< div class = "line" > < a id = "l00515" name = "l00515" > < / a > < span class = "lineno" > 515< / span > < span class = "keyword" > const< / span > std::string name_;< / div >
< div class = "line" > < a id = "l00516" name = "l00516" > < / a > < span class = "lineno" > 516< / span > };< / div >
< div class = "line" > < a id = "l00517" name = "l00517" > < / a > < span class = "lineno" > 517< / span > < / div >
< div class = "line" > < a id = "l00518" name = "l00518" > < / a > < span class = "lineno" > 518< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l00519" name = "l00519" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#aa213d8f884283e0d72712243cbbefa7c" > 519< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#aa213d8f884283e0d72712243cbbefa7c" > MakeConstraintDemon0< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(),< / div >
< div class = "line" > < a id = "l00520" name = "l00520" > < / a > < span class = "lineno" > 520< / span > < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ) {< / div >
< div class = "line" > < a id = "l00521" name = "l00521" > < / a > < span class = "lineno" > 521< / span > < span class = "keywordflow" > return< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > RevAlloc< / a > (< span class = "keyword" > new< / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method0.html" > CallMethod0< T> < / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , method, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ));< / div >
< div class = "line" > < a id = "l00522" name = "l00522" > < / a > < span class = "lineno" > 522< / span > }< / div >
< div class = "line" > < a id = "l00523" name = "l00523" > < / a > < span class = "lineno" > 523< / span > < / div >
< div class = "line" > < a id = "l00524" name = "l00524" > < / a > < span class = "lineno" > 524< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > P> < / div >
< div class = "line" > < a id = "l00525" name = "l00525" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > 525< / a > < / span > std::string < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (P param) {< / div >
< div class = "line" > < a id = "l00526" name = "l00526" > < / a > < span class = "lineno" > 526< / span > < span class = "keywordflow" > return< / span > absl::StrCat(param);< / div >
< div class = "line" > < a id = "l00527" name = "l00527" > < / a > < span class = "lineno" > 527< / span > }< / div >
< div class = "line" > < a id = "l00528" name = "l00528" > < / a > < span class = "lineno" > 528< / span > < / div >
< div class = "line" > < a id = "l00530" name = "l00530" > < / a > < span class = "lineno" > 530< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > P> < / div >
< div class = "line" > < a id = "l00531" name = "l00531" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a3c2f93547af434566184b7dee7039c93" > 531< / a > < / span > std::string < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (P* param) {< / div >
< div class = "line" > < a id = "l00532" name = "l00532" > < / a > < span class = "lineno" > 532< / span > < span class = "keywordflow" > return< / span > param-> DebugString();< / div >
< div class = "line" > < a id = "l00533" name = "l00533" > < / a > < span class = "lineno" > 533< / span > }< / div >
< div class = "line" > < a id = "l00534" name = "l00534" > < / a > < span class = "lineno" > 534< / span > < / div >
< div class = "line" > < a id = "l00536" name = "l00536" > < / a > < span class = "lineno" > 536< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P> < / div >
< div class = "line" > < a id = "l00537" name = "l00537" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method1.html" > 537< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method1.html" > CallMethod1< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > {< / div >
< div class = "line" > < a id = "l00538" name = "l00538" > < / a > < span class = "lineno" > 538< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00539" name = "l00539" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method1.html#aeec7702079973f2d99063b2ed414aba4" > 539< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method1.html#aeec7702079973f2d99063b2ed414aba4" > CallMethod1< / a > (T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(P), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ,< / div >
< div class = "line" > < a id = "l00540" name = "l00540" > < / a > < span class = "lineno" > 540< / span > P param1)< / div >
< div class = "line" > < a id = "l00541" name = "l00541" > < / a > < span class = "lineno" > 541< / span > : constraint_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ), method_(method), name_(< a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ), param1_(param1) {}< / div >
< div class = "line" > < a id = "l00542" name = "l00542" > < / a > < span class = "lineno" > 542< / span > < / div >
< div class = "line" > < a id = "l00543" name = "l00543" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method1.html#abb048ab554f3f8a361593b483fd4098c" > 543< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method1.html#abb048ab554f3f8a361593b483fd4098c" > ~CallMethod1< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00544" name = "l00544" > < / a > < span class = "lineno" > 544< / span > < / div >
< div class = "line" > < a id = "l00545" name = "l00545" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method1.html#ac863f0fdd6a476ca003c99f58f14e623" > 545< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method1.html#ac863f0fdd6a476ca003c99f58f14e623" > Run< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s)< span class = "keyword" > override < / span > { (constraint_-> *method_)(param1_); }< / div >
< div class = "line" > < a id = "l00546" name = "l00546" > < / a > < span class = "lineno" > 546< / span > < / div >
< div class = "line" > < a id = "l00547" name = "l00547" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method1.html#aed804747c45a7e1caf81461f9e45dd91" > 547< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_call_method1.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00548" name = "l00548" > < / a > < span class = "lineno" > 548< / span > < span class = "keywordflow" > return< / span > absl::StrCat(< span class = "stringliteral" > " CallMethod_" < / span > , name_, < span class = "stringliteral" > " (" < / span > , constraint_-> DebugString(),< / div >
< div class = "line" > < a id = "l00549" name = "l00549" > < / a > < span class = "lineno" > 549< / span > < span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param1_), < span class = "stringliteral" > " )" < / span > );< / div >
< div class = "line" > < a id = "l00550" name = "l00550" > < / a > < span class = "lineno" > 550< / span > }< / div >
< div class = "line" > < a id = "l00551" name = "l00551" > < / a > < span class = "lineno" > 551< / span > < / div >
< div class = "line" > < a id = "l00552" name = "l00552" > < / a > < span class = "lineno" > 552< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00553" name = "l00553" > < / a > < span class = "lineno" > 553< / span > T* < span class = "keyword" > const< / span > constraint_;< / div >
< div class = "line" > < a id = "l00554" name = "l00554" > < / a > < span class = "lineno" > 554< / span > void (T::*< span class = "keyword" > const< / span > method_)(P);< / div >
< div class = "line" > < a id = "l00555" name = "l00555" > < / a > < span class = "lineno" > 555< / span > < span class = "keyword" > const< / span > std::string name_;< / div >
< div class = "line" > < a id = "l00556" name = "l00556" > < / a > < span class = "lineno" > 556< / span > P param1_;< / div >
< div class = "line" > < a id = "l00557" name = "l00557" > < / a > < span class = "lineno" > 557< / span > };< / div >
< div class = "line" > < a id = "l00558" name = "l00558" > < / a > < span class = "lineno" > 558< / span > < / div >
< div class = "line" > < a id = "l00559" name = "l00559" > < / a > < span class = "lineno" > 559< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P> < / div >
< div class = "line" > < a id = "l00560" name = "l00560" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ae0190f4a9c848c207d0bff97f625fcd1" > 560< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#ae0190f4a9c848c207d0bff97f625fcd1" > MakeConstraintDemon1< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(P),< / div >
< div class = "line" > < a id = "l00561" name = "l00561" > < / a > < span class = "lineno" > 561< / span > < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , P param1) {< / div >
< div class = "line" > < a id = "l00562" name = "l00562" > < / a > < span class = "lineno" > 562< / span > < span class = "keywordflow" > return< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > RevAlloc< / a > (< span class = "keyword" > new< / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method1.html" > CallMethod1< T, P> < / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , method, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , param1));< / div >
< div class = "line" > < a id = "l00563" name = "l00563" > < / a > < span class = "lineno" > 563< / span > }< / div >
< div class = "line" > < a id = "l00564" name = "l00564" > < / a > < span class = "lineno" > 564< / span > < / div >
< div class = "line" > < a id = "l00566" name = "l00566" > < / a > < span class = "lineno" > 566< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P, < span class = "keyword" > class< / span > Q> < / div >
< div class = "line" > < a id = "l00567" name = "l00567" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method2.html" > 567< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method2.html" > CallMethod2< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > {< / div >
< div class = "line" > < a id = "l00568" name = "l00568" > < / a > < span class = "lineno" > 568< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00569" name = "l00569" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method2.html#a86921989576185a2ad25d64983e120a0" > 569< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method2.html#a86921989576185a2ad25d64983e120a0" > CallMethod2< / a > (T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(P, Q), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ,< / div >
< div class = "line" > < a id = "l00570" name = "l00570" > < / a > < span class = "lineno" > 570< / span > P param1, Q param2)< / div >
< div class = "line" > < a id = "l00571" name = "l00571" > < / a > < span class = "lineno" > 571< / span > : constraint_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ),< / div >
< div class = "line" > < a id = "l00572" name = "l00572" > < / a > < span class = "lineno" > 572< / span > method_(method),< / div >
< div class = "line" > < a id = "l00573" name = "l00573" > < / a > < span class = "lineno" > 573< / span > name_(< a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ),< / div >
< div class = "line" > < a id = "l00574" name = "l00574" > < / a > < span class = "lineno" > 574< / span > param1_(param1),< / div >
< div class = "line" > < a id = "l00575" name = "l00575" > < / a > < span class = "lineno" > 575< / span > param2_(param2) {}< / div >
< div class = "line" > < a id = "l00576" name = "l00576" > < / a > < span class = "lineno" > 576< / span > < / div >
< div class = "line" > < a id = "l00577" name = "l00577" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method2.html#ac2fbc05e88a31bf2a1770247af178418" > 577< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method2.html#ac2fbc05e88a31bf2a1770247af178418" > ~CallMethod2< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00578" name = "l00578" > < / a > < span class = "lineno" > 578< / span > < / div >
< div class = "line" > < a id = "l00579" name = "l00579" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method2.html#ac863f0fdd6a476ca003c99f58f14e623" > 579< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method2.html#ac863f0fdd6a476ca003c99f58f14e623" > Run< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s)< span class = "keyword" > override < / span > {< / div >
< div class = "line" > < a id = "l00580" name = "l00580" > < / a > < span class = "lineno" > 580< / span > (constraint_-> *method_)(param1_, param2_);< / div >
< div class = "line" > < a id = "l00581" name = "l00581" > < / a > < span class = "lineno" > 581< / span > }< / div >
< div class = "line" > < a id = "l00582" name = "l00582" > < / a > < span class = "lineno" > 582< / span > < / div >
< div class = "line" > < a id = "l00583" name = "l00583" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method2.html#aed804747c45a7e1caf81461f9e45dd91" > 583< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_call_method2.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00584" name = "l00584" > < / a > < span class = "lineno" > 584< / span > < span class = "keywordflow" > return< / span > absl::StrCat(absl::StrCat(< span class = "stringliteral" > " CallMethod_" < / span > , name_),< / div >
< div class = "line" > < a id = "l00585" name = "l00585" > < / a > < span class = "lineno" > 585< / span > absl::StrCat(< span class = "stringliteral" > " (" < / span > , constraint_-> DebugString()),< / div >
< div class = "line" > < a id = "l00586" name = "l00586" > < / a > < span class = "lineno" > 586< / span > absl::StrCat(< span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param1_)),< / div >
< div class = "line" > < a id = "l00587" name = "l00587" > < / a > < span class = "lineno" > 587< / span > absl::StrCat(< span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param2_), < span class = "stringliteral" > " )" < / span > ));< / div >
< div class = "line" > < a id = "l00588" name = "l00588" > < / a > < span class = "lineno" > 588< / span > }< / div >
< div class = "line" > < a id = "l00589" name = "l00589" > < / a > < span class = "lineno" > 589< / span > < / div >
< div class = "line" > < a id = "l00590" name = "l00590" > < / a > < span class = "lineno" > 590< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00591" name = "l00591" > < / a > < span class = "lineno" > 591< / span > T* < span class = "keyword" > const< / span > constraint_;< / div >
< div class = "line" > < a id = "l00592" name = "l00592" > < / a > < span class = "lineno" > 592< / span > void (T::*< span class = "keyword" > const< / span > method_)(P, Q);< / div >
< div class = "line" > < a id = "l00593" name = "l00593" > < / a > < span class = "lineno" > 593< / span > < span class = "keyword" > const< / span > std::string name_;< / div >
< div class = "line" > < a id = "l00594" name = "l00594" > < / a > < span class = "lineno" > 594< / span > P param1_;< / div >
< div class = "line" > < a id = "l00595" name = "l00595" > < / a > < span class = "lineno" > 595< / span > Q param2_;< / div >
< div class = "line" > < a id = "l00596" name = "l00596" > < / a > < span class = "lineno" > 596< / span > };< / div >
< div class = "line" > < a id = "l00597" name = "l00597" > < / a > < span class = "lineno" > 597< / span > < / div >
< div class = "line" > < a id = "l00598" name = "l00598" > < / a > < span class = "lineno" > 598< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P, < span class = "keyword" > class< / span > Q> < / div >
< div class = "line" > < a id = "l00599" name = "l00599" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a68441e43b6c0228145d1101db5f3c4de" > 599< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#a68441e43b6c0228145d1101db5f3c4de" > MakeConstraintDemon2< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l00600" name = "l00600" > < / a > < span class = "lineno" > 600< / span > < span class = "keywordtype" > void< / span > (T::*method)(P, Q), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ,< / div >
< div class = "line" > < a id = "l00601" name = "l00601" > < / a > < span class = "lineno" > 601< / span > P param1, Q param2) {< / div >
< div class = "line" > < a id = "l00602" name = "l00602" > < / a > < span class = "lineno" > 602< / span > < span class = "keywordflow" > return< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > RevAlloc< / a > (< / div >
< div class = "line" > < a id = "l00603" name = "l00603" > < / a > < span class = "lineno" > 603< / span > < span class = "keyword" > new< / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method2.html" > CallMethod2< T, P, Q> < / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , method, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , param1, param2));< / div >
< div class = "line" > < a id = "l00604" name = "l00604" > < / a > < span class = "lineno" > 604< / span > }< / div >
< div class = "line" > < a id = "l00606" name = "l00606" > < / a > < span class = "lineno" > 606< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P, < span class = "keyword" > class< / span > Q, < span class = "keyword" > class< / span > R> < / div >
< div class = "line" > < a id = "l00607" name = "l00607" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method3.html" > 607< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method3.html" > CallMethod3< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > {< / div >
< div class = "line" > < a id = "l00608" name = "l00608" > < / a > < span class = "lineno" > 608< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00609" name = "l00609" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method3.html#a7faffef6c714afe185ea30a930bb6ff6" > 609< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method3.html#a7faffef6c714afe185ea30a930bb6ff6" > CallMethod3< / a > (T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(P, Q, R), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ,< / div >
< div class = "line" > < a id = "l00610" name = "l00610" > < / a > < span class = "lineno" > 610< / span > P param1, Q param2, R param3)< / div >
< div class = "line" > < a id = "l00611" name = "l00611" > < / a > < span class = "lineno" > 611< / span > : constraint_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ),< / div >
< div class = "line" > < a id = "l00612" name = "l00612" > < / a > < span class = "lineno" > 612< / span > method_(method),< / div >
< div class = "line" > < a id = "l00613" name = "l00613" > < / a > < span class = "lineno" > 613< / span > name_(< a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ),< / div >
< div class = "line" > < a id = "l00614" name = "l00614" > < / a > < span class = "lineno" > 614< / span > param1_(param1),< / div >
< div class = "line" > < a id = "l00615" name = "l00615" > < / a > < span class = "lineno" > 615< / span > param2_(param2),< / div >
< div class = "line" > < a id = "l00616" name = "l00616" > < / a > < span class = "lineno" > 616< / span > param3_(param3) {}< / div >
< div class = "line" > < a id = "l00617" name = "l00617" > < / a > < span class = "lineno" > 617< / span > < / div >
< div class = "line" > < a id = "l00618" name = "l00618" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method3.html#a7d00aec69640287b4cab7b6006796450" > 618< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method3.html#a7d00aec69640287b4cab7b6006796450" > ~CallMethod3< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00619" name = "l00619" > < / a > < span class = "lineno" > 619< / span > < / div >
< div class = "line" > < a id = "l00620" name = "l00620" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method3.html#ac863f0fdd6a476ca003c99f58f14e623" > 620< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_call_method3.html#ac863f0fdd6a476ca003c99f58f14e623" > Run< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s)< span class = "keyword" > override < / span > {< / div >
< div class = "line" > < a id = "l00621" name = "l00621" > < / a > < span class = "lineno" > 621< / span > (constraint_-> *method_)(param1_, param2_, param3_);< / div >
< div class = "line" > < a id = "l00622" name = "l00622" > < / a > < span class = "lineno" > 622< / span > }< / div >
< div class = "line" > < a id = "l00623" name = "l00623" > < / a > < span class = "lineno" > 623< / span > < / div >
< div class = "line" > < a id = "l00624" name = "l00624" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_call_method3.html#aed804747c45a7e1caf81461f9e45dd91" > 624< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_call_method3.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00625" name = "l00625" > < / a > < span class = "lineno" > 625< / span > < span class = "keywordflow" > return< / span > absl::StrCat(absl::StrCat(< span class = "stringliteral" > " CallMethod_" < / span > , name_),< / div >
< div class = "line" > < a id = "l00626" name = "l00626" > < / a > < span class = "lineno" > 626< / span > absl::StrCat(< span class = "stringliteral" > " (" < / span > , constraint_-> DebugString()),< / div >
< div class = "line" > < a id = "l00627" name = "l00627" > < / a > < span class = "lineno" > 627< / span > absl::StrCat(< span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param1_)),< / div >
< div class = "line" > < a id = "l00628" name = "l00628" > < / a > < span class = "lineno" > 628< / span > absl::StrCat(< span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param2_)),< / div >
< div class = "line" > < a id = "l00629" name = "l00629" > < / a > < span class = "lineno" > 629< / span > absl::StrCat(< span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param3_), < span class = "stringliteral" > " )" < / span > ));< / div >
< div class = "line" > < a id = "l00630" name = "l00630" > < / a > < span class = "lineno" > 630< / span > }< / div >
< div class = "line" > < a id = "l00631" name = "l00631" > < / a > < span class = "lineno" > 631< / span > < / div >
< div class = "line" > < a id = "l00632" name = "l00632" > < / a > < span class = "lineno" > 632< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00633" name = "l00633" > < / a > < span class = "lineno" > 633< / span > T* < span class = "keyword" > const< / span > constraint_;< / div >
< div class = "line" > < a id = "l00634" name = "l00634" > < / a > < span class = "lineno" > 634< / span > void (T::*< span class = "keyword" > const< / span > method_)(P, Q, R);< / div >
< div class = "line" > < a id = "l00635" name = "l00635" > < / a > < span class = "lineno" > 635< / span > < span class = "keyword" > const< / span > std::string name_;< / div >
< div class = "line" > < a id = "l00636" name = "l00636" > < / a > < span class = "lineno" > 636< / span > P param1_;< / div >
< div class = "line" > < a id = "l00637" name = "l00637" > < / a > < span class = "lineno" > 637< / span > Q param2_;< / div >
< div class = "line" > < a id = "l00638" name = "l00638" > < / a > < span class = "lineno" > 638< / span > R param3_;< / div >
< div class = "line" > < a id = "l00639" name = "l00639" > < / a > < span class = "lineno" > 639< / span > };< / div >
< div class = "line" > < a id = "l00640" name = "l00640" > < / a > < span class = "lineno" > 640< / span > < / div >
< div class = "line" > < a id = "l00641" name = "l00641" > < / a > < span class = "lineno" > 641< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P, < span class = "keyword" > class< / span > Q, < span class = "keyword" > class< / span > R> < / div >
< div class = "line" > < a id = "l00642" name = "l00642" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a362b5a75841c543eec770b731d6e6865" > 642< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#a362b5a75841c543eec770b731d6e6865" > MakeConstraintDemon3< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l00643" name = "l00643" > < / a > < span class = "lineno" > 643< / span > < span class = "keywordtype" > void< / span > (T::*method)(P, Q, R), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ,< / div >
< div class = "line" > < a id = "l00644" name = "l00644" > < / a > < span class = "lineno" > 644< / span > P param1, Q param2, R param3) {< / div >
< div class = "line" > < a id = "l00645" name = "l00645" > < / a > < span class = "lineno" > 645< / span > < span class = "keywordflow" > return< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > RevAlloc< / a > (< / div >
< div class = "line" > < a id = "l00646" name = "l00646" > < / a > < span class = "lineno" > 646< / span > < span class = "keyword" > new< / span > < a class = "code hl_class" href = "classoperations__research_1_1_call_method3.html" > CallMethod3< T, P, Q, R> < / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , method, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , param1, param2, param3));< / div >
< div class = "line" > < a id = "l00647" name = "l00647" > < / a > < span class = "lineno" > 647< / span > }< / div >
< div class = "line" > < a id = "l00649" name = "l00649" > < / a > < span class = "lineno" > 649< / span > < / div >
< div class = "line" > < a id = "l00654" name = "l00654" > < / a > < span class = "lineno" > 654< / span > < / div >
< div class = "line" > < a id = "l00656" name = "l00656" > < / a > < span class = "lineno" > 656< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l00657" name = "l00657" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method0.html" > 657< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_delayed_call_method0.html" > DelayedCallMethod0< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > {< / div >
< div class = "line" > < a id = "l00658" name = "l00658" > < / a > < span class = "lineno" > 658< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00659" name = "l00659" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method0.html#aec224aa9286a227b83c6867011006249" > 659< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method0.html#aec224aa9286a227b83c6867011006249" > DelayedCallMethod0< / a > (T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > )< / div >
< div class = "line" > < a id = "l00660" name = "l00660" > < / a > < span class = "lineno" > 660< / span > : constraint_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ), method_(method), name_(< a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ) {}< / div >
< div class = "line" > < a id = "l00661" name = "l00661" > < / a > < span class = "lineno" > 661< / span > < / div >
< div class = "line" > < a id = "l00662" name = "l00662" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method0.html#abd9bafdfee91dc487e75378f8c6cbaa7" > 662< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method0.html#abd9bafdfee91dc487e75378f8c6cbaa7" > ~DelayedCallMethod0< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00663" name = "l00663" > < / a > < span class = "lineno" > 663< / span > < / div >
< div class = "line" > < a id = "l00664" name = "l00664" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method0.html#ac863f0fdd6a476ca003c99f58f14e623" > 664< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method0.html#ac863f0fdd6a476ca003c99f58f14e623" > Run< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s)< span class = "keyword" > override < / span > { (constraint_-> *method_)(); }< / div >
< div class = "line" > < a id = "l00665" name = "l00665" > < / a > < span class = "lineno" > 665< / span > < / div >
< div class = "line" > < a id = "l00666" name = "l00666" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method0.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > 666< / a > < / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7" > Solver::DemonPriority< / a > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method0.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > priority< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00667" name = "l00667" > < / a > < span class = "lineno" > 667< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7ad38fb80cf0d5468a2b5efdb0f4cd6068" > Solver::DELAYED_PRIORITY< / a > ;< / div >
< div class = "line" > < a id = "l00668" name = "l00668" > < / a > < span class = "lineno" > 668< / span > }< / div >
< div class = "line" > < a id = "l00669" name = "l00669" > < / a > < span class = "lineno" > 669< / span > < / div >
< div class = "line" > < a id = "l00670" name = "l00670" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method0.html#aed804747c45a7e1caf81461f9e45dd91" > 670< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method0.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00671" name = "l00671" > < / a > < span class = "lineno" > 671< / span > < span class = "keywordflow" > return< / span > < span class = "stringliteral" > " DelayedCallMethod_" < / span > + name_ + < span class = "stringliteral" > " (" < / span > + constraint_-> DebugString() +< / div >
< div class = "line" > < a id = "l00672" name = "l00672" > < / a > < span class = "lineno" > 672< / span > < span class = "stringliteral" > " )" < / span > ;< / div >
< div class = "line" > < a id = "l00673" name = "l00673" > < / a > < span class = "lineno" > 673< / span > }< / div >
< div class = "line" > < a id = "l00674" name = "l00674" > < / a > < span class = "lineno" > 674< / span > < / div >
< div class = "line" > < a id = "l00675" name = "l00675" > < / a > < span class = "lineno" > 675< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00676" name = "l00676" > < / a > < span class = "lineno" > 676< / span > T* < span class = "keyword" > const< / span > constraint_;< / div >
< div class = "line" > < a id = "l00677" name = "l00677" > < / a > < span class = "lineno" > 677< / span > void (T::*< span class = "keyword" > const< / span > method_)();< / div >
< div class = "line" > < a id = "l00678" name = "l00678" > < / a > < span class = "lineno" > 678< / span > < span class = "keyword" > const< / span > std::string name_;< / div >
< div class = "line" > < a id = "l00679" name = "l00679" > < / a > < span class = "lineno" > 679< / span > };< / div >
< div class = "line" > < a id = "l00680" name = "l00680" > < / a > < span class = "lineno" > 680< / span > < / div >
< div class = "line" > < a id = "l00681" name = "l00681" > < / a > < span class = "lineno" > 681< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l00682" name = "l00682" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a6a001b36b291a4afe7dffdbb9194bc45" > 682< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#a6a001b36b291a4afe7dffdbb9194bc45" > MakeDelayedConstraintDemon0< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l00683" name = "l00683" > < / a > < span class = "lineno" > 683< / span > < span class = "keywordtype" > void< / span > (T::*method)(),< / div >
< div class = "line" > < a id = "l00684" name = "l00684" > < / a > < span class = "lineno" > 684< / span > < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ) {< / div >
< div class = "line" > < a id = "l00685" name = "l00685" > < / a > < span class = "lineno" > 685< / span > < span class = "keywordflow" > return< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > RevAlloc< / a > (< span class = "keyword" > new< / span > < a class = "code hl_class" href = "classoperations__research_1_1_delayed_call_method0.html" > DelayedCallMethod0< T> < / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , method, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ));< / div >
< div class = "line" > < a id = "l00686" name = "l00686" > < / a > < span class = "lineno" > 686< / span > }< / div >
< div class = "line" > < a id = "l00687" name = "l00687" > < / a > < span class = "lineno" > 687< / span > < / div >
< div class = "line" > < a id = "l00689" name = "l00689" > < / a > < span class = "lineno" > 689< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P> < / div >
< div class = "line" > < a id = "l00690" name = "l00690" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method1.html" > 690< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_delayed_call_method1.html" > DelayedCallMethod1< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > {< / div >
< div class = "line" > < a id = "l00691" name = "l00691" > < / a > < span class = "lineno" > 691< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00692" name = "l00692" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method1.html#a977ffeeceec82ed0c880ae3249caebeb" > 692< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method1.html#a977ffeeceec82ed0c880ae3249caebeb" > DelayedCallMethod1< / a > (T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(P), < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ,< / div >
< div class = "line" > < a id = "l00693" name = "l00693" > < / a > < span class = "lineno" > 693< / span > P param1)< / div >
< div class = "line" > < a id = "l00694" name = "l00694" > < / a > < span class = "lineno" > 694< / span > : constraint_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ), method_(method), name_(< a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ), param1_(param1) {}< / div >
< div class = "line" > < a id = "l00695" name = "l00695" > < / a > < span class = "lineno" > 695< / span > < / div >
< div class = "line" > < a id = "l00696" name = "l00696" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method1.html#afa281aea428f9c42e09515bda6a918e5" > 696< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method1.html#afa281aea428f9c42e09515bda6a918e5" > ~DelayedCallMethod1< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00697" name = "l00697" > < / a > < span class = "lineno" > 697< / span > < / div >
< div class = "line" > < a id = "l00698" name = "l00698" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method1.html#ac863f0fdd6a476ca003c99f58f14e623" > 698< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method1.html#ac863f0fdd6a476ca003c99f58f14e623" > Run< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s)< span class = "keyword" > override < / span > { (constraint_-> *method_)(param1_); }< / div >
< div class = "line" > < a id = "l00699" name = "l00699" > < / a > < span class = "lineno" > 699< / span > < / div >
< div class = "line" > < a id = "l00700" name = "l00700" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method1.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > 700< / a > < / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7" > Solver::DemonPriority< / a > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method1.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > priority< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00701" name = "l00701" > < / a > < span class = "lineno" > 701< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7ad38fb80cf0d5468a2b5efdb0f4cd6068" > Solver::DELAYED_PRIORITY< / a > ;< / div >
< div class = "line" > < a id = "l00702" name = "l00702" > < / a > < span class = "lineno" > 702< / span > }< / div >
< div class = "line" > < a id = "l00703" name = "l00703" > < / a > < span class = "lineno" > 703< / span > < / div >
< div class = "line" > < a id = "l00704" name = "l00704" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method1.html#aed804747c45a7e1caf81461f9e45dd91" > 704< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method1.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00705" name = "l00705" > < / a > < span class = "lineno" > 705< / span > < span class = "keywordflow" > return< / span > absl::StrCat(< span class = "stringliteral" > " DelayedCallMethod_" < / span > , name_, < span class = "stringliteral" > " (" < / span > ,< / div >
< div class = "line" > < a id = "l00706" name = "l00706" > < / a > < span class = "lineno" > 706< / span > constraint_-> DebugString(), < span class = "stringliteral" > " , " < / span > ,< / div >
< div class = "line" > < a id = "l00707" name = "l00707" > < / a > < span class = "lineno" > 707< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param1_), < span class = "stringliteral" > " )" < / span > );< / div >
< div class = "line" > < a id = "l00708" name = "l00708" > < / a > < span class = "lineno" > 708< / span > }< / div >
< div class = "line" > < a id = "l00709" name = "l00709" > < / a > < span class = "lineno" > 709< / span > < / div >
< div class = "line" > < a id = "l00710" name = "l00710" > < / a > < span class = "lineno" > 710< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00711" name = "l00711" > < / a > < span class = "lineno" > 711< / span > T* < span class = "keyword" > const< / span > constraint_;< / div >
< div class = "line" > < a id = "l00712" name = "l00712" > < / a > < span class = "lineno" > 712< / span > void (T::*< span class = "keyword" > const< / span > method_)(P);< / div >
< div class = "line" > < a id = "l00713" name = "l00713" > < / a > < span class = "lineno" > 713< / span > < span class = "keyword" > const< / span > std::string name_;< / div >
< div class = "line" > < a id = "l00714" name = "l00714" > < / a > < span class = "lineno" > 714< / span > P param1_;< / div >
< div class = "line" > < a id = "l00715" name = "l00715" > < / a > < span class = "lineno" > 715< / span > };< / div >
< div class = "line" > < a id = "l00716" name = "l00716" > < / a > < span class = "lineno" > 716< / span > < / div >
< div class = "line" > < a id = "l00717" name = "l00717" > < / a > < span class = "lineno" > 717< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P> < / div >
< div class = "line" > < a id = "l00718" name = "l00718" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ac316c82f31293db18e25c809592908dd" > 718< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#ac316c82f31293db18e25c809592908dd" > MakeDelayedConstraintDemon1< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l00719" name = "l00719" > < / a > < span class = "lineno" > 719< / span > < span class = "keywordtype" > void< / span > (T::*method)(P),< / div >
< div class = "line" > < a id = "l00720" name = "l00720" > < / a > < span class = "lineno" > 720< / span > < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , P param1) {< / div >
< div class = "line" > < a id = "l00721" name = "l00721" > < / a > < span class = "lineno" > 721< / span > < span class = "keywordflow" > return< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > RevAlloc< / a > (< span class = "keyword" > new< / span > < a class = "code hl_class" href = "classoperations__research_1_1_delayed_call_method1.html" > DelayedCallMethod1< T, P> < / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , method, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , param1));< / div >
< div class = "line" > < a id = "l00722" name = "l00722" > < / a > < span class = "lineno" > 722< / span > }< / div >
< div class = "line" > < a id = "l00723" name = "l00723" > < / a > < span class = "lineno" > 723< / span > < / div >
< div class = "line" > < a id = "l00725" name = "l00725" > < / a > < span class = "lineno" > 725< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P, < span class = "keyword" > class< / span > Q> < / div >
< div class = "line" > < a id = "l00726" name = "l00726" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method2.html" > 726< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_delayed_call_method2.html" > DelayedCallMethod2< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > {< / div >
< div class = "line" > < a id = "l00727" name = "l00727" > < / a > < span class = "lineno" > 727< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00728" name = "l00728" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method2.html#a49265dec10e3d62758187d11a022df4c" > 728< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method2.html#a49265dec10e3d62758187d11a022df4c" > DelayedCallMethod2< / a > (T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < span class = "keywordtype" > void< / span > (T::*method)(P, Q),< / div >
< div class = "line" > < a id = "l00729" name = "l00729" > < / a > < span class = "lineno" > 729< / span > < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , P param1, Q param2)< / div >
< div class = "line" > < a id = "l00730" name = "l00730" > < / a > < span class = "lineno" > 730< / span > : constraint_(< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ),< / div >
< div class = "line" > < a id = "l00731" name = "l00731" > < / a > < span class = "lineno" > 731< / span > method_(method),< / div >
< div class = "line" > < a id = "l00732" name = "l00732" > < / a > < span class = "lineno" > 732< / span > name_(< a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ),< / div >
< div class = "line" > < a id = "l00733" name = "l00733" > < / a > < span class = "lineno" > 733< / span > param1_(param1),< / div >
< div class = "line" > < a id = "l00734" name = "l00734" > < / a > < span class = "lineno" > 734< / span > param2_(param2) {}< / div >
< div class = "line" > < a id = "l00735" name = "l00735" > < / a > < span class = "lineno" > 735< / span > < / div >
< div class = "line" > < a id = "l00736" name = "l00736" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method2.html#a48ef3b8afff6d3904fcbe52d8c65ccb8" > 736< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method2.html#a48ef3b8afff6d3904fcbe52d8c65ccb8" > ~DelayedCallMethod2< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00737" name = "l00737" > < / a > < span class = "lineno" > 737< / span > < / div >
< div class = "line" > < a id = "l00738" name = "l00738" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method2.html#ac863f0fdd6a476ca003c99f58f14e623" > 738< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method2.html#ac863f0fdd6a476ca003c99f58f14e623" > Run< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s)< span class = "keyword" > override < / span > {< / div >
< div class = "line" > < a id = "l00739" name = "l00739" > < / a > < span class = "lineno" > 739< / span > (constraint_-> *method_)(param1_, param2_);< / div >
< div class = "line" > < a id = "l00740" name = "l00740" > < / a > < span class = "lineno" > 740< / span > }< / div >
< div class = "line" > < a id = "l00741" name = "l00741" > < / a > < span class = "lineno" > 741< / span > < / div >
< div class = "line" > < a id = "l00742" name = "l00742" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method2.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > 742< / a > < / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7" > Solver::DemonPriority< / a > < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method2.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > priority< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00743" name = "l00743" > < / a > < span class = "lineno" > 743< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7ad38fb80cf0d5468a2b5efdb0f4cd6068" > Solver::DELAYED_PRIORITY< / a > ;< / div >
< div class = "line" > < a id = "l00744" name = "l00744" > < / a > < span class = "lineno" > 744< / span > }< / div >
< div class = "line" > < a id = "l00745" name = "l00745" > < / a > < span class = "lineno" > 745< / span > < / div >
< div class = "line" > < a id = "l00746" name = "l00746" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_delayed_call_method2.html#aed804747c45a7e1caf81461f9e45dd91" > 746< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_delayed_call_method2.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l00747" name = "l00747" > < / a > < span class = "lineno" > 747< / span > < span class = "keywordflow" > return< / span > absl::StrCat(absl::StrCat(< span class = "stringliteral" > " DelayedCallMethod_" < / span > , name_),< / div >
< div class = "line" > < a id = "l00748" name = "l00748" > < / a > < span class = "lineno" > 748< / span > absl::StrCat(< span class = "stringliteral" > " (" < / span > , constraint_-> DebugString()),< / div >
< div class = "line" > < a id = "l00749" name = "l00749" > < / a > < span class = "lineno" > 749< / span > absl::StrCat(< span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param1_)),< / div >
< div class = "line" > < a id = "l00750" name = "l00750" > < / a > < span class = "lineno" > 750< / span > absl::StrCat(< span class = "stringliteral" > " , " < / span > , < a class = "code hl_function" href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > ParameterDebugString< / a > (param2_), < span class = "stringliteral" > " )" < / span > ));< / div >
< div class = "line" > < a id = "l00751" name = "l00751" > < / a > < span class = "lineno" > 751< / span > }< / div >
< div class = "line" > < a id = "l00752" name = "l00752" > < / a > < span class = "lineno" > 752< / span > < / div >
< div class = "line" > < a id = "l00753" name = "l00753" > < / a > < span class = "lineno" > 753< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00754" name = "l00754" > < / a > < span class = "lineno" > 754< / span > T* < span class = "keyword" > const< / span > constraint_;< / div >
< div class = "line" > < a id = "l00755" name = "l00755" > < / a > < span class = "lineno" > 755< / span > void (T::*< span class = "keyword" > const< / span > method_)(P, Q);< / div >
< div class = "line" > < a id = "l00756" name = "l00756" > < / a > < span class = "lineno" > 756< / span > < span class = "keyword" > const< / span > std::string name_;< / div >
< div class = "line" > < a id = "l00757" name = "l00757" > < / a > < span class = "lineno" > 757< / span > P param1_;< / div >
< div class = "line" > < a id = "l00758" name = "l00758" > < / a > < span class = "lineno" > 758< / span > Q param2_;< / div >
< div class = "line" > < a id = "l00759" name = "l00759" > < / a > < span class = "lineno" > 759< / span > };< / div >
< div class = "line" > < a id = "l00760" name = "l00760" > < / a > < span class = "lineno" > 760< / span > < / div >
< div class = "line" > < a id = "l00761" name = "l00761" > < / a > < span class = "lineno" > 761< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > P, < span class = "keyword" > class< / span > Q> < / div >
< div class = "line" > < a id = "l00762" name = "l00762" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a6c0bc84812eed9d626b00bc8fb5b9ae1" > 762< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#a6c0bc84812eed9d626b00bc8fb5b9ae1" > MakeDelayedConstraintDemon2< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, T* < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l00763" name = "l00763" > < / a > < span class = "lineno" > 763< / span > < span class = "keywordtype" > void< / span > (T::*method)(P, Q),< / div >
< div class = "line" > < a id = "l00764" name = "l00764" > < / a > < span class = "lineno" > 764< / span > < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , P param1,< / div >
< div class = "line" > < a id = "l00765" name = "l00765" > < / a > < span class = "lineno" > 765< / span > Q param2) {< / div >
< div class = "line" > < a id = "l00766" name = "l00766" > < / a > < span class = "lineno" > 766< / span > < span class = "keywordflow" > return< / span > s-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > RevAlloc< / a > (< / div >
< div class = "line" > < a id = "l00767" name = "l00767" > < / a > < span class = "lineno" > 767< / span > < span class = "keyword" > new< / span > < a class = "code hl_class" href = "classoperations__research_1_1_delayed_call_method2.html" > DelayedCallMethod2< T, P, Q> < / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , method, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > , param1, param2));< / div >
< div class = "line" > < a id = "l00768" name = "l00768" > < / a > < span class = "lineno" > 768< / span > }< / div >
< div class = "line" > < a id = "l00770" name = "l00770" > < / a > < span class = "lineno" > 770< / span > < / div >
< div class = "line" > < a id = "l00771" name = "l00771" > < / a > < span class = "lineno" > 771< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // !defined(SWIG)< / span > < / div >
< div class = "line" > < a id = "l00772" name = "l00772" > < / a > < span class = "lineno" > 772< / span > < / div >
< div class = "line" > < a id = "l00790" name = "l00790" > < / a > < span class = "lineno" > 790< / span > < span class = "comment" > // TODO(user): rename Start to Synchronize ?< / span > < / div >
< div class = "line" > < a id = "l00791" name = "l00791" > < / a > < span class = "lineno" > 791< / span > < span class = "comment" > // TODO(user): decouple the iterating from the defining of a neighbor.< / span > < / div >
< div class = "line" > < a id = "l00792" name = "l00792" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html" > 792< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_base_object.html" > BaseObject< / a > {< / div >
< div class = "line" > < a id = "l00793" name = "l00793" > < / a > < span class = "lineno" > 793< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00794" name = "l00794" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#aabe1b807361b63e2f00ba8256542a818" > 794< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#aabe1b807361b63e2f00ba8256542a818" > LocalSearchOperator< / a > () {}< / div >
< div class = "line" > < a id = "l00795" name = "l00795" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#af48018bea65b9825579c53e834c8131c" > 795< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#af48018bea65b9825579c53e834c8131c" > ~LocalSearchOperator< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00796" name = "l00796" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#a9bd1712271364632b22009ef10eb2172" > 796< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#a9bd1712271364632b22009ef10eb2172" > MakeNextNeighbor< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta) = 0;< / div >
< div class = "line" > < a id = "l00797" name = "l00797" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#ae8505ab0739cf0b585de5844f7a6703c" > 797< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#ae8505ab0739cf0b585de5844f7a6703c" > Start< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment) = 0;< / div >
< div class = "line" > < a id = "l00798" name = "l00798" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#a4c4ba0ffe635d14b93794268bd8e5995" > 798< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#a4c4ba0ffe635d14b93794268bd8e5995" > Reset< / a > () {}< / div >
< div class = "line" > < a id = "l00799" name = "l00799" > < / a > < span class = "lineno" > 799< / span > < span class = "preprocessor" > #ifndef SWIG< / span > < / div >
< div class = "line" > < a id = "l00800" name = "l00800" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#a6d9702ba9fe50096dded07c0c2836c32" > 800< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#a6d9702ba9fe50096dded07c0c2836c32" > Self< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > this< / span > ; }< / div >
< div class = "line" > < a id = "l00801" name = "l00801" > < / a > < span class = "lineno" > 801< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // SWIG< / span > < / div >
< div class = "line" > < a id = "l00802" name = "l00802" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#a1b0063f805d92ed061848616d08f4664" > 802< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#a1b0063f805d92ed061848616d08f4664" > HasFragments< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l00803" name = "l00803" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_operator.html#a1e1cf9d9c4228f22482c4ee6c58951a8" > 803< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_operator.html#a1e1cf9d9c4228f22482c4ee6c58951a8" > HoldsDelta< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l00804" name = "l00804" > < / a > < span class = "lineno" > 804< / span > };< / div >
< div class = "line" > < a id = "l00805" name = "l00805" > < / a > < span class = "lineno" > 805< / span > < / div >
< div class = "line" > < a id = "l00807" name = "l00807" > < / a > < span class = "lineno" > 807< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > V, < span class = "keyword" > class< / span > Val, < span class = "keyword" > class< / span > Handler> < / div >
< div class = "line" > < a id = "l00808" name = "l00808" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html" > 808< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_var_local_search_operator.html" > VarLocalSearchOperator< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > {< / div >
< div class = "line" > < a id = "l00809" name = "l00809" > < / a > < span class = "lineno" > 809< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00810" name = "l00810" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#acd9deaa1cb8f53d22e39a1f58b478739" > 810< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#acd9deaa1cb8f53d22e39a1f58b478739" > VarLocalSearchOperator< / a > () : < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > (), < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > was_activated_< / a > (), < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > cleared_< / a > (true) {}< / div >
< div class = "line" > < a id = "l00811" name = "l00811" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#aad621560f01a4aed04f01cc6d97e897f" > 811< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aad621560f01a4aed04f01cc6d97e897f" > VarLocalSearchOperator< / a > (Handler var_handler)< / div >
< div class = "line" > < a id = "l00812" name = "l00812" > < / a > < span class = "lineno" > 812< / span > : < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > (),< / div >
< div class = "line" > < a id = "l00813" name = "l00813" > < / a > < span class = "lineno" > 813< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > was_activated_< / a > (),< / div >
< div class = "line" > < a id = "l00814" name = "l00814" > < / a > < span class = "lineno" > 814< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > cleared_< / a > (true),< / div >
< div class = "line" > < a id = "l00815" name = "l00815" > < / a > < span class = "lineno" > 815< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > (var_handler) {}< / div >
< div class = "line" > < a id = "l00816" name = "l00816" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#ad48fcef57a4aa0b002e92ec27510dec3" > 816< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ad48fcef57a4aa0b002e92ec27510dec3" > ~VarLocalSearchOperator< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l00817" name = "l00817" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a35de616bef50b1661e3133761f7260e1" > 817< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a35de616bef50b1661e3133761f7260e1" > HoldsDelta< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ; }< / div >
< div class = "line" > < a id = "l00820" name = "l00820" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#aeacffb05338262fd232dc77fed8cc586" > 820< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aeacffb05338262fd232dc77fed8cc586" > Start< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment)< span class = "keyword" > override < / span > {< / div >
< div class = "line" > < a id = "l00821" name = "l00821" > < / a > < span class = "lineno" > 821< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > size = < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ();< / div >
< div class = "line" > < a id = "l00822" name = "l00822" > < / a > < span class = "lineno" > 822< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae4db23f10f5d4aad6d735f5a74cd6f8c" > CHECK_LE< / a > (size, assignment-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ())< / div >
< div class = "line" > < a id = "l00823" name = "l00823" > < / a > < span class = "lineno" > 823< / span > < < < span class = "stringliteral" > " Assignment contains fewer variables than operator" < / span > ;< / div >
< div class = "line" > < a id = "l00824" name = "l00824" > < / a > < span class = "lineno" > 824< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < size; ++i) {< / div >
< div class = "line" > < a id = "l00825" name = "l00825" > < / a > < span class = "lineno" > 825< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_bitset64.html#a76e58f3dd327215d28ea8c48f8c86009" > Set< / a > (i, < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > .ValueFromAssignment(*assignment, < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > vars_< / a > [i],< / div >
< div class = "line" > < a id = "l00826" name = "l00826" > < / a > < span class = "lineno" > 826< / span > i, & < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > [i]));< / div >
< div class = "line" > < a id = "l00827" name = "l00827" > < / a > < span class = "lineno" > 827< / span > }< / div >
< div class = "line" > < a id = "l00828" name = "l00828" > < / a > < span class = "lineno" > 828< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a68dd19d6f0517e2bfb128f87fbad4fea" > prev_values_< / a > = < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > old_values_< / a > ;< / div >
< div class = "line" > < a id = "l00829" name = "l00829" > < / a > < span class = "lineno" > 829< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > old_values_< / a > = < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > ;< / div >
< div class = "line" > < a id = "l00830" name = "l00830" > < / a > < span class = "lineno" > 830< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > was_activated_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_bitset64.html#a1e8761187def0ec75ce81cb07cb7bb62" > SetContentFromBitsetOfSameSize< / a > (< a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > );< / div >
< div class = "line" > < a id = "l00831" name = "l00831" > < / a > < span class = "lineno" > 831< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aae6d852f10b483ddfa68658e43130028" > OnStart< / a > ();< / div >
< div class = "line" > < a id = "l00832" name = "l00832" > < / a > < span class = "lineno" > 832< / span > }< / div >
< div class = "line" > < a id = "l00833" name = "l00833" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#aa21d5f9b4adc94167e3a466095d82fd5" > 833< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aa21d5f9b4adc94167e3a466095d82fd5" > IsIncremental< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l00834" name = "l00834" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a24926108b770033792d015cb86aeffb3" > 834< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > vars_< / a > .size(); }< / div >
< div class = "line" > < a id = "l00837" name = "l00837" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > 837< / a > < / span > < span class = "keyword" > const< / span > Val& < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > Value< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00838" name = "l00838" > < / a > < span class = "lineno" > 838< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > vars_< / a > .size());< / div >
< div class = "line" > < a id = "l00839" name = "l00839" > < / a > < span class = "lineno" > 839< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ];< / div >
< div class = "line" > < a id = "l00840" name = "l00840" > < / a > < span class = "lineno" > 840< / span > }< / div >
< div class = "line" > < a id = "l00842" name = "l00842" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a88a93be7370ff1f4c043fb335c8aac7c" > 842< / a > < / span > V* < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a88a93be7370ff1f4c043fb335c8aac7c" > Var< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > vars_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]; }< / div >
< div class = "line" > < a id = "l00843" name = "l00843" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a18eb329b669c6a2e4e2431ea950b52fe" > 843< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a18eb329b669c6a2e4e2431ea950b52fe" > SkipUnchanged< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l00844" name = "l00844" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a79163ea8990864f185e87eabf1578cca" > 844< / a > < / span > < span class = "keyword" > const< / span > Val& < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a79163ea8990864f185e87eabf1578cca" > OldValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > old_values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]; }< / div >
< div class = "line" > < a id = "l00845" name = "l00845" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a20dd03e0437bf484e2ea321595c2e1cd" > 845< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a20dd03e0437bf484e2ea321595c2e1cd" > SetValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < span class = "keyword" > const< / span > Val& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l00846" name = "l00846" > < / a > < span class = "lineno" > 846< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ;< / div >
< div class = "line" > < a id = "l00847" name = "l00847" > < / a > < span class = "lineno" > 847< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ab309dc20c7f6458d60ef0e8de08b3c7c" > MarkChange< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00848" name = "l00848" > < / a > < span class = "lineno" > 848< / span > }< / div >
< div class = "line" > < a id = "l00849" name = "l00849" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a7f09d9a63d478f7fb1242e95a0e763a9" > 849< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a7f09d9a63d478f7fb1242e95a0e763a9" > Activated< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]; }< / div >
< div class = "line" > < a id = "l00850" name = "l00850" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a0019420edaed3532e8632e5b31e81b11" > 850< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a0019420edaed3532e8632e5b31e81b11" > Activate< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) {< / div >
< div class = "line" > < a id = "l00851" name = "l00851" > < / a > < span class = "lineno" > 851< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_bitset64.html#a76e58f3dd327215d28ea8c48f8c86009" > Set< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00852" name = "l00852" > < / a > < span class = "lineno" > 852< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ab309dc20c7f6458d60ef0e8de08b3c7c" > MarkChange< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00853" name = "l00853" > < / a > < span class = "lineno" > 853< / span > }< / div >
< div class = "line" > < a id = "l00854" name = "l00854" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a07cab95250a1eb5cf83faca67805fd80" > 854< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a07cab95250a1eb5cf83faca67805fd80" > Deactivate< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) {< / div >
< div class = "line" > < a id = "l00855" name = "l00855" > < / a > < span class = "lineno" > 855< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_bitset64.html#a61e6f65595ec1afb4b7955f370c67c08" > Clear< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00856" name = "l00856" > < / a > < span class = "lineno" > 856< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ab309dc20c7f6458d60ef0e8de08b3c7c" > MarkChange< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00857" name = "l00857" > < / a > < span class = "lineno" > 857< / span > }< / div >
< div class = "line" > < a id = "l00858" name = "l00858" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#aabafb6d8996f5101db26b30efff406b0" > 858< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aabafb6d8996f5101db26b30efff406b0" > ApplyChanges< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00859" name = "l00859" > < / a > < span class = "lineno" > 859< / span > < span class = "keywordflow" > if< / span > (< a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aa21d5f9b4adc94167e3a466095d82fd5" > IsIncremental< / a > () & & !< a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > cleared_< / a > ) {< / div >
< div class = "line" > < a id = "l00860" name = "l00860" > < / a > < span class = "lineno" > 860< / span > < span class = "keywordflow" > for< / span > (< span class = "keyword" > const< / span > int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > : < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a6525132991e9140755b271a1cf43fee7" > delta_changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#a7187b794b93178bdf96f632d1f5d8c03" > PositionsSetAtLeastOnce< / a > ()) {< / div >
< div class = "line" > < a id = "l00861" name = "l00861" > < / a > < span class = "lineno" > 861< / span > V* < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > = < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a88a93be7370ff1f4c043fb335c8aac7c" > Var< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00862" name = "l00862" > < / a > < span class = "lineno" > 862< / span > < span class = "keyword" > const< / span > Val& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > = < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > Value< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00863" name = "l00863" > < / a > < span class = "lineno" > 863< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > bool< / span > activated = < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ];< / div >
< div class = "line" > < a id = "l00864" name = "l00864" > < / a > < span class = "lineno" > 864< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > .AddToAssignment(< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , activated, < span class = "keyword" > nullptr< / span > , < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ,< / div >
< div class = "line" > < a id = "l00865" name = "l00865" > < / a > < span class = "lineno" > 865< / span > deltadelta);< / div >
< div class = "line" > < a id = "l00866" name = "l00866" > < / a > < span class = "lineno" > 866< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > .AddToAssignment(< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , activated,< / div >
< div class = "line" > < a id = "l00867" name = "l00867" > < / a > < span class = "lineno" > 867< / span > & < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7b62af3db29eeb312e3cb06f7bb331ce" > assignment_indices_< / a > , < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > );< / div >
< div class = "line" > < a id = "l00868" name = "l00868" > < / a > < span class = "lineno" > 868< / span > }< / div >
< div class = "line" > < a id = "l00869" name = "l00869" > < / a > < span class = "lineno" > 869< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l00870" name = "l00870" > < / a > < span class = "lineno" > 870< / span > < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > -> Clear();< / div >
< div class = "line" > < a id = "l00871" name = "l00871" > < / a > < span class = "lineno" > 871< / span > < span class = "keywordflow" > for< / span > (< span class = "keyword" > const< / span > int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > : < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#a7187b794b93178bdf96f632d1f5d8c03" > PositionsSetAtLeastOnce< / a > ()) {< / div >
< div class = "line" > < a id = "l00872" name = "l00872" > < / a > < span class = "lineno" > 872< / span > < span class = "keyword" > const< / span > Val& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > = < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > Value< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00873" name = "l00873" > < / a > < span class = "lineno" > 873< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > bool< / span > activated = < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ];< / div >
< div class = "line" > < a id = "l00874" name = "l00874" > < / a > < span class = "lineno" > 874< / span > < span class = "keywordflow" > if< / span > (!activated || < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > != < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a79163ea8990864f185e87eabf1578cca" > OldValue< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) || !< a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a18eb329b669c6a2e4e2431ea950b52fe" > SkipUnchanged< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )) {< / div >
< div class = "line" > < a id = "l00875" name = "l00875" > < / a > < span class = "lineno" > 875< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > .AddToAssignment(< a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a88a93be7370ff1f4c043fb335c8aac7c" > Var< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ), < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ],< / div >
< div class = "line" > < a id = "l00876" name = "l00876" > < / a > < span class = "lineno" > 876< / span > & < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7b62af3db29eeb312e3cb06f7bb331ce" > assignment_indices_< / a > , < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > );< / div >
< div class = "line" > < a id = "l00877" name = "l00877" > < / a > < span class = "lineno" > 877< / span > }< / div >
< div class = "line" > < a id = "l00878" name = "l00878" > < / a > < span class = "lineno" > 878< / span > }< / div >
< div class = "line" > < a id = "l00879" name = "l00879" > < / a > < span class = "lineno" > 879< / span > }< / div >
< div class = "line" > < a id = "l00880" name = "l00880" > < / a > < span class = "lineno" > 880< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l00881" name = "l00881" > < / a > < span class = "lineno" > 881< / span > }< / div >
< div class = "line" > < a id = "l00882" name = "l00882" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a06eb05df61a9b9fce744928947f43d89" > 882< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a06eb05df61a9b9fce744928947f43d89" > RevertChanges< / a > (< span class = "keywordtype" > bool< / span > incremental) {< / div >
< div class = "line" > < a id = "l00883" name = "l00883" > < / a > < span class = "lineno" > 883< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > cleared_< / a > = < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l00884" name = "l00884" > < / a > < span class = "lineno" > 884< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a6525132991e9140755b271a1cf43fee7" > delta_changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#ab4bc8236a9bfe59526e353800a0f0470" > SparseClearAll< / a > ();< / div >
< div class = "line" > < a id = "l00885" name = "l00885" > < / a > < span class = "lineno" > 885< / span > < span class = "keywordflow" > if< / span > (incremental & & < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aa21d5f9b4adc94167e3a466095d82fd5" > IsIncremental< / a > ()) < span class = "keywordflow" > return< / span > ;< / div >
< div class = "line" > < a id = "l00886" name = "l00886" > < / a > < span class = "lineno" > 886< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > cleared_< / a > = < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l00887" name = "l00887" > < / a > < span class = "lineno" > 887< / span > < span class = "keywordflow" > for< / span > (< span class = "keyword" > const< / span > int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > : < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#a7187b794b93178bdf96f632d1f5d8c03" > PositionsSetAtLeastOnce< / a > ()) {< / div >
< div class = "line" > < a id = "l00888" name = "l00888" > < / a > < span class = "lineno" > 888< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > old_values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ];< / div >
< div class = "line" > < a id = "l00889" name = "l00889" > < / a > < span class = "lineno" > 889< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > .OnRevertChanges(< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]);< / div >
< div class = "line" > < a id = "l00890" name = "l00890" > < / a > < span class = "lineno" > 890< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_bitset64.html#ac455173bbee06de96840b6980cb20dff" > CopyBucket< / a > (< a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > was_activated_< / a > , < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00891" name = "l00891" > < / a > < span class = "lineno" > 891< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7b62af3db29eeb312e3cb06f7bb331ce" > assignment_indices_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = -1;< / div >
< div class = "line" > < a id = "l00892" name = "l00892" > < / a > < span class = "lineno" > 892< / span > }< / div >
< div class = "line" > < a id = "l00893" name = "l00893" > < / a > < span class = "lineno" > 893< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#ab4bc8236a9bfe59526e353800a0f0470" > SparseClearAll< / a > ();< / div >
< div class = "line" > < a id = "l00894" name = "l00894" > < / a > < span class = "lineno" > 894< / span > }< / div >
< div class = "line" > < a id = "l00895" name = "l00895" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#ae2af73491ab2aa6804b443d442026a5e" > 895< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ae2af73491ab2aa6804b443d442026a5e" > AddVars< / a > (< span class = "keyword" > const< / span > std::vector< V*> & vars) {< / div >
< div class = "line" > < a id = "l00896" name = "l00896" > < / a > < span class = "lineno" > 896< / span > < span class = "keywordflow" > if< / span > (!vars.empty()) {< / div >
< div class = "line" > < a id = "l00897" name = "l00897" > < / a > < span class = "lineno" > 897< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > vars_< / a > .insert(< a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > vars_< / a > .end(), vars.begin(), vars.end());< / div >
< div class = "line" > < a id = "l00898" name = "l00898" > < / a > < span class = "lineno" > 898< / span > < span class = "keyword" > const< / span > int64_t size = < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ();< / div >
< div class = "line" > < a id = "l00899" name = "l00899" > < / a > < span class = "lineno" > 899< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > .resize(size);< / div >
< div class = "line" > < a id = "l00900" name = "l00900" > < / a > < span class = "lineno" > 900< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > old_values_< / a > .resize(size);< / div >
< div class = "line" > < a id = "l00901" name = "l00901" > < / a > < span class = "lineno" > 901< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a68dd19d6f0517e2bfb128f87fbad4fea" > prev_values_< / a > .resize(size);< / div >
< div class = "line" > < a id = "l00902" name = "l00902" > < / a > < span class = "lineno" > 902< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7b62af3db29eeb312e3cb06f7bb331ce" > assignment_indices_< / a > .resize(size, -1);< / div >
< div class = "line" > < a id = "l00903" name = "l00903" > < / a > < span class = "lineno" > 903< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_bitset64.html#a95a7b1824d872a78f5b53153c8436f36" > Resize< / a > (size);< / div >
< div class = "line" > < a id = "l00904" name = "l00904" > < / a > < span class = "lineno" > 904< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > was_activated_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_bitset64.html#a95a7b1824d872a78f5b53153c8436f36" > Resize< / a > (size);< / div >
< div class = "line" > < a id = "l00905" name = "l00905" > < / a > < span class = "lineno" > 905< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#ae09e38958e558d2c776bc555a0dc2fc7" > ClearAndResize< / a > (size);< / div >
< div class = "line" > < a id = "l00906" name = "l00906" > < / a > < span class = "lineno" > 906< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a6525132991e9140755b271a1cf43fee7" > delta_changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#ae09e38958e558d2c776bc555a0dc2fc7" > ClearAndResize< / a > (size);< / div >
< div class = "line" > < a id = "l00907" name = "l00907" > < / a > < span class = "lineno" > 907< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > .OnAddVars();< / div >
< div class = "line" > < a id = "l00908" name = "l00908" > < / a > < span class = "lineno" > 908< / span > }< / div >
< div class = "line" > < a id = "l00909" name = "l00909" > < / a > < span class = "lineno" > 909< / span > }< / div >
< div class = "line" > < a id = "l00910" name = "l00910" > < / a > < span class = "lineno" > 910< / span > < / div >
< div class = "line" > < a id = "l00914" name = "l00914" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#aae6d852f10b483ddfa68658e43130028" > 914< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#aae6d852f10b483ddfa68658e43130028" > OnStart< / a > () {}< / div >
< div class = "line" > < a id = "l00915" name = "l00915" > < / a > < span class = "lineno" > 915< / span > < / div >
< div class = "line" > < a id = "l00918" name = "l00918" > < / a > < span class = "lineno" > 918< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l00919" name = "l00919" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#ab309dc20c7f6458d60ef0e8de08b3c7c" > 919< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ab309dc20c7f6458d60ef0e8de08b3c7c" > MarkChange< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) {< / div >
< div class = "line" > < a id = "l00920" name = "l00920" > < / a > < span class = "lineno" > 920< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a6525132991e9140755b271a1cf43fee7" > delta_changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#a41f798a04019147982b29c576ff9d8b7" > Set< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00921" name = "l00921" > < / a > < span class = "lineno" > 921< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > changes_< / a > .< a class = "code hl_function" href = "classoperations__research_1_1_sparse_bitset.html#a41f798a04019147982b29c576ff9d8b7" > Set< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l00922" name = "l00922" > < / a > < span class = "lineno" > 922< / span > }< / div >
< div class = "line" > < a id = "l00923" name = "l00923" > < / a > < span class = "lineno" > 923< / span > < / div >
< div class = "line" > < a id = "l00924" name = "l00924" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > 924< / a > < / span > std::vector< V*> < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > vars_< / a > ;< / div >
< div class = "line" > < a id = "l00925" name = "l00925" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > 925< / a > < / span > std::vector< Val> < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > values_< / a > ;< / div >
< div class = "line" > < a id = "l00926" name = "l00926" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > 926< / a > < / span > std::vector< Val> < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > old_values_< / a > ;< / div >
< div class = "line" > < a id = "l00927" name = "l00927" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a68dd19d6f0517e2bfb128f87fbad4fea" > 927< / a > < / span > std::vector< Val> < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a68dd19d6f0517e2bfb128f87fbad4fea" > prev_values_< / a > ;< / div >
< div class = "line" > < a id = "l00928" name = "l00928" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a7b62af3db29eeb312e3cb06f7bb331ce" > 928< / a > < / span > < span class = "keyword" > mutable< / span > std::vector< int> < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7b62af3db29eeb312e3cb06f7bb331ce" > assignment_indices_< / a > ;< / div >
< div class = "line" > < a id = "l00929" name = "l00929" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > 929< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_bitset64.html" > Bitset64< > < / a > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > activated_< / a > ;< / div >
< div class = "line" > < a id = "l00930" name = "l00930" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > 930< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_bitset64.html" > Bitset64< > < / a > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > was_activated_< / a > ;< / div >
< div class = "line" > < a id = "l00931" name = "l00931" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > 931< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_sparse_bitset.html" > SparseBitset< > < / a > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > changes_< / a > ;< / div >
< div class = "line" > < a id = "l00932" name = "l00932" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a6525132991e9140755b271a1cf43fee7" > 932< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_sparse_bitset.html" > SparseBitset< > < / a > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a6525132991e9140755b271a1cf43fee7" > delta_changes_< / a > ;< / div >
< div class = "line" > < a id = "l00933" name = "l00933" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > 933< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > cleared_< / a > ;< / div >
< div class = "line" > < a id = "l00934" name = "l00934" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > 934< / a > < / span > Handler < a class = "code hl_variable" href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > var_handler_< / a > ;< / div >
< div class = "line" > < a id = "l00935" name = "l00935" > < / a > < span class = "lineno" > 935< / span > };< / div >
< div class = "line" > < a id = "l00936" name = "l00936" > < / a > < span class = "lineno" > 936< / span > < / div >
< div class = "line" > < a id = "l00938" name = "l00938" > < / a > < span class = "lineno" > 938< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > ;< / div >
< div class = "line" > < a id = "l00939" name = "l00939" > < / a > < span class = "lineno" > 939< / span > < / div >
< div class = "line" > < a id = "l00940" name = "l00940" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html" > 940< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_handler.html" > IntVarLocalSearchHandler< / a > {< / div >
< div class = "line" > < a id = "l00941" name = "l00941" > < / a > < span class = "lineno" > 941< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l00942" name = "l00942" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html#aa13961bacce6e6f3501e633462882070" > 942< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#aa13961bacce6e6f3501e633462882070" > IntVarLocalSearchHandler< / a > () : op_(nullptr) {}< / div >
< div class = "line" > < a id = "l00943" name = "l00943" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html#ac2e895b6e77d8a09a52210eca1de3ee6" > 943< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#ac2e895b6e77d8a09a52210eca1de3ee6" > IntVarLocalSearchHandler< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_handler.html" > IntVarLocalSearchHandler< / a > & other)< / div >
< div class = "line" > < a id = "l00944" name = "l00944" > < / a > < span class = "lineno" > 944< / span > : op_(other.op_) {}< / div >
< div class = "line" > < a id = "l00945" name = "l00945" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html#ad20b69bddb1430dd0e5fbd5c92d339a0" > 945< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#ad20b69bddb1430dd0e5fbd5c92d339a0" > IntVarLocalSearchHandler< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > * op) : op_(op) {}< / div >
< div class = "line" > < a id = "l00946" name = "l00946" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html#ad76f3e78581c81805db48d86bbfbc51d" > 946< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#ad76f3e78581c81805db48d86bbfbc51d" > AddToAssignment< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , < span class = "keywordtype" > bool< / span > active,< / div >
< div class = "line" > < a id = "l00947" name = "l00947" > < / a > < span class = "lineno" > 947< / span > std::vector< int> * assignment_indices, int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ,< / div >
< div class = "line" > < a id = "l00948" name = "l00948" > < / a > < span class = "lineno" > 948< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l00949" name = "l00949" > < / a > < span class = "lineno" > 949< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment_container.html" > Assignment::IntContainer< / a > * < span class = "keyword" > const< / span > container =< / div >
< div class = "line" > < a id = "l00950" name = "l00950" > < / a > < span class = "lineno" > 950< / span > assignment-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#ac76f6d6854dc981871832c7714c4a4bb" > MutableIntVarContainer< / a > ();< / div >
< div class = "line" > < a id = "l00951" name = "l00951" > < / a > < span class = "lineno" > 951< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_element.html" > IntVarElement< / a > * element = < span class = "keyword" > nullptr< / span > ;< / div >
< div class = "line" > < a id = "l00952" name = "l00952" > < / a > < span class = "lineno" > 952< / span > < span class = "keywordflow" > if< / span > (assignment_indices != < span class = "keyword" > nullptr< / span > ) {< / div >
< div class = "line" > < a id = "l00953" name = "l00953" > < / a > < span class = "lineno" > 953< / span > < span class = "keywordflow" > if< / span > ((*assignment_indices)[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] == -1) {< / div >
< div class = "line" > < a id = "l00954" name = "l00954" > < / a > < span class = "lineno" > 954< / span > (*assignment_indices)[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = container-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ();< / div >
< div class = "line" > < a id = "l00955" name = "l00955" > < / a > < span class = "lineno" > 955< / span > element = assignment-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#af5fcf5e7a47ae0e325fb1df409ac8e24" > FastAdd< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > );< / div >
< div class = "line" > < a id = "l00956" name = "l00956" > < / a > < span class = "lineno" > 956< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l00957" name = "l00957" > < / a > < span class = "lineno" > 957< / span > element = container-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a711e8eed87d49e98128460c4aee01d02" > MutableElement< / a > ((*assignment_indices)[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]);< / div >
< div class = "line" > < a id = "l00958" name = "l00958" > < / a > < span class = "lineno" > 958< / span > }< / div >
< div class = "line" > < a id = "l00959" name = "l00959" > < / a > < span class = "lineno" > 959< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l00960" name = "l00960" > < / a > < span class = "lineno" > 960< / span > element = assignment-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#af5fcf5e7a47ae0e325fb1df409ac8e24" > FastAdd< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > );< / div >
< div class = "line" > < a id = "l00961" name = "l00961" > < / a > < span class = "lineno" > 961< / span > }< / div >
< div class = "line" > < a id = "l00962" name = "l00962" > < / a > < span class = "lineno" > 962< / span > < span class = "keywordflow" > if< / span > (active) {< / div >
< div class = "line" > < a id = "l00963" name = "l00963" > < / a > < span class = "lineno" > 963< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_element.html#ac1b2a58bfded95799de1fd7958bdb2a3" > SetValue< / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l00964" name = "l00964" > < / a > < span class = "lineno" > 964< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_element.html#ae8753efaeea05f65094a4875a694a368" > Activate< / a > ();< / div >
< div class = "line" > < a id = "l00965" name = "l00965" > < / a > < span class = "lineno" > 965< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l00966" name = "l00966" > < / a > < span class = "lineno" > 966< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_element.html#a9c9dd3575fbfc59e05ae9ed1c05f8896" > Deactivate< / a > ();< / div >
< div class = "line" > < a id = "l00967" name = "l00967" > < / a > < span class = "lineno" > 967< / span > }< / div >
< div class = "line" > < a id = "l00968" name = "l00968" > < / a > < span class = "lineno" > 968< / span > }< / div >
< div class = "line" > < a id = "l00969" name = "l00969" > < / a > < span class = "lineno" > 969< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#a8fb0bba143ab22bee32e6bf4bd886d53" > ValueFromAssignment< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > & assignment, < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l00970" name = "l00970" > < / a > < span class = "lineno" > 970< / span > int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , int64_t* < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l00971" name = "l00971" > < / a > < span class = "lineno" > 971< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#ad4c241e89e13509622503f2763ed7295" > OnRevertChanges< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l00972" name = "l00972" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9" > 972< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9" > OnAddVars< / a > () {}< / div >
< div class = "line" > < a id = "l00973" name = "l00973" > < / a > < span class = "lineno" > 973< / span > < / div >
< div class = "line" > < a id = "l00974" name = "l00974" > < / a > < span class = "lineno" > 974< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l00975" name = "l00975" > < / a > < span class = "lineno" > 975< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > * < span class = "keyword" > const< / span > op_;< / div >
< div class = "line" > < a id = "l00976" name = "l00976" > < / a > < span class = "lineno" > 976< / span > };< / div >
< div class = "line" > < a id = "l00977" name = "l00977" > < / a > < span class = "lineno" > 977< / span > < / div >
< div class = "line" > < a id = "l00983" name = "l00983" > < / a > < span class = "lineno" > 983< / span > < / div >
< div class = "line" > < a id = "l00984" name = "l00984" > < / a > < span class = "lineno" > 984< / span > < span class = "preprocessor" > #ifdef SWIG< / span > < / div >
< div class = "line" > < a id = "l00988" name = "l00988" > < / a > < span class = "lineno" > 988< / span > < span class = "comment" > // TODO(user): find a way to move this code back to the .i file, where it< / span > < / div >
< div class = "line" > < a id = "l00992" name = "l00992" > < / a > < span class = "lineno" > 992< / span > < span class = "comment" > < / span > < span class = "preprocessor" > #if defined(SWIGPYTHON)< / span > < / div >
< div class = "line" > < a id = "l00993" name = "l00993" > < / a > < span class = "lineno" > 993< / span > < span class = "comment" > // clang-format off< / span > < / div >
< div class = "line" > < a id = "l00994" name = "l00994" > < / a > < span class = "lineno" > 994< / span > %unignore VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l00995" name = "l00995" > < / a > < span class = "lineno" > 995< / span > IntVarLocalSearchHandler> ::Size;< / div >
< div class = "line" > < a id = "l00996" name = "l00996" > < / a > < span class = "lineno" > 996< / span > %unignore VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l00997" name = "l00997" > < / a > < span class = "lineno" > 997< / span > IntVarLocalSearchHandler> < a class = "code hl_function" href = "namespaceoperations__research_1_1sat.html#a96eab70b5ead3894afac4d4fff0fd984" > ::Value< / a > ;< / div >
< div class = "line" > < a id = "l00998" name = "l00998" > < / a > < span class = "lineno" > 998< / span > %unignore VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l00999" name = "l00999" > < / a > < span class = "lineno" > 999< / span > IntVarLocalSearchHandler> ::OldValue;< / div >
< div class = "line" > < a id = "l01000" name = "l01000" > < / a > < span class = "lineno" > 1000< / span > %unignore VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l01001" name = "l01001" > < / a > < span class = "lineno" > 1001< / span > IntVarLocalSearchHandler> ::SetValue;< / div >
< div class = "line" > < a id = "l01002" name = "l01002" > < / a > < span class = "lineno" > 1002< / span > %feature(< span class = "stringliteral" > " director" < / span > ) VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l01003" name = "l01003" > < / a > < span class = "lineno" > 1003< / span > IntVarLocalSearchHandler> ::IsIncremental;< / div >
< div class = "line" > < a id = "l01004" name = "l01004" > < / a > < span class = "lineno" > 1004< / span > %feature(" director" ) VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l01005" name = "l01005" > < / a > < span class = "lineno" > 1005< / span > IntVarLocalSearchHandler> ::OnStart;< / div >
< div class = "line" > < a id = "l01006" name = "l01006" > < / a > < span class = "lineno" > 1006< / span > %unignore VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l01007" name = "l01007" > < / a > < span class = "lineno" > 1007< / span > IntVarLocalSearchHandler> ::IsIncremental;< / div >
< div class = "line" > < a id = "l01008" name = "l01008" > < / a > < span class = "lineno" > 1008< / span > %unignore VarLocalSearchOperator< IntVar, int64_t,< / div >
< div class = "line" > < a id = "l01009" name = "l01009" > < / a > < span class = "lineno" > 1009< / span > IntVarLocalSearchHandler> ::OnStart;< / div >
< div class = "line" > < a id = "l01010" name = "l01010" > < / a > < span class = "lineno" > 1010< / span > < span class = "comment" > // clang-format on< / span > < / div >
< div class = "line" > < a id = "l01011" name = "l01011" > < / a > < span class = "lineno" > 1011< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // SWIGPYTHON< / span > < / div >
< div class = "line" > < a id = "l01012" name = "l01012" > < / a > < span class = "lineno" > 1012< / span > < / div >
< div class = "line" > < a id = "l01013" name = "l01013" > < / a > < span class = "lineno" > 1013< / span > < span class = "comment" > // clang-format off< / span > < / div >
< div class = "line" > < a id = "l01014" name = "l01014" > < / a > < span class = "lineno" > 1014< / span > %rename(IntVarLocalSearchOperatorTemplate)< / div >
< div class = "line" > < a id = "l01015" name = "l01015" > < / a > < span class = "lineno" > 1015< / span > VarLocalSearchOperator< IntVar, int64_t, IntVarLocalSearchHandler> ;< / div >
< div class = "line" > < a id = "l01016" name = "l01016" > < / a > < span class = "lineno" > 1016< / span > %< span class = "keyword" > template< / span > (IntVarLocalSearchOperatorTemplate)< / div >
< div class = "line" > < a id = "l01017" name = "l01017" > < / a > < span class = "lineno" > 1017< / span > VarLocalSearchOperator< IntVar, int64_t, IntVarLocalSearchHandler> ;< / div >
< div class = "line" > < a id = "l01018" name = "l01018" > < / a > < span class = "lineno" > 1018< / span > < span class = "comment" > // clang-format on< / span > < / div >
< div class = "line" > < a id = "l01019" name = "l01019" > < / a > < span class = "lineno" > 1019< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // SWIG< / span > < / div >
< div class = "line" > < a id = "l01020" name = "l01020" > < / a > < span class = "lineno" > 1020< / span > < / div >
< div class = "line" > < a id = "l01021" name = "l01021" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html" > 1021< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > < / div >
< div class = "line" > < a id = "l01022" name = "l01022" > < / a > < span class = "lineno" > 1022< / span > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_var_local_search_operator.html" > VarLocalSearchOperator< IntVar, int64_t, IntVarLocalSearchHandler> < / a > {< / div >
< div class = "line" > < a id = "l01023" name = "l01023" > < / a > < span class = "lineno" > 1023< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01024" name = "l01024" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#aa9d1112ec8418e1679ae4785c3862ffd" > 1024< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#aa9d1112ec8418e1679ae4785c3862ffd" > IntVarLocalSearchOperator< / a > () : max_inverse_value_(-1) {}< / div >
< div class = "line" > < a id = "l01025" name = "l01025" > < / a > < span class = "lineno" > 1025< / span > < span class = "comment" > // If keep_inverse_values is true, assumes that vars models an injective< / span > < / div >
< div class = "line" > < a id = "l01026" name = "l01026" > < / a > < span class = "lineno" > 1026< / span > < span class = "comment" > // function f with domain [0, vars.size()) in which case the operator will< / span > < / div >
< div class = "line" > < a id = "l01027" name = "l01027" > < / a > < span class = "lineno" > 1027< / span > < span class = "comment" > // maintain the inverse function.< / span > < / div >
< div class = "line" > < a id = "l01028" name = "l01028" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#ac8d84ceae8536513503a3132372cca0f" > 1028< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#ac8d84ceae8536513503a3132372cca0f" > IntVarLocalSearchOperator< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars,< / div >
< div class = "line" > < a id = "l01029" name = "l01029" > < / a > < span class = "lineno" > 1029< / span > < span class = "keywordtype" > bool< / span > keep_inverse_values = < span class = "keyword" > false< / span > )< / div >
< div class = "line" > < a id = "l01030" name = "l01030" > < / a > < span class = "lineno" > 1030< / span > : < a class = "code hl_class" href = "classoperations__research_1_1_var_local_search_operator.html" > VarLocalSearchOperator< / a > < < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > , int64_t, < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_handler.html" > IntVarLocalSearchHandler< / a > > (< / div >
< div class = "line" > < a id = "l01031" name = "l01031" > < / a > < span class = "lineno" > 1031< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_handler.html" > IntVarLocalSearchHandler< / a > (this)),< / div >
< div class = "line" > < a id = "l01032" name = "l01032" > < / a > < span class = "lineno" > 1032< / span > max_inverse_value_(keep_inverse_values ? vars.size() - 1 : -1) {< / div >
< div class = "line" > < a id = "l01033" name = "l01033" > < / a > < span class = "lineno" > 1033< / span > AddVars(vars);< / div >
< div class = "line" > < a id = "l01034" name = "l01034" > < / a > < span class = "lineno" > 1034< / span > < span class = "keywordflow" > if< / span > (keep_inverse_values) {< / div >
< div class = "line" > < a id = "l01035" name = "l01035" > < / a > < span class = "lineno" > 1035< / span > int64_t max_value = -1;< / div >
< div class = "line" > < a id = "l01036" name = "l01036" > < / a > < span class = "lineno" > 1036< / span > < span class = "keywordflow" > for< / span > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > : vars) {< / div >
< div class = "line" > < a id = "l01037" name = "l01037" > < / a > < span class = "lineno" > 1037< / span > max_value = < a class = "code hl_variable" href = "alldiff__cst_8cc.html#a26e6db9bcc64b584051ecc28171ed11f" > std::max< / a > (max_value, < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > -> < a class = "code hl_function" href = "classoperations__research_1_1_int_expr.html#ac84c250d67f30c89e845cd460eeaaad8" > Max< / a > ());< / div >
< div class = "line" > < a id = "l01038" name = "l01038" > < / a > < span class = "lineno" > 1038< / span > }< / div >
< div class = "line" > < a id = "l01039" name = "l01039" > < / a > < span class = "lineno" > 1039< / span > inverse_values_.resize(max_value + 1, -1);< / div >
< div class = "line" > < a id = "l01040" name = "l01040" > < / a > < span class = "lineno" > 1040< / span > old_inverse_values_.resize(max_value + 1, -1);< / div >
< div class = "line" > < a id = "l01041" name = "l01041" > < / a > < span class = "lineno" > 1041< / span > }< / div >
< div class = "line" > < a id = "l01042" name = "l01042" > < / a > < span class = "lineno" > 1042< / span > }< / div >
< div class = "line" > < a id = "l01043" name = "l01043" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#a6c3af3418997de51df855f6321d299f1" > 1043< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a6c3af3418997de51df855f6321d299f1" > ~IntVarLocalSearchOperator< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l01050" name = "l01050" > < / a > < span class = "lineno" > 1050< / span > < span class = "keywordtype" > bool< / span > MakeNextNeighbor(< a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01051" name = "l01051" > < / a > < span class = "lineno" > 1051< / span > < / div >
< div class = "line" > < a id = "l01052" name = "l01052" > < / a > < span class = "lineno" > 1052< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l01053" name = "l01053" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#a3441b36fa04791719efbfae2faca30a0" > 1053< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_friend" href = "classoperations__research_1_1_int_var_local_search_operator.html#a3441b36fa04791719efbfae2faca30a0" > IntVarLocalSearchHandler< / a > ;< / div >
< div class = "line" > < a id = "l01054" name = "l01054" > < / a > < span class = "lineno" > 1054< / span > < / div >
< div class = "line" > < a id = "l01057" name = "l01057" > < / a > < span class = "lineno" > 1057< / span > < span class = "comment" > // TODO(user): make it pure virtual, implies porting all apps overriding< / span > < / div >
< div class = "line" > < a id = "l01059" name = "l01059" > < / a > < span class = "lineno" > 1059< / span > < span class = "comment" > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > MakeOneNeighbor();< / div >
< div class = "line" > < a id = "l01060" name = "l01060" > < / a > < span class = "lineno" > 1060< / span > < / div >
< div class = "line" > < a id = "l01061" name = "l01061" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#ad1a398f4067998f7fad447447051dbcf" > 1061< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#ad1a398f4067998f7fad447447051dbcf" > IsInverseValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01062" name = "l01062" > < / a > < span class = "lineno" > 1062< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , 0);< / div >
< div class = "line" > < a id = "l01063" name = "l01063" > < / a > < span class = "lineno" > 1063< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > < = max_inverse_value_;< / div >
< div class = "line" > < a id = "l01064" name = "l01064" > < / a > < span class = "lineno" > 1064< / span > }< / div >
< div class = "line" > < a id = "l01065" name = "l01065" > < / a > < span class = "lineno" > 1065< / span > < / div >
< div class = "line" > < a id = "l01066" name = "l01066" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#a2d3012edb1ac1465f54c9c0c16187e69" > 1066< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a2d3012edb1ac1465f54c9c0c16187e69" > InverseValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > inverse_values_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]; }< / div >
< div class = "line" > < a id = "l01067" name = "l01067" > < / a > < span class = "lineno" > 1067< / span > < / div >
< div class = "line" > < a id = "l01068" name = "l01068" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#a0e580afd2c00b163cbb019ca661470f5" > 1068< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a0e580afd2c00b163cbb019ca661470f5" > OldInverseValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01069" name = "l01069" > < / a > < span class = "lineno" > 1069< / span > < span class = "keywordflow" > return< / span > old_inverse_values_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ];< / div >
< div class = "line" > < a id = "l01070" name = "l01070" > < / a > < span class = "lineno" > 1070< / span > }< / div >
< div class = "line" > < a id = "l01071" name = "l01071" > < / a > < span class = "lineno" > 1071< / span > < / div >
< div class = "line" > < a id = "l01072" name = "l01072" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#a79ba95b5c45a4b1ce761cfac942c7e3b" > 1072< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a79ba95b5c45a4b1ce761cfac942c7e3b" > SetInverseValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01073" name = "l01073" > < / a > < span class = "lineno" > 1073< / span > inverse_values_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ;< / div >
< div class = "line" > < a id = "l01074" name = "l01074" > < / a > < span class = "lineno" > 1074< / span > }< / div >
< div class = "line" > < a id = "l01075" name = "l01075" > < / a > < span class = "lineno" > 1075< / span > < / div >
< div class = "line" > < a id = "l01076" name = "l01076" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_operator.html#a557f96c9f1f5883f616350bde6cc2e2a" > 1076< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a557f96c9f1f5883f616350bde6cc2e2a" > SetOldInverseValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01077" name = "l01077" > < / a > < span class = "lineno" > 1077< / span > old_inverse_values_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ;< / div >
< div class = "line" > < a id = "l01078" name = "l01078" > < / a > < span class = "lineno" > 1078< / span > }< / div >
< div class = "line" > < a id = "l01079" name = "l01079" > < / a > < span class = "lineno" > 1079< / span > < / div >
< div class = "line" > < a id = "l01080" name = "l01080" > < / a > < span class = "lineno" > 1080< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01081" name = "l01081" > < / a > < span class = "lineno" > 1081< / span > < span class = "keyword" > const< / span > int64_t max_inverse_value_;< / div >
< div class = "line" > < a id = "l01082" name = "l01082" > < / a > < span class = "lineno" > 1082< / span > std::vector< int64_t> old_inverse_values_;< / div >
< div class = "line" > < a id = "l01083" name = "l01083" > < / a > < span class = "lineno" > 1083< / span > std::vector< int64_t> inverse_values_;< / div >
< div class = "line" > < a id = "l01084" name = "l01084" > < / a > < span class = "lineno" > 1084< / span > };< / div >
< div class = "line" > < a id = "l01085" name = "l01085" > < / a > < span class = "lineno" > 1085< / span > < / div >
< div class = "line" > < a id = "l01086" name = "l01086" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html#a8fb0bba143ab22bee32e6bf4bd886d53" > 1086< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#a8fb0bba143ab22bee32e6bf4bd886d53" > IntVarLocalSearchHandler::ValueFromAssignment< / a > (< / div >
< div class = "line" > < a id = "l01087" name = "l01087" > < / a > < span class = "lineno" > 1087< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > & assignment, < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , int64_t* < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01088" name = "l01088" > < / a > < span class = "lineno" > 1088< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment_container.html" > Assignment::IntContainer< / a > & container = assignment.< a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#aedb0ae1cf8c3e89218604e5c039d6c7b" > IntVarContainer< / a > ();< / div >
< div class = "line" > < a id = "l01089" name = "l01089" > < / a > < span class = "lineno" > 1089< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_element.html" > IntVarElement< / a > * element = & (container.< a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a574bbe757dd231a59843422be3145dee" > Element< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ));< / div >
< div class = "line" > < a id = "l01090" name = "l01090" > < / a > < span class = "lineno" > 1090< / span > < span class = "keywordflow" > if< / span > (element-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_element.html#ad197164b669d8b5d35fc497754791e39" > Var< / a > () != < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ) {< / div >
< div class = "line" > < a id = "l01091" name = "l01091" > < / a > < span class = "lineno" > 1091< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a3e1cfef60e774a81f30eaddf26a3a274" > CHECK< / a > (container.< a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a4beccbd8819d830e06223550b8ca6d10" > Contains< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ))< / div >
< div class = "line" > < a id = "l01092" name = "l01092" > < / a > < span class = "lineno" > 1092< / span > < < < span class = "stringliteral" > " Assignment does not contain operator variable " < / span > < < < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ;< / div >
< div class = "line" > < a id = "l01093" name = "l01093" > < / a > < span class = "lineno" > 1093< / span > element = & (container.< a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a574bbe757dd231a59843422be3145dee" > Element< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ));< / div >
< div class = "line" > < a id = "l01094" name = "l01094" > < / a > < span class = "lineno" > 1094< / span > }< / div >
< div class = "line" > < a id = "l01095" name = "l01095" > < / a > < span class = "lineno" > 1095< / span > *< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > = element-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_element.html#a15828fe5ecfdada586a63d916b7b7354" > Value< / a > ();< / div >
< div class = "line" > < a id = "l01096" name = "l01096" > < / a > < span class = "lineno" > 1096< / span > < span class = "keywordflow" > if< / span > (op_-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#ad1a398f4067998f7fad447447051dbcf" > IsInverseValue< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )) {< / div >
< div class = "line" > < a id = "l01097" name = "l01097" > < / a > < span class = "lineno" > 1097< / span > op_-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a79ba95b5c45a4b1ce761cfac942c7e3b" > SetInverseValue< / a > (*< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l01098" name = "l01098" > < / a > < span class = "lineno" > 1098< / span > op_-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a557f96c9f1f5883f616350bde6cc2e2a" > SetOldInverseValue< / a > (*< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l01099" name = "l01099" > < / a > < span class = "lineno" > 1099< / span > }< / div >
< div class = "line" > < a id = "l01100" name = "l01100" > < / a > < span class = "lineno" > 1100< / span > < span class = "keywordflow" > return< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_element.html#ae79195ce9bb522329dfaedaba78bd4e2" > Activated< / a > ();< / div >
< div class = "line" > < a id = "l01101" name = "l01101" > < / a > < span class = "lineno" > 1101< / span > }< / div >
< div class = "line" > < a id = "l01102" name = "l01102" > < / a > < span class = "lineno" > 1102< / span > < / div >
< div class = "line" > < a id = "l01103" name = "l01103" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_handler.html#ad4c241e89e13509622503f2763ed7295" > 1103< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_handler.html#ad4c241e89e13509622503f2763ed7295" > IntVarLocalSearchHandler::OnRevertChanges< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ,< / div >
< div class = "line" > < a id = "l01104" name = "l01104" > < / a > < span class = "lineno" > 1104< / span > int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01105" name = "l01105" > < / a > < span class = "lineno" > 1105< / span > < span class = "keywordflow" > if< / span > (op_-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#ad1a398f4067998f7fad447447051dbcf" > IsInverseValue< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )) {< / div >
< div class = "line" > < a id = "l01106" name = "l01106" > < / a > < span class = "lineno" > 1106< / span > op_-> < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a79ba95b5c45a4b1ce761cfac942c7e3b" > SetInverseValue< / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l01107" name = "l01107" > < / a > < span class = "lineno" > 1107< / span > }< / div >
< div class = "line" > < a id = "l01108" name = "l01108" > < / a > < span class = "lineno" > 1108< / span > }< / div >
< div class = "line" > < a id = "l01109" name = "l01109" > < / a > < span class = "lineno" > 1109< / span > < / div >
< div class = "line" > < a id = "l01111" name = "l01111" > < / a > < span class = "lineno" > 1111< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_operator.html" > SequenceVarLocalSearchOperator< / a > ;< / div >
< div class = "line" > < a id = "l01112" name = "l01112" > < / a > < span class = "lineno" > 1112< / span > < / div >
< div class = "line" > < a id = "l01113" name = "l01113" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > 1113< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > SequenceVarLocalSearchHandler< / a > {< / div >
< div class = "line" > < a id = "l01114" name = "l01114" > < / a > < span class = "lineno" > 1114< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01115" name = "l01115" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a313406fc0b0f1f176d75edbde9899961" > 1115< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a313406fc0b0f1f176d75edbde9899961" > SequenceVarLocalSearchHandler< / a > () : op_(nullptr) {}< / div >
< div class = "line" > < a id = "l01116" name = "l01116" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a25604d83014cbeac92c0ca5d21e9f621" > 1116< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a25604d83014cbeac92c0ca5d21e9f621" > SequenceVarLocalSearchHandler< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > SequenceVarLocalSearchHandler< / a > & other)< / div >
< div class = "line" > < a id = "l01117" name = "l01117" > < / a > < span class = "lineno" > 1117< / span > : op_(other.op_) {}< / div >
< div class = "line" > < a id = "l01118" name = "l01118" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a4314d5003c94cf5333271a1f2703b7ed" > 1118< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a4314d5003c94cf5333271a1f2703b7ed" > SequenceVarLocalSearchHandler< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_operator.html" > SequenceVarLocalSearchOperator< / a > * op)< / div >
< div class = "line" > < a id = "l01119" name = "l01119" > < / a > < span class = "lineno" > 1119< / span > : op_(op) {}< / div >
< div class = "line" > < a id = "l01120" name = "l01120" > < / a > < span class = "lineno" > 1120< / span > < span class = "keywordtype" > void< / span > AddToAssignment(< a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l01121" name = "l01121" > < / a > < span class = "lineno" > 1121< / span > < span class = "keywordtype" > bool< / span > active, std::vector< int> * assignment_indices,< / div >
< div class = "line" > < a id = "l01122" name = "l01122" > < / a > < span class = "lineno" > 1122< / span > int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l01123" name = "l01123" > < / a > < span class = "lineno" > 1123< / span > < span class = "keywordtype" > bool< / span > ValueFromAssignment(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > & assignment, < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l01124" name = "l01124" > < / a > < span class = "lineno" > 1124< / span > int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , std::vector< int> * < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l01125" name = "l01125" > < / a > < span class = "lineno" > 1125< / span > < span class = "keywordtype" > void< / span > OnRevertChanges(int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l01126" name = "l01126" > < / a > < span class = "lineno" > 1126< / span > < span class = "keywordtype" > void< / span > OnAddVars();< / div >
< div class = "line" > < a id = "l01127" name = "l01127" > < / a > < span class = "lineno" > 1127< / span > < / div >
< div class = "line" > < a id = "l01128" name = "l01128" > < / a > < span class = "lineno" > 1128< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01129" name = "l01129" > < / a > < span class = "lineno" > 1129< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_operator.html" > SequenceVarLocalSearchOperator< / a > * < span class = "keyword" > const< / span > op_;< / div >
< div class = "line" > < a id = "l01130" name = "l01130" > < / a > < span class = "lineno" > 1130< / span > };< / div >
< div class = "line" > < a id = "l01131" name = "l01131" > < / a > < span class = "lineno" > 1131< / span > < / div >
< div class = "line" > < a id = "l01132" name = "l01132" > < / a > < span class = "lineno" > 1132< / span > < span class = "preprocessor" > #ifdef SWIG< / span > < / div >
< div class = "line" > < a id = "l01136" name = "l01136" > < / a > < span class = "lineno" > 1136< / span > < span class = "comment" > // TODO(user): find a way to move this code back to the .i file, where it< / span > < / div >
< div class = "line" > < a id = "l01138" name = "l01138" > < / a > < span class = "lineno" > 1138< / span > < span class = "comment" > < / span > < span class = "comment" > // clang-format off< / span > < / div >
< div class = "line" > < a id = "l01139" name = "l01139" > < / a > < span class = "lineno" > 1139< / span > %rename(< a class = "code hl_typedef" href = "namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8" > SequenceVarLocalSearchOperatorTemplate< / a > ) VarLocalSearchOperator< < / div >
< div class = "line" > < a id = "l01140" name = "l01140" > < / a > < span class = "lineno" > 1140< / span > SequenceVar, std::vector< int> , SequenceVarLocalSearchHandler> ;< / div >
< div class = "line" > < a id = "l01141" name = "l01141" > < / a > < span class = "lineno" > 1141< / span > %< span class = "keyword" > template< / span > (< a class = "code hl_typedef" href = "namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8" > SequenceVarLocalSearchOperatorTemplate< / a > ) VarLocalSearchOperator< < / div >
< div class = "line" > < a id = "l01142" name = "l01142" > < / a > < span class = "lineno" > 1142< / span > SequenceVar, std::vector< int> , SequenceVarLocalSearchHandler> ;< / div >
< div class = "line" > < a id = "l01143" name = "l01143" > < / a > < span class = "lineno" > 1143< / span > < span class = "comment" > // clang-format on< / span > < / div >
< div class = "line" > < a id = "l01144" name = "l01144" > < / a > < span class = "lineno" > 1144< / span > < span class = "preprocessor" > #endif< / span > < / div >
< div class = "line" > < a id = "l01145" name = "l01145" > < / a > < span class = "lineno" > 1145< / span > < / div >
< div class = "line" > < a id = "l01146" name = "l01146" > < / a > < span class = "lineno" > 1146< / span > < span class = "keyword" > typedef< / span > VarLocalSearchOperator< SequenceVar, std::vector< int> ,< / div >
< div class = "line" > < a id = "l01147" name = "l01147" > < / a > < span class = "lineno" > 1147< / span > SequenceVarLocalSearchHandler> < / div >
< div class = "line" > < a id = "l01148" name = "l01148" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8" > 1148< / a > < / span > < a class = "code hl_typedef" href = "namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8" > SequenceVarLocalSearchOperatorTemplate< / a > ;< / div >
< div class = "line" > < a id = "l01149" name = "l01149" > < / a > < span class = "lineno" > 1149< / span > < / div >
< div class = "line" > < a id = "l01150" name = "l01150" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html" > 1150< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_operator.html" > SequenceVarLocalSearchOperator< / a > < / div >
< div class = "line" > < a id = "l01151" name = "l01151" > < / a > < span class = "lineno" > 1151< / span > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_var_local_search_operator.html" > SequenceVarLocalSearchOperatorTemplate< / a > {< / div >
< div class = "line" > < a id = "l01152" name = "l01152" > < / a > < span class = "lineno" > 1152< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01153" name = "l01153" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#afd2da9c60c12a80c7963535f02e68f7b" > 1153< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#afd2da9c60c12a80c7963535f02e68f7b" > SequenceVarLocalSearchOperator< / a > () {}< / div >
< div class = "line" > < a id = "l01154" name = "l01154" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#aa6aa43258bb7c95fb77f569227aee75c" > 1154< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#aa6aa43258bb7c95fb77f569227aee75c" > SequenceVarLocalSearchOperator< / a > (< span class = "keyword" > const< / span > std::vector< SequenceVar*> & vars)< / div >
< div class = "line" > < a id = "l01155" name = "l01155" > < / a > < span class = "lineno" > 1155< / span > : < a class = "code hl_class" href = "classoperations__research_1_1_var_local_search_operator.html" > SequenceVarLocalSearchOperatorTemplate< / a > (< / div >
< div class = "line" > < a id = "l01156" name = "l01156" > < / a > < span class = "lineno" > 1156< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > SequenceVarLocalSearchHandler< / a > (this)) {< / div >
< div class = "line" > < a id = "l01157" name = "l01157" > < / a > < span class = "lineno" > 1157< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ae2af73491ab2aa6804b443d442026a5e" > AddVars< / a > (vars);< / div >
< div class = "line" > < a id = "l01158" name = "l01158" > < / a > < span class = "lineno" > 1158< / span > }< / div >
< div class = "line" > < a id = "l01159" name = "l01159" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a35c529adfbac348d61a48ecd7e06b64d" > 1159< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a35c529adfbac348d61a48ecd7e06b64d" > ~SequenceVarLocalSearchOperator< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l01162" name = "l01162" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a689e9e8dc0eb8ae867dbfbaa9d1e5c2e" > 1162< / a > < / span > < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a689e9e8dc0eb8ae867dbfbaa9d1e5c2e" > Sequence< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > Value< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ); }< / div >
< div class = "line" > < a id = "l01163" name = "l01163" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#af83d0756e698f74667dea1571a2d0f5c" > 1163< / a > < / span > < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#af83d0756e698f74667dea1571a2d0f5c" > OldSequence< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01164" name = "l01164" > < / a > < span class = "lineno" > 1164< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a79163ea8990864f185e87eabf1578cca" > OldValue< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l01165" name = "l01165" > < / a > < span class = "lineno" > 1165< / span > }< / div >
< div class = "line" > < a id = "l01166" name = "l01166" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a32d7461a11748f6614455083c485e7b7" > 1166< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a32d7461a11748f6614455083c485e7b7" > SetForwardSequence< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01167" name = "l01167" > < / a > < span class = "lineno" > 1167< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a20dd03e0437bf484e2ea321595c2e1cd" > SetValue< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l01168" name = "l01168" > < / a > < span class = "lineno" > 1168< / span > }< / div >
< div class = "line" > < a id = "l01169" name = "l01169" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a182179d1af399fa1d3c3d79f0b78af29" > 1169< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a182179d1af399fa1d3c3d79f0b78af29" > SetBackwardSequence< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01170" name = "l01170" > < / a > < span class = "lineno" > 1170< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > backward_values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ;< / div >
< div class = "line" > < a id = "l01171" name = "l01171" > < / a > < span class = "lineno" > 1171< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#ab309dc20c7f6458d60ef0e8de08b3c7c" > MarkChange< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l01172" name = "l01172" > < / a > < span class = "lineno" > 1172< / span > }< / div >
< div class = "line" > < a id = "l01173" name = "l01173" > < / a > < span class = "lineno" > 1173< / span > < / div >
< div class = "line" > < a id = "l01174" name = "l01174" > < / a > < span class = "lineno" > 1174< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l01175" name = "l01175" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#ab80b964f556e6175e70741b63de9f94e" > 1175< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > SequenceVarLocalSearchHandler< / a > ;< / div >
< div class = "line" > < a id = "l01176" name = "l01176" > < / a > < span class = "lineno" > 1176< / span > < / div >
< div class = "line" > < a id = "l01177" name = "l01177" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > 1177< / a > < / span > std::vector< std::vector< int> > < a class = "code hl_variable" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > backward_values_< / a > ;< / div >
< div class = "line" > < a id = "l01178" name = "l01178" > < / a > < span class = "lineno" > 1178< / span > };< / div >
< div class = "line" > < a id = "l01179" name = "l01179" > < / a > < span class = "lineno" > 1179< / span > < / div >
< div class = "line" > < a id = "l01180" name = "l01180" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a4c02c35b283b85deb0cac7fd2317f3de" > 1180< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a4c02c35b283b85deb0cac7fd2317f3de" > SequenceVarLocalSearchHandler::AddToAssignment< / a > (< / div >
< div class = "line" > < a id = "l01181" name = "l01181" > < / a > < span class = "lineno" > 1181< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > , < span class = "keywordtype" > bool< / span > active,< / div >
< div class = "line" > < a id = "l01182" name = "l01182" > < / a > < span class = "lineno" > 1182< / span > std::vector< int> * assignment_indices, int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ,< / div >
< div class = "line" > < a id = "l01183" name = "l01183" > < / a > < span class = "lineno" > 1183< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01184" name = "l01184" > < / a > < span class = "lineno" > 1184< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment_container.html" > Assignment::SequenceContainer< / a > * < span class = "keyword" > const< / span > container =< / div >
< div class = "line" > < a id = "l01185" name = "l01185" > < / a > < span class = "lineno" > 1185< / span > assignment-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#a1835a442677d0ac8a0b303c628136964" > MutableSequenceVarContainer< / a > ();< / div >
< div class = "line" > < a id = "l01186" name = "l01186" > < / a > < span class = "lineno" > 1186< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_element.html" > SequenceVarElement< / a > * element = < span class = "keyword" > nullptr< / span > ;< / div >
< div class = "line" > < a id = "l01187" name = "l01187" > < / a > < span class = "lineno" > 1187< / span > < span class = "keywordflow" > if< / span > (assignment_indices != < span class = "keyword" > nullptr< / span > ) {< / div >
< div class = "line" > < a id = "l01188" name = "l01188" > < / a > < span class = "lineno" > 1188< / span > < span class = "keywordflow" > if< / span > ((*assignment_indices)[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] == -1) {< / div >
< div class = "line" > < a id = "l01189" name = "l01189" > < / a > < span class = "lineno" > 1189< / span > (*assignment_indices)[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ] = container-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ();< / div >
< div class = "line" > < a id = "l01190" name = "l01190" > < / a > < span class = "lineno" > 1190< / span > element = assignment-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#af5fcf5e7a47ae0e325fb1df409ac8e24" > FastAdd< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > );< / div >
< div class = "line" > < a id = "l01191" name = "l01191" > < / a > < span class = "lineno" > 1191< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l01192" name = "l01192" > < / a > < span class = "lineno" > 1192< / span > element = container-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a711e8eed87d49e98128460c4aee01d02" > MutableElement< / a > ((*assignment_indices)[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]);< / div >
< div class = "line" > < a id = "l01193" name = "l01193" > < / a > < span class = "lineno" > 1193< / span > }< / div >
< div class = "line" > < a id = "l01194" name = "l01194" > < / a > < span class = "lineno" > 1194< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l01195" name = "l01195" > < / a > < span class = "lineno" > 1195< / span > element = assignment-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#af5fcf5e7a47ae0e325fb1df409ac8e24" > FastAdd< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > );< / div >
< div class = "line" > < a id = "l01196" name = "l01196" > < / a > < span class = "lineno" > 1196< / span > }< / div >
< div class = "line" > < a id = "l01197" name = "l01197" > < / a > < span class = "lineno" > 1197< / span > < span class = "keywordflow" > if< / span > (active) {< / div >
< div class = "line" > < a id = "l01198" name = "l01198" > < / a > < span class = "lineno" > 1198< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_element.html#abd09fe08f368306c986382df61a20c73" > SetForwardSequence< / a > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l01199" name = "l01199" > < / a > < span class = "lineno" > 1199< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_element.html#a448be08e73b90cd86345acc79613a051" > SetBackwardSequence< / a > (op_-> < a class = "code hl_variable" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > backward_values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]);< / div >
< div class = "line" > < a id = "l01200" name = "l01200" > < / a > < span class = "lineno" > 1200< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_element.html#ae8753efaeea05f65094a4875a694a368" > Activate< / a > ();< / div >
< div class = "line" > < a id = "l01201" name = "l01201" > < / a > < span class = "lineno" > 1201< / span > } < span class = "keywordflow" > else< / span > {< / div >
< div class = "line" > < a id = "l01202" name = "l01202" > < / a > < span class = "lineno" > 1202< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_element.html#a9c9dd3575fbfc59e05ae9ed1c05f8896" > Deactivate< / a > ();< / div >
< div class = "line" > < a id = "l01203" name = "l01203" > < / a > < span class = "lineno" > 1203< / span > }< / div >
< div class = "line" > < a id = "l01204" name = "l01204" > < / a > < span class = "lineno" > 1204< / span > }< / div >
< div class = "line" > < a id = "l01205" name = "l01205" > < / a > < span class = "lineno" > 1205< / span > < / div >
< div class = "line" > < a id = "l01206" name = "l01206" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a1a3c9d037de3120761d419606d4d3583" > 1206< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a1a3c9d037de3120761d419606d4d3583" > SequenceVarLocalSearchHandler::ValueFromAssignment< / a > (< / div >
< div class = "line" > < a id = "l01207" name = "l01207" > < / a > < span class = "lineno" > 1207< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > & assignment, < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ,< / div >
< div class = "line" > < a id = "l01208" name = "l01208" > < / a > < span class = "lineno" > 1208< / span > std::vector< int> * < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01209" name = "l01209" > < / a > < span class = "lineno" > 1209< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment_container.html" > Assignment::SequenceContainer< / a > & container =< / div >
< div class = "line" > < a id = "l01210" name = "l01210" > < / a > < span class = "lineno" > 1210< / span > assignment.< a class = "code hl_function" href = "classoperations__research_1_1_assignment.html#a856df6a293bedbd12dcf082891f002c4" > SequenceVarContainer< / a > ();< / div >
< div class = "line" > < a id = "l01211" name = "l01211" > < / a > < span class = "lineno" > 1211< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var_element.html" > SequenceVarElement< / a > * element = & (container.< a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a574bbe757dd231a59843422be3145dee" > Element< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ));< / div >
< div class = "line" > < a id = "l01212" name = "l01212" > < / a > < span class = "lineno" > 1212< / span > < span class = "keywordflow" > if< / span > (element-> < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_element.html#ae8c75124aa71f4cb2761b58e08e9e4b1" > Var< / a > () != < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ) {< / div >
< div class = "line" > < a id = "l01213" name = "l01213" > < / a > < span class = "lineno" > 1213< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a3e1cfef60e774a81f30eaddf26a3a274" > CHECK< / a > (container.< a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a4beccbd8819d830e06223550b8ca6d10" > Contains< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ))< / div >
< div class = "line" > < a id = "l01214" name = "l01214" > < / a > < span class = "lineno" > 1214< / span > < < < span class = "stringliteral" > " Assignment does not contain operator variable " < / span > < < < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ;< / div >
< div class = "line" > < a id = "l01215" name = "l01215" > < / a > < span class = "lineno" > 1215< / span > element = & (container.< a class = "code hl_function" href = "classoperations__research_1_1_assignment_container.html#a574bbe757dd231a59843422be3145dee" > Element< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ));< / div >
< div class = "line" > < a id = "l01216" name = "l01216" > < / a > < span class = "lineno" > 1216< / span > }< / div >
< div class = "line" > < a id = "l01217" name = "l01217" > < / a > < span class = "lineno" > 1217< / span > < span class = "keyword" > const< / span > std::vector< int> & element_value = element-> < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_element.html#a91d3f0252bfbe5a661ad3e0cea3c9c5a" > ForwardSequence< / a > ();< / div >
< div class = "line" > < a id = "l01218" name = "l01218" > < / a > < span class = "lineno" > 1218< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a7cc25402ecd7591b4c39934dd656b1f9" > CHECK_GE< / a > (< a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > -> size(), element_value.size());< / div >
< div class = "line" > < a id = "l01219" name = "l01219" > < / a > < span class = "lineno" > 1219< / span > op_-> < a class = "code hl_variable" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > backward_values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ].clear();< / div >
< div class = "line" > < a id = "l01220" name = "l01220" > < / a > < span class = "lineno" > 1220< / span > *< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > = element_value;< / div >
< div class = "line" > < a id = "l01221" name = "l01221" > < / a > < span class = "lineno" > 1221< / span > < span class = "keywordflow" > return< / span > element-> < a class = "code hl_function" href = "classoperations__research_1_1_assignment_element.html#ae79195ce9bb522329dfaedaba78bd4e2" > Activated< / a > ();< / div >
< div class = "line" > < a id = "l01222" name = "l01222" > < / a > < span class = "lineno" > 1222< / span > }< / div >
< div class = "line" > < a id = "l01223" name = "l01223" > < / a > < span class = "lineno" > 1223< / span > < / div >
< div class = "line" > < a id = "l01224" name = "l01224" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a125b2232e57570b4d8112618e632853c" > 1224< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a125b2232e57570b4d8112618e632853c" > SequenceVarLocalSearchHandler::OnRevertChanges< / a > (< / div >
< div class = "line" > < a id = "l01225" name = "l01225" > < / a > < span class = "lineno" > 1225< / span > int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l01226" name = "l01226" > < / a > < span class = "lineno" > 1226< / span > op_-> < a class = "code hl_variable" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > backward_values_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ].clear();< / div >
< div class = "line" > < a id = "l01227" name = "l01227" > < / a > < span class = "lineno" > 1227< / span > }< / div >
< div class = "line" > < a id = "l01228" name = "l01228" > < / a > < span class = "lineno" > 1228< / span > < / div >
< div class = "line" > < a id = "l01229" name = "l01229" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9" > 1229< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9" > SequenceVarLocalSearchHandler::OnAddVars< / a > () {< / div >
< div class = "line" > < a id = "l01230" name = "l01230" > < / a > < span class = "lineno" > 1230< / span > op_-> < a class = "code hl_variable" href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > backward_values_< / a > .resize(op_-> < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ());< / div >
< div class = "line" > < a id = "l01231" name = "l01231" > < / a > < span class = "lineno" > 1231< / span > }< / div >
< div class = "line" > < a id = "l01232" name = "l01232" > < / a > < span class = "lineno" > 1232< / span > < / div >
< div class = "line" > < a id = "l01260" name = "l01260" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_base_lns.html" > 1260< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_base_lns.html" > BaseLns< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > {< / div >
< div class = "line" > < a id = "l01261" name = "l01261" > < / a > < span class = "lineno" > 1261< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01262" name = "l01262" > < / a > < span class = "lineno" > 1262< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#a840517015168011f69e29024a6427c59" > BaseLns< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars);< / div >
< div class = "line" > < a id = "l01263" name = "l01263" > < / a > < span class = "lineno" > 1263< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#a4b7841840aa1d1db5969b556993c4701" > ~BaseLns< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01264" name = "l01264" > < / a > < span class = "lineno" > 1264< / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#adfa0121ae9643b1ebbf015263e75267f" > InitFragments< / a > ();< / div >
< div class = "line" > < a id = "l01265" name = "l01265" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_base_lns.html#a3de0e8f828ff8c805575512db8e89c75" > 1265< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#a3de0e8f828ff8c805575512db8e89c75" > NextFragment< / a > () = 0;< / div >
< div class = "line" > < a id = "l01266" name = "l01266" > < / a > < span class = "lineno" > 1266< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#a76f3a89c46806c6aa038669246ccb66b" > AppendToFragment< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l01267" name = "l01267" > < / a > < span class = "lineno" > 1267< / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#a93c1603a882c8cf59cc93822caf83caa" > FragmentSize< / a > () < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l01268" name = "l01268" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_base_lns.html#a4c069642a869d9055609c7eac7078f8c" > 1268< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#a4c069642a869d9055609c7eac7078f8c" > HasFragments< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ; }< / div >
< div class = "line" > < a id = "l01269" name = "l01269" > < / a > < span class = "lineno" > 1269< / span > < / div >
< div class = "line" > < a id = "l01270" name = "l01270" > < / a > < span class = "lineno" > 1270< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l01272" name = "l01272" > < / a > < span class = "lineno" > 1272< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_base_lns.html#ad14cde260686e5b4174e691675df3139" > MakeOneNeighbor< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01273" name = "l01273" > < / a > < span class = "lineno" > 1273< / span > < / div >
< div class = "line" > < a id = "l01274" name = "l01274" > < / a > < span class = "lineno" > 1274< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01276" name = "l01276" > < / a > < span class = "lineno" > 1276< / span > < span class = "keywordtype" > void< / span > OnStart() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01277" name = "l01277" > < / a > < span class = "lineno" > 1277< / span > std::vector< int> fragment_;< / div >
< div class = "line" > < a id = "l01278" name = "l01278" > < / a > < span class = "lineno" > 1278< / span > };< / div >
< div class = "line" > < a id = "l01279" name = "l01279" > < / a > < span class = "lineno" > 1279< / span > < / div >
< div class = "line" > < a id = "l01284" name = "l01284" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_change_value.html" > 1284< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_change_value.html" > ChangeValue< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > {< / div >
< div class = "line" > < a id = "l01285" name = "l01285" > < / a > < span class = "lineno" > 1285< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01286" name = "l01286" > < / a > < span class = "lineno" > 1286< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_change_value.html#a24154d3958d686ddef877d6511dbf002" > ChangeValue< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars);< / div >
< div class = "line" > < a id = "l01287" name = "l01287" > < / a > < span class = "lineno" > 1287< / span > < a class = "code hl_function" href = "classoperations__research_1_1_change_value.html#a65938f69ea3057a0c2cada291b8c6bce" > ~ChangeValue< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01288" name = "l01288" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_change_value.html#a3a6b7683af0d21eadc801e49dcafb240" > 1288< / a > < / span > < span class = "keyword" > virtual< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_change_value.html#a3a6b7683af0d21eadc801e49dcafb240" > ModifyValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01289" name = "l01289" > < / a > < span class = "lineno" > 1289< / span > < / div >
< div class = "line" > < a id = "l01290" name = "l01290" > < / a > < span class = "lineno" > 1290< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l01292" name = "l01292" > < / a > < span class = "lineno" > 1292< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_change_value.html#ad14cde260686e5b4174e691675df3139" > MakeOneNeighbor< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01293" name = "l01293" > < / a > < span class = "lineno" > 1293< / span > < / div >
< div class = "line" > < a id = "l01294" name = "l01294" > < / a > < span class = "lineno" > 1294< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01295" name = "l01295" > < / a > < span class = "lineno" > 1295< / span > < span class = "keywordtype" > void< / span > OnStart() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01296" name = "l01296" > < / a > < span class = "lineno" > 1296< / span > < / div >
< div class = "line" > < a id = "l01297" name = "l01297" > < / a > < span class = "lineno" > 1297< / span > < span class = "keywordtype" > int< / span > index_;< / div >
< div class = "line" > < a id = "l01298" name = "l01298" > < / a > < span class = "lineno" > 1298< / span > };< / div >
< div class = "line" > < a id = "l01299" name = "l01299" > < / a > < span class = "lineno" > 1299< / span > < / div >
< div class = "line" > < a id = "l01313" name = "l01313" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html" > 1313< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_operator.html" > PathOperator< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_operator.html" > IntVarLocalSearchOperator< / a > {< / div >
< div class = "line" > < a id = "l01314" name = "l01314" > < / a > < span class = "lineno" > 1314< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01316" name = "l01316" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html" > 1316< / a > < / span > < span class = "keyword" > struct < / span > < a class = "code hl_struct" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html" > IterationParameters< / a > {< / div >
< div class = "line" > < a id = "l01318" name = "l01318" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a0e2c2f3c021b1d8cff2e0f0458f8ee29" > 1318< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a0e2c2f3c021b1d8cff2e0f0458f8ee29" > number_of_base_nodes< / a > ;< / div >
< div class = "line" > < a id = "l01321" name = "l01321" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#ab789487f0da61ea5fffb910d587d18b3" > 1321< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_variable" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#ab789487f0da61ea5fffb910d587d18b3" > skip_locally_optimal_paths< / a > ;< / div >
< div class = "line" > < a id = "l01323" name = "l01323" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a06ba9faa1da8bc11b9bad1b28184d66a" > 1323< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_variable" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a06ba9faa1da8bc11b9bad1b28184d66a" > accept_path_end_base< / a > ;< / div >
< div class = "line" > < a id = "l01334" name = "l01334" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a1581ad954b08df9d34aeab8c61baa926" > 1334< / a > < / span > std::function< int(int64_t)> < a class = "code hl_variable" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a1581ad954b08df9d34aeab8c61baa926" > start_empty_path_class< / a > ;< / div >
< div class = "line" > < a id = "l01335" name = "l01335" > < / a > < span class = "lineno" > 1335< / span > };< / div >
< div class = "line" > < a id = "l01337" name = "l01337" > < / a > < span class = "lineno" > 1337< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#aea9787c24ee8fe0e3fa88451ddadeb54" > PathOperator< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & next_vars,< / div >
< div class = "line" > < a id = "l01338" name = "l01338" > < / a > < span class = "lineno" > 1338< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & path_vars,< / div >
< div class = "line" > < a id = "l01339" name = "l01339" > < / a > < span class = "lineno" > 1339< / span > < a class = "code hl_struct" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html" > IterationParameters< / a > iteration_parameters);< / div >
< div class = "line" > < a id = "l01340" name = "l01340" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ab940d0f5833faec22565abde5acf43a5" > 1340< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab940d0f5833faec22565abde5acf43a5" > PathOperator< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & next_vars,< / div >
< div class = "line" > < a id = "l01341" name = "l01341" > < / a > < span class = "lineno" > 1341< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & path_vars, < span class = "keywordtype" > int< / span > number_of_base_nodes,< / div >
< div class = "line" > < a id = "l01342" name = "l01342" > < / a > < span class = "lineno" > 1342< / span > < span class = "keywordtype" > bool< / span > skip_locally_optimal_paths, < span class = "keywordtype" > bool< / span > accept_path_end_base,< / div >
< div class = "line" > < a id = "l01343" name = "l01343" > < / a > < span class = "lineno" > 1343< / span > std::function< < span class = "keywordtype" > int< / span > (int64_t)> start_empty_path_class)< / div >
< div class = "line" > < a id = "l01344" name = "l01344" > < / a > < span class = "lineno" > 1344< / span > : < a class = "code hl_class" href = "classoperations__research_1_1_path_operator.html" > PathOperator< / a > (< / div >
< div class = "line" > < a id = "l01345" name = "l01345" > < / a > < span class = "lineno" > 1345< / span > next_vars, path_vars,< / div >
< div class = "line" > < a id = "l01346" name = "l01346" > < / a > < span class = "lineno" > 1346< / span > {number_of_base_nodes, skip_locally_optimal_paths,< / div >
< div class = "line" > < a id = "l01347" name = "l01347" > < / a > < span class = "lineno" > 1347< / span > accept_path_end_base, std::move(start_empty_path_class)}) {}< / div >
< div class = "line" > < a id = "l01348" name = "l01348" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a71db241bc64be612a4080eb897d97d1b" > 1348< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a71db241bc64be612a4080eb897d97d1b" > ~PathOperator< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l01349" name = "l01349" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a10ae14d6daad9088377260420952f814" > 1349< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a10ae14d6daad9088377260420952f814" > MakeNeighbor< / a > () = 0;< / div >
< div class = "line" > < a id = "l01350" name = "l01350" > < / a > < span class = "lineno" > 1350< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#af82f4acaed7bb39d568e689a9caa63d5" > Reset< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01351" name = "l01351" > < / a > < span class = "lineno" > 1351< / span > < / div >
< div class = "line" > < a id = "l01352" name = "l01352" > < / a > < span class = "lineno" > 1352< / span > < span class = "comment" > // TODO(user): Make the following methods protected.< / span > < / div >
< div class = "line" > < a id = "l01353" name = "l01353" > < / a > < span class = "lineno" > 1353< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#aa8d4a4b8ea73184cedcc0be51f6a3921" > SkipUnchanged< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) < span class = "keyword" > const override< / span > ;< / div >
< div class = "line" > < a id = "l01354" name = "l01354" > < / a > < span class = "lineno" > 1354< / span > < / div >
< div class = "line" > < a id = "l01356" name = "l01356" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a5f9e1016a5bb6a7d5cded8599a50fce1" > 1356< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a5f9e1016a5bb6a7d5cded8599a50fce1" > Next< / a > (int64_t node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01357" name = "l01357" > < / a > < span class = "lineno" > 1357< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (!< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a4f36c21ecd69ac0eda49cd44375e88b4" > IsPathEnd< / a > (node));< / div >
< div class = "line" > < a id = "l01358" name = "l01358" > < / a > < span class = "lineno" > 1358< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > Value< / a > (node);< / div >
< div class = "line" > < a id = "l01359" name = "l01359" > < / a > < span class = "lineno" > 1359< / span > }< / div >
< div class = "line" > < a id = "l01360" name = "l01360" > < / a > < span class = "lineno" > 1360< / span > < / div >
< div class = "line" > < a id = "l01362" name = "l01362" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#aa14dad2d86c18296f9a5227b87d5caad" > 1362< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#aa14dad2d86c18296f9a5227b87d5caad" > Prev< / a > (int64_t node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01363" name = "l01363" > < / a > < span class = "lineno" > 1363< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (!< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a17bdf687f4bf47cb68ea163f28876608" > IsPathStart< / a > (node));< / div >
< div class = "line" > < a id = "l01364" name = "l01364" > < / a > < span class = "lineno" > 1364< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae89df3243bbb8341130c7b3f44145ea0" > DCHECK_EQ< / a > (< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a5f9e1016a5bb6a7d5cded8599a50fce1" > Next< / a > (< a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a2d3012edb1ac1465f54c9c0c16187e69" > InverseValue< / a > (node)), node);< / div >
< div class = "line" > < a id = "l01365" name = "l01365" > < / a > < span class = "lineno" > 1365< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a2d3012edb1ac1465f54c9c0c16187e69" > InverseValue< / a > (node);< / div >
< div class = "line" > < a id = "l01366" name = "l01366" > < / a > < span class = "lineno" > 1366< / span > }< / div >
< div class = "line" > < a id = "l01367" name = "l01367" > < / a > < span class = "lineno" > 1367< / span > < / div >
< div class = "line" > < a id = "l01370" name = "l01370" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#adf2175ee598b241dcc5459573ebdc886" > 1370< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#adf2175ee598b241dcc5459573ebdc886" > Path< / a > (int64_t node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01371" name = "l01371" > < / a > < span class = "lineno" > 1371< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#ae56132578e8bc7a7eca4af4fd24fa966" > ignore_path_vars_< / a > ? 0LL : < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > Value< / a > (node + < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > );< / div >
< div class = "line" > < a id = "l01372" name = "l01372" > < / a > < span class = "lineno" > 1372< / span > }< / div >
< div class = "line" > < a id = "l01373" name = "l01373" > < / a > < span class = "lineno" > 1373< / span > < / div >
< div class = "line" > < a id = "l01375" name = "l01375" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a208d45797eebd7cad439cc43b049103d" > 1375< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a208d45797eebd7cad439cc43b049103d" > number_of_nexts< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > ; }< / div >
< div class = "line" > < a id = "l01376" name = "l01376" > < / a > < span class = "lineno" > 1376< / span > < / div >
< div class = "line" > < a id = "l01377" name = "l01377" > < / a > < span class = "lineno" > 1377< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l01379" name = "l01379" > < / a > < span class = "lineno" > 1379< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ad14cde260686e5b4174e691675df3139" > MakeOneNeighbor< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01383" name = "l01383" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a1223e0b8dbca7cd9c296fc4de65080b2" > 1383< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a1223e0b8dbca7cd9c296fc4de65080b2" > OnNodeInitialization< / a > () {}< / div >
< div class = "line" > < a id = "l01384" name = "l01384" > < / a > < span class = "lineno" > 1384< / span > < / div >
< div class = "line" > < a id = "l01386" name = "l01386" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > 1386< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > BaseNode< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > base_nodes_[i]; }< / div >
< div class = "line" > < a id = "l01388" name = "l01388" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a752100eca408efb4a9392f16f21f9cf7" > 1388< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a752100eca408efb4a9392f16f21f9cf7" > BaseAlternative< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > base_alternatives_[i]; }< / div >
< div class = "line" > < a id = "l01390" name = "l01390" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ac94bcebc6d1699e2292cf5fb56970a80" > 1390< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ac94bcebc6d1699e2292cf5fb56970a80" > BaseAlternativeNode< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01391" name = "l01391" > < / a > < span class = "lineno" > 1391< / span > < span class = "keywordflow" > if< / span > (!< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a0d3deb689556a77ed6f99860918d7f21" > ConsiderAlternatives< / a > (i)) < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > BaseNode< / a > (i);< / div >
< div class = "line" > < a id = "l01392" name = "l01392" > < / a > < span class = "lineno" > 1392< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > alternative_index = alternative_index_[< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > BaseNode< / a > (i)];< / div >
< div class = "line" > < a id = "l01393" name = "l01393" > < / a > < span class = "lineno" > 1393< / span > < span class = "keywordflow" > return< / span > alternative_index > = 0< / div >
< div class = "line" > < a id = "l01394" name = "l01394" > < / a > < span class = "lineno" > 1394< / span > ? alternative_sets_[alternative_index][base_alternatives_[i]]< / div >
< div class = "line" > < a id = "l01395" name = "l01395" > < / a > < span class = "lineno" > 1395< / span > : < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > BaseNode< / a > (i);< / div >
< div class = "line" > < a id = "l01396" name = "l01396" > < / a > < span class = "lineno" > 1396< / span > }< / div >
< div class = "line" > < a id = "l01398" name = "l01398" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a5bc40a93b9ba709cfb3ca78cea7435e1" > 1398< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a5bc40a93b9ba709cfb3ca78cea7435e1" > BaseSiblingAlternative< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01399" name = "l01399" > < / a > < span class = "lineno" > 1399< / span > < span class = "keywordflow" > return< / span > base_sibling_alternatives_[i];< / div >
< div class = "line" > < a id = "l01400" name = "l01400" > < / a > < span class = "lineno" > 1400< / span > }< / div >
< div class = "line" > < a id = "l01402" name = "l01402" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a9f9007781da398bc03b61ab99864295c" > 1402< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a9f9007781da398bc03b61ab99864295c" > BaseSiblingAlternativeNode< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01403" name = "l01403" > < / a > < span class = "lineno" > 1403< / span > < span class = "keywordflow" > if< / span > (!< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a0d3deb689556a77ed6f99860918d7f21" > ConsiderAlternatives< / a > (i)) < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > BaseNode< / a > (i);< / div >
< div class = "line" > < a id = "l01404" name = "l01404" > < / a > < span class = "lineno" > 1404< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > sibling_alternative_index =< / div >
< div class = "line" > < a id = "l01405" name = "l01405" > < / a > < span class = "lineno" > 1405< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ac9d41c75de01039a11af9b5d3cecc37f" > GetSiblingAlternativeIndex< / a > (< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > BaseNode< / a > (i));< / div >
< div class = "line" > < a id = "l01406" name = "l01406" > < / a > < span class = "lineno" > 1406< / span > < span class = "keywordflow" > return< / span > sibling_alternative_index > = 0< / div >
< div class = "line" > < a id = "l01407" name = "l01407" > < / a > < span class = "lineno" > 1407< / span > ? alternative_sets_[sibling_alternative_index]< / div >
< div class = "line" > < a id = "l01408" name = "l01408" > < / a > < span class = "lineno" > 1408< / span > [base_sibling_alternatives_[i]]< / div >
< div class = "line" > < a id = "l01409" name = "l01409" > < / a > < span class = "lineno" > 1409< / span > : < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > BaseNode< / a > (i);< / div >
< div class = "line" > < a id = "l01410" name = "l01410" > < / a > < span class = "lineno" > 1410< / span > }< / div >
< div class = "line" > < a id = "l01412" name = "l01412" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a027b0d17fd972bee95a8023e7d4f81c9" > 1412< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a027b0d17fd972bee95a8023e7d4f81c9" > StartNode< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > path_starts_[base_paths_[i]]; }< / div >
< div class = "line" > < a id = "l01414" name = "l01414" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a3493d43792939bc2a16ec5b53361095d" > 1414< / a > < / span > < span class = "keyword" > const< / span > std::vector< int64_t> & < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a3493d43792939bc2a16ec5b53361095d" > path_starts< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > path_starts_; }< / div >
< div class = "line" > < a id = "l01416" name = "l01416" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a11b8ad366b686132736854e7029e7bff" > 1416< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a11b8ad366b686132736854e7029e7bff" > PathClass< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01417" name = "l01417" > < / a > < span class = "lineno" > 1417< / span > < span class = "keywordflow" > return< / span > iteration_parameters_.< a class = "code hl_variable" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a1581ad954b08df9d34aeab8c61baa926" > start_empty_path_class< / a > != < span class = "keyword" > nullptr< / span > < / div >
< div class = "line" > < a id = "l01418" name = "l01418" > < / a > < span class = "lineno" > 1418< / span > ? iteration_parameters_.< a class = "code hl_variable" href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a1581ad954b08df9d34aeab8c61baa926" > start_empty_path_class< / a > (< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a027b0d17fd972bee95a8023e7d4f81c9" > StartNode< / a > (i))< / div >
< div class = "line" > < a id = "l01419" name = "l01419" > < / a > < span class = "lineno" > 1419< / span > : < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a027b0d17fd972bee95a8023e7d4f81c9" > StartNode< / a > (i);< / div >
< div class = "line" > < a id = "l01420" name = "l01420" > < / a > < span class = "lineno" > 1420< / span > }< / div >
< div class = "line" > < a id = "l01421" name = "l01421" > < / a > < span class = "lineno" > 1421< / span > < / div >
< div class = "line" > < a id = "l01428" name = "l01428" > < / a > < span class = "lineno" > 1428< / span > < span class = "comment" > // TODO(user): remove this when automatic detection of such cases in done.< / span > < / div >
< div class = "line" > < a id = "l01429" name = "l01429" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a38b76e1e3a147226d4981b05e4ec2c55" > 1429< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a38b76e1e3a147226d4981b05e4ec2c55" > RestartAtPathStartOnSynchronize< / a > () { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l01433" name = "l01433" > < / a > < span class = "lineno" > 1433< / span > < span class = "comment" > // TODO(user): ideally this should be OnSamePath(int64_t node1, int64_t< / span > < / div >
< div class = "line" > < a id = "l01434" name = "l01434" > < / a > < span class = "lineno" > 1434< / span > < span class = "comment" > // node2);< / span > < / div >
< div class = "line" > < a id = "l01436" name = "l01436" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a126d8d622ba60f333308fd98bcf8ed2b" > 1436< / a > < / span > < span class = "comment" > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a126d8d622ba60f333308fd98bcf8ed2b" > OnSamePathAsPreviousBase< / a > (int64_t base_index) { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l01442" name = "l01442" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ab720cd311ecdce747e444192edd3ea78" > 1442< / a > < / span > < span class = "keyword" > virtual< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab720cd311ecdce747e444192edd3ea78" > GetBaseNodeRestartPosition< / a > (< span class = "keywordtype" > int< / span > base_index) {< / div >
< div class = "line" > < a id = "l01443" name = "l01443" > < / a > < span class = "lineno" > 1443< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a027b0d17fd972bee95a8023e7d4f81c9" > StartNode< / a > (base_index);< / div >
< div class = "line" > < a id = "l01444" name = "l01444" > < / a > < span class = "lineno" > 1444< / span > }< / div >
< div class = "line" > < a id = "l01447" name = "l01447" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#aec4cb9ff1023933f7c5570a65a7208e7" > 1447< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#aec4cb9ff1023933f7c5570a65a7208e7" > SetNextBaseToIncrement< / a > (int64_t base_index) {< / div >
< div class = "line" > < a id = "l01448" name = "l01448" > < / a > < span class = "lineno" > 1448< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#ac4e410910ad9361ed46221ecc6f0aa9b" > next_base_to_increment_< / a > = base_index;< / div >
< div class = "line" > < a id = "l01449" name = "l01449" > < / a > < span class = "lineno" > 1449< / span > }< / div >
< div class = "line" > < a id = "l01452" name = "l01452" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a0d3deb689556a77ed6f99860918d7f21" > 1452< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a0d3deb689556a77ed6f99860918d7f21" > ConsiderAlternatives< / a > (int64_t base_index)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l01453" name = "l01453" > < / a > < span class = "lineno" > 1453< / span > < / div >
< div class = "line" > < a id = "l01454" name = "l01454" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#aa5e00890b9ba3ed95dfba829e51f6be4" > 1454< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#aa5e00890b9ba3ed95dfba829e51f6be4" > OldNext< / a > (int64_t node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01455" name = "l01455" > < / a > < span class = "lineno" > 1455< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (!< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a4f36c21ecd69ac0eda49cd44375e88b4" > IsPathEnd< / a > (node));< / div >
< div class = "line" > < a id = "l01456" name = "l01456" > < / a > < span class = "lineno" > 1456< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a79163ea8990864f185e87eabf1578cca" > OldValue< / a > (node);< / div >
< div class = "line" > < a id = "l01457" name = "l01457" > < / a > < span class = "lineno" > 1457< / span > }< / div >
< div class = "line" > < a id = "l01458" name = "l01458" > < / a > < span class = "lineno" > 1458< / span > < / div >
< div class = "line" > < a id = "l01459" name = "l01459" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a066baaebb360523ba186215d7ec90365" > 1459< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a066baaebb360523ba186215d7ec90365" > OldPrev< / a > (int64_t node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01460" name = "l01460" > < / a > < span class = "lineno" > 1460< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (!< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a17bdf687f4bf47cb68ea163f28876608" > IsPathStart< / a > (node));< / div >
< div class = "line" > < a id = "l01461" name = "l01461" > < / a > < span class = "lineno" > 1461< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a0e580afd2c00b163cbb019ca661470f5" > OldInverseValue< / a > (node);< / div >
< div class = "line" > < a id = "l01462" name = "l01462" > < / a > < span class = "lineno" > 1462< / span > }< / div >
< div class = "line" > < a id = "l01463" name = "l01463" > < / a > < span class = "lineno" > 1463< / span > < / div >
< div class = "line" > < a id = "l01464" name = "l01464" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a15b6b1076d1c5441a135aaf2f458c9e6" > 1464< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a15b6b1076d1c5441a135aaf2f458c9e6" > OldPath< / a > (int64_t node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01465" name = "l01465" > < / a > < span class = "lineno" > 1465< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#ae56132578e8bc7a7eca4af4fd24fa966" > ignore_path_vars_< / a > ? 0LL : < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a79163ea8990864f185e87eabf1578cca" > OldValue< / a > (node + < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > );< / div >
< div class = "line" > < a id = "l01466" name = "l01466" > < / a > < span class = "lineno" > 1466< / span > }< / div >
< div class = "line" > < a id = "l01467" name = "l01467" > < / a > < span class = "lineno" > 1467< / span > < / div >
< div class = "line" > < a id = "l01470" name = "l01470" > < / a > < span class = "lineno" > 1470< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a625a8523af421e43b7ac500b934e7dbd" > MoveChain< / a > (int64_t before_chain, int64_t chain_end, int64_t destination);< / div >
< div class = "line" > < a id = "l01471" name = "l01471" > < / a > < span class = "lineno" > 1471< / span > < / div >
< div class = "line" > < a id = "l01474" name = "l01474" > < / a > < span class = "lineno" > 1474< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a753f1802e83fb21039b87a64a1769983" > ReverseChain< / a > (int64_t before_chain, int64_t after_chain,< / div >
< div class = "line" > < a id = "l01475" name = "l01475" > < / a > < span class = "lineno" > 1475< / span > int64_t* chain_last);< / div >
< div class = "line" > < a id = "l01476" name = "l01476" > < / a > < span class = "lineno" > 1476< / span > < / div >
< div class = "line" > < a id = "l01478" name = "l01478" > < / a > < span class = "lineno" > 1478< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a683f9daa3c8c8d6695ed277a470942f5" > MakeActive< / a > (int64_t node, int64_t destination);< / div >
< div class = "line" > < a id = "l01481" name = "l01481" > < / a > < span class = "lineno" > 1481< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#aff25e92fae946063c5a4a786e58e37a2" > MakeChainInactive< / a > (int64_t before_chain, int64_t chain_end);< / div >
< div class = "line" > < a id = "l01483" name = "l01483" > < / a > < span class = "lineno" > 1483< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab5ccf1d0572985fd266702a181b9cf8d" > SwapActiveAndInactive< / a > (int64_t active, int64_t inactive);< / div >
< div class = "line" > < a id = "l01484" name = "l01484" > < / a > < span class = "lineno" > 1484< / span > < / div >
< div class = "line" > < a id = "l01486" name = "l01486" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a968f3a82c5dbaba4f0725200b00ee97f" > 1486< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a968f3a82c5dbaba4f0725200b00ee97f" > SetNext< / a > (int64_t from, int64_t to, int64_t path) {< / div >
< div class = "line" > < a id = "l01487" name = "l01487" > < / a > < span class = "lineno" > 1487< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (from, < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > );< / div >
< div class = "line" > < a id = "l01488" name = "l01488" > < / a > < span class = "lineno" > 1488< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a20dd03e0437bf484e2ea321595c2e1cd" > SetValue< / a > (from, to);< / div >
< div class = "line" > < a id = "l01489" name = "l01489" > < / a > < span class = "lineno" > 1489< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a79ba95b5c45a4b1ce761cfac942c7e3b" > SetInverseValue< / a > (to, from);< / div >
< div class = "line" > < a id = "l01490" name = "l01490" > < / a > < span class = "lineno" > 1490< / span > < span class = "keywordflow" > if< / span > (!< a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#ae56132578e8bc7a7eca4af4fd24fa966" > ignore_path_vars_< / a > ) {< / div >
< div class = "line" > < a id = "l01491" name = "l01491" > < / a > < span class = "lineno" > 1491< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (from + < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > , < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ());< / div >
< div class = "line" > < a id = "l01492" name = "l01492" > < / a > < span class = "lineno" > 1492< / span > < a class = "code hl_function" href = "classoperations__research_1_1_var_local_search_operator.html#a20dd03e0437bf484e2ea321595c2e1cd" > SetValue< / a > (from + < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > , path);< / div >
< div class = "line" > < a id = "l01493" name = "l01493" > < / a > < span class = "lineno" > 1493< / span > }< / div >
< div class = "line" > < a id = "l01494" name = "l01494" > < / a > < span class = "lineno" > 1494< / span > }< / div >
< div class = "line" > < a id = "l01495" name = "l01495" > < / a > < span class = "lineno" > 1495< / span > < / div >
< div class = "line" > < a id = "l01498" name = "l01498" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a4f36c21ecd69ac0eda49cd44375e88b4" > 1498< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a4f36c21ecd69ac0eda49cd44375e88b4" > IsPathEnd< / a > (int64_t node)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > node > = < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > ; }< / div >
< div class = "line" > < a id = "l01499" name = "l01499" > < / a > < span class = "lineno" > 1499< / span > < / div >
< div class = "line" > < a id = "l01501" name = "l01501" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a17bdf687f4bf47cb68ea163f28876608" > 1501< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a17bdf687f4bf47cb68ea163f28876608" > IsPathStart< / a > (int64_t node)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_operator.html#a0e580afd2c00b163cbb019ca661470f5" > OldInverseValue< / a > (node) == -1; }< / div >
< div class = "line" > < a id = "l01502" name = "l01502" > < / a > < span class = "lineno" > 1502< / span > < / div >
< div class = "line" > < a id = "l01504" name = "l01504" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a03283bdc4a6447ff4882cb1e42662b00" > 1504< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a03283bdc4a6447ff4882cb1e42662b00" > IsInactive< / a > (int64_t node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01505" name = "l01505" > < / a > < span class = "lineno" > 1505< / span > < span class = "keywordflow" > return< / span > !< a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a4f36c21ecd69ac0eda49cd44375e88b4" > IsPathEnd< / a > (node) & & inactives_[node];< / div >
< div class = "line" > < a id = "l01506" name = "l01506" > < / a > < span class = "lineno" > 1506< / span > }< / div >
< div class = "line" > < a id = "l01507" name = "l01507" > < / a > < span class = "lineno" > 1507< / span > < / div >
< div class = "line" > < a id = "l01510" name = "l01510" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ae1c162cfc11069e25becbd53cdce7def" > 1510< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ae1c162cfc11069e25becbd53cdce7def" > InitPosition< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l01514" name = "l01514" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ab661b8d8259dac8444804d91809fbb0a" > 1514< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ab661b8d8259dac8444804d91809fbb0a" > ResetPosition< / a > () { just_started_ = < span class = "keyword" > true< / span > ; }< / div >
< div class = "line" > < a id = "l01515" name = "l01515" > < / a > < span class = "lineno" > 1515< / span > < / div >
< div class = "line" > < a id = "l01519" name = "l01519" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a23099e8dbce0e76642d5a904c5f910ce" > 1519< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a23099e8dbce0e76642d5a904c5f910ce" > AddAlternativeSet< / a > (< span class = "keyword" > const< / span > std::vector< int64_t> & alternative_set) {< / div >
< div class = "line" > < a id = "l01520" name = "l01520" > < / a > < span class = "lineno" > 1520< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > alternative = alternative_sets_.size();< / div >
< div class = "line" > < a id = "l01521" name = "l01521" > < / a > < span class = "lineno" > 1521< / span > < span class = "keywordflow" > for< / span > (int64_t node : alternative_set) {< / div >
< div class = "line" > < a id = "l01522" name = "l01522" > < / a > < span class = "lineno" > 1522< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae89df3243bbb8341130c7b3f44145ea0" > DCHECK_EQ< / a > (-1, alternative_index_[node]);< / div >
< div class = "line" > < a id = "l01523" name = "l01523" > < / a > < span class = "lineno" > 1523< / span > alternative_index_[node] = alternative;< / div >
< div class = "line" > < a id = "l01524" name = "l01524" > < / a > < span class = "lineno" > 1524< / span > }< / div >
< div class = "line" > < a id = "l01525" name = "l01525" > < / a > < span class = "lineno" > 1525< / span > alternative_sets_.push_back(alternative_set);< / div >
< div class = "line" > < a id = "l01526" name = "l01526" > < / a > < span class = "lineno" > 1526< / span > sibling_alternative_.push_back(-1);< / div >
< div class = "line" > < a id = "l01527" name = "l01527" > < / a > < span class = "lineno" > 1527< / span > < span class = "keywordflow" > return< / span > alternative;< / div >
< div class = "line" > < a id = "l01528" name = "l01528" > < / a > < span class = "lineno" > 1528< / span > }< / div >
< div class = "line" > < a id = "l01529" name = "l01529" > < / a > < span class = "lineno" > 1529< / span > < span class = "preprocessor" > #ifndef SWIG< / span > < / div >
< div class = "line" > < a id = "l01532" name = "l01532" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a97cd8657e86644c1fb1b3b9f12ddc596" > 1532< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a97cd8657e86644c1fb1b3b9f12ddc596" > AddPairAlternativeSets< / a > (< / div >
< div class = "line" > < a id = "l01533" name = "l01533" > < / a > < span class = "lineno" > 1533< / span > < span class = "keyword" > const< / span > std::vector< std::pair< std::vector< int64_t> , std::vector< int64_t> > > & < / div >
< div class = "line" > < a id = "l01534" name = "l01534" > < / a > < span class = "lineno" > 1534< / span > pair_alternative_sets) {< / div >
< div class = "line" > < a id = "l01535" name = "l01535" > < / a > < span class = "lineno" > 1535< / span > < span class = "keywordflow" > for< / span > (< span class = "keyword" > const< / span > < span class = "keyword" > auto< / span > & pair_alternative_set : pair_alternative_sets) {< / div >
< div class = "line" > < a id = "l01536" name = "l01536" > < / a > < span class = "lineno" > 1536< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > alternative = < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a23099e8dbce0e76642d5a904c5f910ce" > AddAlternativeSet< / a > (pair_alternative_set.first);< / div >
< div class = "line" > < a id = "l01537" name = "l01537" > < / a > < span class = "lineno" > 1537< / span > sibling_alternative_.back() = alternative + 1;< / div >
< div class = "line" > < a id = "l01538" name = "l01538" > < / a > < span class = "lineno" > 1538< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a23099e8dbce0e76642d5a904c5f910ce" > AddAlternativeSet< / a > (pair_alternative_set.second);< / div >
< div class = "line" > < a id = "l01539" name = "l01539" > < / a > < span class = "lineno" > 1539< / span > }< / div >
< div class = "line" > < a id = "l01540" name = "l01540" > < / a > < span class = "lineno" > 1540< / span > }< / div >
< div class = "line" > < a id = "l01541" name = "l01541" > < / a > < span class = "lineno" > 1541< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // SWIG< / span > < / div >
< div class = "line" > < a id = "l01543" name = "l01543" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a2123fcbe0cb3d64582bbc625d666cacd" > 1543< / a > < / span > < span class = "comment" > < / span > int64_t GetActiveInAlternativeSet(int alternative_index) const {< / div >
< div class = "line" > < a id = "l01544" name = "l01544" > < / a > < span class = "lineno" > 1544< / span > < span class = "keywordflow" > return< / span > alternative_index > = 0< / div >
< div class = "line" > < a id = "l01545" name = "l01545" > < / a > < span class = "lineno" > 1545< / span > ? active_in_alternative_set_[alternative_index]< / div >
< div class = "line" > < a id = "l01546" name = "l01546" > < / a > < span class = "lineno" > 1546< / span > : -1;< / div >
< div class = "line" > < a id = "l01547" name = "l01547" > < / a > < span class = "lineno" > 1547< / span > }< / div >
< div class = "line" > < a id = "l01549" name = "l01549" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a17be752616a53fcfe8d4b04babfe1632" > 1549< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#a17be752616a53fcfe8d4b04babfe1632" > GetActiveAlternativeNode< / a > (< span class = "keywordtype" > int< / span > node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01550" name = "l01550" > < / a > < span class = "lineno" > 1550< / span > < span class = "keywordflow" > return< / span > GetActiveInAlternativeSet(alternative_index_[node]);< / div >
< div class = "line" > < a id = "l01551" name = "l01551" > < / a > < span class = "lineno" > 1551< / span > }< / div >
< div class = "line" > < a id = "l01553" name = "l01553" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ac9d41c75de01039a11af9b5d3cecc37f" > 1553< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#ac9d41c75de01039a11af9b5d3cecc37f" > GetSiblingAlternativeIndex< / a > (< span class = "keywordtype" > int< / span > node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01554" name = "l01554" > < / a > < span class = "lineno" > 1554< / span > < span class = "keywordflow" > if< / span > (node > = alternative_index_.size()) < span class = "keywordflow" > return< / span > -1;< / div >
< div class = "line" > < a id = "l01555" name = "l01555" > < / a > < span class = "lineno" > 1555< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > alternative = alternative_index_[node];< / div >
< div class = "line" > < a id = "l01556" name = "l01556" > < / a > < span class = "lineno" > 1556< / span > < span class = "keywordflow" > return< / span > alternative > = 0 ? sibling_alternative_[alternative] : -1;< / div >
< div class = "line" > < a id = "l01557" name = "l01557" > < / a > < span class = "lineno" > 1557< / span > }< / div >
< div class = "line" > < a id = "l01560" name = "l01560" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#aa2ea96360ac4370b31fc72090b55e7cc" > 1560< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_path_operator.html#aa2ea96360ac4370b31fc72090b55e7cc" > GetActiveAlternativeSibling< / a > (< span class = "keywordtype" > int< / span > node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01561" name = "l01561" > < / a > < span class = "lineno" > 1561< / span > < span class = "keywordflow" > if< / span > (node > = alternative_index_.size()) < span class = "keywordflow" > return< / span > -1;< / div >
< div class = "line" > < a id = "l01562" name = "l01562" > < / a > < span class = "lineno" > 1562< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > alternative = alternative_index_[node];< / div >
< div class = "line" > < a id = "l01563" name = "l01563" > < / a > < span class = "lineno" > 1563< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > sibling_alternative =< / div >
< div class = "line" > < a id = "l01564" name = "l01564" > < / a > < span class = "lineno" > 1564< / span > alternative > = 0 ? sibling_alternative_[alternative] : -1;< / div >
< div class = "line" > < a id = "l01565" name = "l01565" > < / a > < span class = "lineno" > 1565< / span > < span class = "keywordflow" > return< / span > GetActiveInAlternativeSet(sibling_alternative);< / div >
< div class = "line" > < a id = "l01566" name = "l01566" > < / a > < span class = "lineno" > 1566< / span > }< / div >
< div class = "line" > < a id = "l01569" name = "l01569" > < / a > < span class = "lineno" > 1569< / span > < span class = "keywordtype" > bool< / span > CheckChainValidity(int64_t before_chain, int64_t chain_end,< / div >
< div class = "line" > < a id = "l01570" name = "l01570" > < / a > < span class = "lineno" > 1570< / span > int64_t exclude) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l01571" name = "l01571" > < / a > < span class = "lineno" > 1571< / span > < / div >
< div class = "line" > < a id = "l01572" name = "l01572" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > 1572< / a > < / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > number_of_nexts_< / a > ;< / div >
< div class = "line" > < a id = "l01573" name = "l01573" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ae56132578e8bc7a7eca4af4fd24fa966" > 1573< / a > < / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#ae56132578e8bc7a7eca4af4fd24fa966" > ignore_path_vars_< / a > ;< / div >
< div class = "line" > < a id = "l01574" name = "l01574" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#ac4e410910ad9361ed46221ecc6f0aa9b" > 1574< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#ac4e410910ad9361ed46221ecc6f0aa9b" > next_base_to_increment_< / a > ;< / div >
< div class = "line" > < a id = "l01575" name = "l01575" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#afd4107d44c9d70962fa429ecd6cc8312" > 1575< / a > < / span > < span class = "keywordtype" > int< / span > num_paths_ = 0;< / div >
< div class = "line" > < a id = "l01576" name = "l01576" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_operator.html#a932ef778eaff30030509ce65ce40ca38" > 1576< / a > < / span > std::vector< int64_t> < a class = "code hl_variable" href = "classoperations__research_1_1_path_operator.html#a932ef778eaff30030509ce65ce40ca38" > start_to_path_< / a > ;< / div >
< div class = "line" > < a id = "l01577" name = "l01577" > < / a > < span class = "lineno" > 1577< / span > < / div >
< div class = "line" > < a id = "l01578" name = "l01578" > < / a > < span class = "lineno" > 1578< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01579" name = "l01579" > < / a > < span class = "lineno" > 1579< / span > < span class = "keywordtype" > void< / span > OnStart() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01581" name = "l01581" > < / a > < span class = "lineno" > 1581< / span > < span class = "keywordtype" > bool< / span > OnSamePath(int64_t node1, int64_t node2) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l01582" name = "l01582" > < / a > < span class = "lineno" > 1582< / span > < / div >
< div class = "line" > < a id = "l01583" name = "l01583" > < / a > < span class = "lineno" > 1583< / span > < span class = "keywordtype" > bool< / span > CheckEnds()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01584" name = "l01584" > < / a > < span class = "lineno" > 1584< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > base_node_size = base_nodes_.size();< / div >
< div class = "line" > < a id = "l01585" name = "l01585" > < / a > < span class = "lineno" > 1585< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = base_node_size - 1; i > = 0; --i) {< / div >
< div class = "line" > < a id = "l01586" name = "l01586" > < / a > < span class = "lineno" > 1586< / span > < span class = "keywordflow" > if< / span > (base_nodes_[i] != end_nodes_[i]) {< / div >
< div class = "line" > < a id = "l01587" name = "l01587" > < / a > < span class = "lineno" > 1587< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l01588" name = "l01588" > < / a > < span class = "lineno" > 1588< / span > }< / div >
< div class = "line" > < a id = "l01589" name = "l01589" > < / a > < span class = "lineno" > 1589< / span > }< / div >
< div class = "line" > < a id = "l01590" name = "l01590" > < / a > < span class = "lineno" > 1590< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l01591" name = "l01591" > < / a > < span class = "lineno" > 1591< / span > }< / div >
< div class = "line" > < a id = "l01592" name = "l01592" > < / a > < span class = "lineno" > 1592< / span > < span class = "keywordtype" > bool< / span > IncrementPosition();< / div >
< div class = "line" > < a id = "l01593" name = "l01593" > < / a > < span class = "lineno" > 1593< / span > < span class = "keywordtype" > void< / span > InitializePathStarts();< / div >
< div class = "line" > < a id = "l01594" name = "l01594" > < / a > < span class = "lineno" > 1594< / span > < span class = "keywordtype" > void< / span > InitializeInactives();< / div >
< div class = "line" > < a id = "l01595" name = "l01595" > < / a > < span class = "lineno" > 1595< / span > < span class = "keywordtype" > void< / span > InitializeBaseNodes();< / div >
< div class = "line" > < a id = "l01596" name = "l01596" > < / a > < span class = "lineno" > 1596< / span > < span class = "keywordtype" > void< / span > InitializeAlternatives();< / div >
< div class = "line" > < a id = "l01597" name = "l01597" > < / a > < span class = "lineno" > 1597< / span > < span class = "keywordtype" > void< / span > Synchronize();< / div >
< div class = "line" > < a id = "l01598" name = "l01598" > < / a > < span class = "lineno" > 1598< / span > < / div >
< div class = "line" > < a id = "l01599" name = "l01599" > < / a > < span class = "lineno" > 1599< / span > std::vector< int> base_nodes_;< / div >
< div class = "line" > < a id = "l01600" name = "l01600" > < / a > < span class = "lineno" > 1600< / span > std::vector< int> base_alternatives_;< / div >
< div class = "line" > < a id = "l01601" name = "l01601" > < / a > < span class = "lineno" > 1601< / span > std::vector< int> base_sibling_alternatives_;< / div >
< div class = "line" > < a id = "l01602" name = "l01602" > < / a > < span class = "lineno" > 1602< / span > std::vector< int> end_nodes_;< / div >
< div class = "line" > < a id = "l01603" name = "l01603" > < / a > < span class = "lineno" > 1603< / span > std::vector< int> base_paths_;< / div >
< div class = "line" > < a id = "l01604" name = "l01604" > < / a > < span class = "lineno" > 1604< / span > std::vector< int64_t> path_starts_;< / div >
< div class = "line" > < a id = "l01605" name = "l01605" > < / a > < span class = "lineno" > 1605< / span > std::vector< bool> inactives_;< / div >
< div class = "line" > < a id = "l01606" name = "l01606" > < / a > < span class = "lineno" > 1606< / span > < span class = "keywordtype" > bool< / span > just_started_;< / div >
< div class = "line" > < a id = "l01607" name = "l01607" > < / a > < span class = "lineno" > 1607< / span > < span class = "keywordtype" > bool< / span > first_start_;< / div >
< div class = "line" > < a id = "l01608" name = "l01608" > < / a > < span class = "lineno" > 1608< / span > IterationParameters iteration_parameters_;< / div >
< div class = "line" > < a id = "l01609" name = "l01609" > < / a > < span class = "lineno" > 1609< / span > < span class = "keywordtype" > bool< / span > optimal_paths_enabled_;< / div >
< div class = "line" > < a id = "l01610" name = "l01610" > < / a > < span class = "lineno" > 1610< / span > std::vector< int> path_basis_;< / div >
< div class = "line" > < a id = "l01611" name = "l01611" > < / a > < span class = "lineno" > 1611< / span > std::vector< bool> optimal_paths_;< / div >
< div class = "line" > < a id = "l01613" name = "l01613" > < / a > < span class = "lineno" > 1613< / span > < span class = "preprocessor" > #ifndef SWIG< / span > < / div >
< div class = "line" > < a id = "l01614" name = "l01614" > < / a > < span class = "lineno" > 1614< / span > std::vector< std::vector< int64_t> > alternative_sets_;< / div >
< div class = "line" > < a id = "l01615" name = "l01615" > < / a > < span class = "lineno" > 1615< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // SWIG< / span > < / div >
< div class = "line" > < a id = "l01616" name = "l01616" > < / a > < span class = "lineno" > 1616< / span > std::vector< int> alternative_index_;< / div >
< div class = "line" > < a id = "l01617" name = "l01617" > < / a > < span class = "lineno" > 1617< / span > std::vector< int64_t> active_in_alternative_set_;< / div >
< div class = "line" > < a id = "l01618" name = "l01618" > < / a > < span class = "lineno" > 1618< / span > std::vector< int> sibling_alternative_;< / div >
< div class = "line" > < a id = "l01619" name = "l01619" > < / a > < span class = "lineno" > 1619< / span > };< / div >
< div class = "line" > < a id = "l01620" name = "l01620" > < / a > < span class = "lineno" > 1620< / span > < / div >
< div class = "line" > < a id = "l01622" name = "l01622" > < / a > < span class = "lineno" > 1622< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l01623" name = "l01623" > < / a > < span class = "lineno" > 1623< / span > LocalSearchOperator* < a class = "code hl_function" href = "namespaceoperations__research.html#a1988908f406c46ceaed7911f83aef59c" > MakeLocalSearchOperator< / a > (< / div >
< div class = "line" > < a id = "l01624" name = "l01624" > < / a > < span class = "lineno" > 1624< / span > Solver* solver, < span class = "keyword" > const< / span > std::vector< IntVar*> & vars,< / div >
< div class = "line" > < a id = "l01625" name = "l01625" > < / a > < span class = "lineno" > 1625< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & secondary_vars,< / div >
< div class = "line" > < a id = "l01626" name = "l01626" > < / a > < span class = "lineno" > 1626< / span > std::function< < span class = "keywordtype" > int< / span > (int64_t)> start_empty_path_class);< / div >
< div class = "line" > < a id = "l01627" name = "l01627" > < / a > < span class = "lineno" > 1627< / span > < / div >
< div class = "line" > < a id = "l01642" name = "l01642" > < / a > < span class = "lineno" > 1642< / span > < / div >
< div class = "line" > < a id = "l01643" name = "l01643" > < / a > < span class = "lineno" > 1643< / span > < span class = "preprocessor" > #if !defined(SWIG)< / span > < / div >
< div class = "line" > < a id = "l01644" name = "l01644" > < / a > < span class = "lineno" > 1644< / span > < span class = "comment" > // A LocalSearchState is a container for variables with bounds that can be< / span > < / div >
< div class = "line" > < a id = "l01645" name = "l01645" > < / a > < span class = "lineno" > 1645< / span > < span class = "comment" > // relaxed and tightened, saved and restored. It represents the solution state< / span > < / div >
< div class = "line" > < a id = "l01646" name = "l01646" > < / a > < span class = "lineno" > 1646< / span > < span class = "comment" > // of a local search engine, and allows it to go from solution to solution by< / span > < / div >
< div class = "line" > < a id = "l01647" name = "l01647" > < / a > < span class = "lineno" > 1647< / span > < span class = "comment" > // relaxing some variables to form a new subproblem, then tightening those< / span > < / div >
< div class = "line" > < a id = "l01648" name = "l01648" > < / a > < span class = "lineno" > 1648< / span > < span class = "comment" > // variables to move to a new solution representation. That state may be saved< / span > < / div >
< div class = "line" > < a id = "l01649" name = "l01649" > < / a > < span class = "lineno" > 1649< / span > < span class = "comment" > // to an internal copy, or reverted to the last saved internal copy.< / span > < / div >
< div class = "line" > < a id = "l01650" name = "l01650" > < / a > < span class = "lineno" > 1650< / span > < span class = "comment" > // Relaxing a variable returns its bounds to their initial state.< / span > < / div >
< div class = "line" > < a id = "l01651" name = "l01651" > < / a > < span class = "lineno" > 1651< / span > < span class = "comment" > // Tightening a variable' s bounds may make its min larger than its max,< / span > < / div >
< div class = "line" > < a id = "l01652" name = "l01652" > < / a > < span class = "lineno" > 1652< / span > < span class = "comment" > // in that case, the tightening function will return false, and the state will< / span > < / div >
< div class = "line" > < a id = "l01653" name = "l01653" > < / a > < span class = "lineno" > 1653< / span > < span class = "comment" > // be marked as invalid. No other operations than Revert() can be called on an< / span > < / div >
< div class = "line" > < a id = "l01654" name = "l01654" > < / a > < span class = "lineno" > 1654< / span > < span class = "comment" > // invalid state: in particular, an invalid state cannot be saved.< / span > < / div >
< div class = "line" > < a id = "l01655" name = "l01655" > < / a > < span class = "lineno" > 1655< / span > < span class = "keyword" > class < / span > LocalSearchVariable;< / div >
< div class = "line" > < a id = "l01656" name = "l01656" > < / a > < span class = "lineno" > 1656< / span > < / div >
< div class = "line" > < a id = "l01657" name = "l01657" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_state.html" > 1657< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_state.html" > LocalSearchState< / a > {< / div >
< div class = "line" > < a id = "l01658" name = "l01658" > < / a > < span class = "lineno" > 1658< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01659" name = "l01659" > < / a > < span class = "lineno" > 1659< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_variable.html" > LocalSearchVariable< / a > AddVariable(int64_t initial_min, int64_t initial_max);< / div >
< div class = "line" > < a id = "l01660" name = "l01660" > < / a > < span class = "lineno" > 1660< / span > < span class = "keywordtype" > void< / span > Commit();< / div >
< div class = "line" > < a id = "l01661" name = "l01661" > < / a > < span class = "lineno" > 1661< / span > < span class = "keywordtype" > void< / span > Revert();< / div >
< div class = "line" > < a id = "l01662" name = "l01662" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_state.html#a1e53a18fec3e806c796aecc60bb1cefe" > 1662< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_state.html#a1e53a18fec3e806c796aecc60bb1cefe" > StateIsValid< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > state_is_valid_; }< / div >
< div class = "line" > < a id = "l01663" name = "l01663" > < / a > < span class = "lineno" > 1663< / span > < / div >
< div class = "line" > < a id = "l01664" name = "l01664" > < / a > < span class = "lineno" > 1664< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01665" name = "l01665" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_state.html#a8f5c510ca9b60acf27d2cd564c723ff7" > 1665< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_variable.html" > LocalSearchVariable< / a > ;< / div >
< div class = "line" > < a id = "l01666" name = "l01666" > < / a > < span class = "lineno" > 1666< / span > < / div >
< div class = "line" > < a id = "l01667" name = "l01667" > < / a > < span class = "lineno" > 1667< / span > < span class = "keyword" > struct < / span > Bounds {< / div >
< div class = "line" > < a id = "l01668" name = "l01668" > < / a > < span class = "lineno" > 1668< / span > int64_t < a class = "code hl_variable" href = "alldiff__cst_8cc.html#ad10edae0a852d72fb76afb1c77735045" > min< / a > ;< / div >
< div class = "line" > < a id = "l01669" name = "l01669" > < / a > < span class = "lineno" > 1669< / span > int64_t < a class = "code hl_variable" href = "alldiff__cst_8cc.html#a26e6db9bcc64b584051ecc28171ed11f" > max< / a > ;< / div >
< div class = "line" > < a id = "l01670" name = "l01670" > < / a > < span class = "lineno" > 1670< / span > };< / div >
< div class = "line" > < a id = "l01671" name = "l01671" > < / a > < span class = "lineno" > 1671< / span > < / div >
< div class = "line" > < a id = "l01672" name = "l01672" > < / a > < span class = "lineno" > 1672< / span > < span class = "keywordtype" > void< / span > RelaxVariableBounds(< span class = "keywordtype" > int< / span > variable_index);< / div >
< div class = "line" > < a id = "l01673" name = "l01673" > < / a > < span class = "lineno" > 1673< / span > < span class = "keywordtype" > bool< / span > TightenVariableMin(< span class = "keywordtype" > int< / span > variable_index, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l01674" name = "l01674" > < / a > < span class = "lineno" > 1674< / span > < span class = "keywordtype" > bool< / span > TightenVariableMax(< span class = "keywordtype" > int< / span > variable_index, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l01675" name = "l01675" > < / a > < span class = "lineno" > 1675< / span > int64_t VariableMin(< span class = "keywordtype" > int< / span > variable_index) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l01676" name = "l01676" > < / a > < span class = "lineno" > 1676< / span > int64_t VariableMax(< span class = "keywordtype" > int< / span > variable_index) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l01677" name = "l01677" > < / a > < span class = "lineno" > 1677< / span > < / div >
< div class = "line" > < a id = "l01678" name = "l01678" > < / a > < span class = "lineno" > 1678< / span > std::vector< Bounds> initial_variable_bounds_;< / div >
< div class = "line" > < a id = "l01679" name = "l01679" > < / a > < span class = "lineno" > 1679< / span > std::vector< Bounds> variable_bounds_;< / div >
< div class = "line" > < a id = "l01680" name = "l01680" > < / a > < span class = "lineno" > 1680< / span > std::vector< std::pair< Bounds, int> > saved_variable_bounds_trail_;< / div >
< div class = "line" > < a id = "l01681" name = "l01681" > < / a > < span class = "lineno" > 1681< / span > std::vector< bool> variable_is_relaxed_;< / div >
< div class = "line" > < a id = "l01682" name = "l01682" > < / a > < span class = "lineno" > 1682< / span > < span class = "keywordtype" > bool< / span > state_is_valid_ = < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l01683" name = "l01683" > < / a > < span class = "lineno" > 1683< / span > };< / div >
< div class = "line" > < a id = "l01684" name = "l01684" > < / a > < span class = "lineno" > 1684< / span > < / div >
< div class = "line" > < a id = "l01685" name = "l01685" > < / a > < span class = "lineno" > 1685< / span > < span class = "comment" > // A LocalSearchVariable can only be created by a LocalSearchState, then it is< / span > < / div >
< div class = "line" > < a id = "l01686" name = "l01686" > < / a > < span class = "lineno" > 1686< / span > < span class = "comment" > // meant to be passed by copy. If at some point the duplication of< / span > < / div >
< div class = "line" > < a id = "l01687" name = "l01687" > < / a > < span class = "lineno" > 1687< / span > < span class = "comment" > // LocalSearchState pointers is too expensive, we could switch to index only,< / span > < / div >
< div class = "line" > < a id = "l01688" name = "l01688" > < / a > < span class = "lineno" > 1688< / span > < span class = "comment" > // and the user would have to know the relevant state. The present setup allows< / span > < / div >
< div class = "line" > < a id = "l01689" name = "l01689" > < / a > < span class = "lineno" > 1689< / span > < span class = "comment" > // to ensure that variable users will not misuse the state.< / span > < / div >
< div class = "line" > < a id = "l01690" name = "l01690" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_variable.html" > 1690< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_variable.html" > LocalSearchVariable< / a > {< / div >
< div class = "line" > < a id = "l01691" name = "l01691" > < / a > < span class = "lineno" > 1691< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01692" name = "l01692" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_variable.html#a8cf21a67f7d81a800ff912239bb2db64" > 1692< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_local_search_variable.html#a8cf21a67f7d81a800ff912239bb2db64" > Min< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > state_-> VariableMin(variable_index_); }< / div >
< div class = "line" > < a id = "l01693" name = "l01693" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_variable.html#aa74ea8cd1b0767659f704b482d07c103" > 1693< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_local_search_variable.html#aa74ea8cd1b0767659f704b482d07c103" > Max< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > state_-> VariableMax(variable_index_); }< / div >
< div class = "line" > < a id = "l01694" name = "l01694" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_variable.html#a5cf7db3228f904353803dec1e14c2ae8" > 1694< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_variable.html#a5cf7db3228f904353803dec1e14c2ae8" > SetMin< / a > (int64_t new_min) {< / div >
< div class = "line" > < a id = "l01695" name = "l01695" > < / a > < span class = "lineno" > 1695< / span > < span class = "keywordflow" > return< / span > state_-> TightenVariableMin(variable_index_, new_min);< / div >
< div class = "line" > < a id = "l01696" name = "l01696" > < / a > < span class = "lineno" > 1696< / span > }< / div >
< div class = "line" > < a id = "l01697" name = "l01697" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_variable.html#a4114530e159c28c6b4b445f3e47bbc25" > 1697< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_variable.html#a4114530e159c28c6b4b445f3e47bbc25" > SetMax< / a > (int64_t new_max) {< / div >
< div class = "line" > < a id = "l01698" name = "l01698" > < / a > < span class = "lineno" > 1698< / span > < span class = "keywordflow" > return< / span > state_-> TightenVariableMax(variable_index_, new_max);< / div >
< div class = "line" > < a id = "l01699" name = "l01699" > < / a > < span class = "lineno" > 1699< / span > }< / div >
< div class = "line" > < a id = "l01700" name = "l01700" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_variable.html#ae52e3ea7ba54fa164737b531605b3802" > 1700< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_variable.html#ae52e3ea7ba54fa164737b531605b3802" > Relax< / a > () { state_-> RelaxVariableBounds(variable_index_); }< / div >
< div class = "line" > < a id = "l01701" name = "l01701" > < / a > < span class = "lineno" > 1701< / span > < / div >
< div class = "line" > < a id = "l01702" name = "l01702" > < / a > < span class = "lineno" > 1702< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01703" name = "l01703" > < / a > < span class = "lineno" > 1703< / span > < span class = "comment" > // Only LocalSearchState can construct LocalSearchVariables.< / span > < / div >
< div class = "line" > < a id = "l01704" name = "l01704" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_variable.html#aff1f964f65624725a91c1536c7af0320" > 1704< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_state.html" > LocalSearchState< / a > ;< / div >
< div class = "line" > < a id = "l01705" name = "l01705" > < / a > < span class = "lineno" > 1705< / span > < / div >
< div class = "line" > < a id = "l01706" name = "l01706" > < / a > < span class = "lineno" > 1706< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_variable.html" > LocalSearchVariable< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_local_search_state.html" > LocalSearchState< / a > * state, < span class = "keywordtype" > int< / span > variable_index)< / div >
< div class = "line" > < a id = "l01707" name = "l01707" > < / a > < span class = "lineno" > 1707< / span > : state_(state), variable_index_(variable_index) {}< / div >
< div class = "line" > < a id = "l01708" name = "l01708" > < / a > < span class = "lineno" > 1708< / span > < / div >
< div class = "line" > < a id = "l01709" name = "l01709" > < / a > < span class = "lineno" > 1709< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_state.html" > LocalSearchState< / a > * < span class = "keyword" > const< / span > state_;< / div >
< div class = "line" > < a id = "l01710" name = "l01710" > < / a > < span class = "lineno" > 1710< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > variable_index_;< / div >
< div class = "line" > < a id = "l01711" name = "l01711" > < / a > < span class = "lineno" > 1711< / span > };< / div >
< div class = "line" > < a id = "l01712" name = "l01712" > < / a > < span class = "lineno" > 1712< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // !defined(SWIG)< / span > < / div >
< div class = "line" > < a id = "l01713" name = "l01713" > < / a > < span class = "lineno" > 1713< / span > < / div >
< div class = "line" > < a id = "l01730" name = "l01730" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html" > 1730< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_base_object.html" > BaseObject< / a > {< / div >
< div class = "line" > < a id = "l01731" name = "l01731" > < / a > < span class = "lineno" > 1731< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01734" name = "l01734" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#a683280a81651f9073086324eb6d0cee9" > 1734< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#a683280a81651f9073086324eb6d0cee9" > Relax< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta) {}< / div >
< div class = "line" > < a id = "l01736" name = "l01736" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#abfb57ca737847644064b3accdddbc8ba" > 1736< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#abfb57ca737847644064b3accdddbc8ba" > Commit< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta) {}< / div >
< div class = "line" > < a id = "l01737" name = "l01737" > < / a > < span class = "lineno" > 1737< / span > < / div >
< div class = "line" > < a id = "l01747" name = "l01747" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#a9f206932241656bf51d072480284ec9a" > 1747< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#a9f206932241656bf51d072480284ec9a" > Accept< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta,< / div >
< div class = "line" > < a id = "l01748" name = "l01748" > < / a > < span class = "lineno" > 1748< / span > int64_t objective_min, int64_t objective_max) = 0;< / div >
< div class = "line" > < a id = "l01749" name = "l01749" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#aa21d5f9b4adc94167e3a466095d82fd5" > 1749< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#aa21d5f9b4adc94167e3a466095d82fd5" > IsIncremental< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ; }< / div >
< div class = "line" > < a id = "l01750" name = "l01750" > < / a > < span class = "lineno" > 1750< / span > < / div >
< div class = "line" > < a id = "l01756" name = "l01756" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#a014f20f582a46468dff392fcf77aa55c" > 1756< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#a014f20f582a46468dff392fcf77aa55c" > Synchronize< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment,< / div >
< div class = "line" > < a id = "l01757" name = "l01757" > < / a > < span class = "lineno" > 1757< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01759" name = "l01759" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#abd469dc354c620c06a2f7b45df1abc39" > 1759< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#abd469dc354c620c06a2f7b45df1abc39" > Revert< / a > () {}< / div >
< div class = "line" > < a id = "l01760" name = "l01760" > < / a > < span class = "lineno" > 1760< / span > < / div >
< div class = "line" > < a id = "l01762" name = "l01762" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#a4c4ba0ffe635d14b93794268bd8e5995" > 1762< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#a4c4ba0ffe635d14b93794268bd8e5995" > Reset< / a > () {}< / div >
< div class = "line" > < a id = "l01763" name = "l01763" > < / a > < span class = "lineno" > 1763< / span > < / div >
< div class = "line" > < a id = "l01765" name = "l01765" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#abbc1e9f86296b06847f28247b420c376" > 1765< / a > < / span > < span class = "keyword" > virtual< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#abbc1e9f86296b06847f28247b420c376" > GetSynchronizedObjectiveValue< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > 0LL; }< / div >
< div class = "line" > < a id = "l01767" name = "l01767" > < / a > < span class = "lineno" > 1767< / span > < span class = "comment" > // If the last Accept() call returned false, returns an undefined value.< / span > < / div >
< div class = "line" > < a id = "l01768" name = "l01768" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter.html#a4551beb12e80737f9c1d110cefa2f342" > 1768< / a > < / span > < span class = "keyword" > virtual< / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter.html#a4551beb12e80737f9c1d110cefa2f342" > GetAcceptedObjectiveValue< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > 0LL; }< / div >
< div class = "line" > < a id = "l01769" name = "l01769" > < / a > < span class = "lineno" > 1769< / span > };< / div >
< div class = "line" > < a id = "l01770" name = "l01770" > < / a > < span class = "lineno" > 1770< / span > < / div >
< div class = "line" > < a id = "l01774" name = "l01774" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter_manager.html" > 1774< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter_manager.html" > LocalSearchFilterManager< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_base_object.html" > BaseObject< / a > {< / div >
< div class = "line" > < a id = "l01775" name = "l01775" > < / a > < span class = "lineno" > 1775< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01776" name = "l01776" > < / a > < span class = "lineno" > 1776< / span > < span class = "comment" > // This class is responsible for calling filters methods in a correct order.< / span > < / div >
< div class = "line" > < a id = "l01777" name = "l01777" > < / a > < span class = "lineno" > 1777< / span > < span class = "comment" > // For now, an order is specified explicitly by the user.< / span > < / div >
< div class = "line" > < a id = "l01778" name = "l01778" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter_manager.html#a448820cc5c3ca1a3f6ef0357404d9ecc" > 1778< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_local_search_filter_manager.html#a448820cc5c3ca1a3f6ef0357404d9ecc" > FilterEventType< / a > { kAccept, kRelax };< / div >
< div class = "line" > < a id = "l01779" name = "l01779" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html" > 1779< / a > < / span > < span class = "keyword" > struct < / span > < a class = "code hl_struct" href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html" > FilterEvent< / a > {< / div >
< div class = "line" > < a id = "l01780" name = "l01780" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html#a711d428ff2c91eab3c8d7b73ddd14d45" > 1780< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > * < a class = "code hl_variable" href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html#a711d428ff2c91eab3c8d7b73ddd14d45" > filter< / a > ;< / div >
< div class = "line" > < a id = "l01781" name = "l01781" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html#afcbb97d8ff7afc40721ca14bd01b19c8" > 1781< / a > < / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_local_search_filter_manager.html#a448820cc5c3ca1a3f6ef0357404d9ecc" > FilterEventType< / a > < a class = "code hl_variable" href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html#afcbb97d8ff7afc40721ca14bd01b19c8" > event_type< / a > ;< / div >
< div class = "line" > < a id = "l01782" name = "l01782" > < / a > < span class = "lineno" > 1782< / span > };< / div >
< div class = "line" > < a id = "l01783" name = "l01783" > < / a > < span class = "lineno" > 1783< / span > < / div >
< div class = "line" > < a id = "l01784" name = "l01784" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter_manager.html#aed804747c45a7e1caf81461f9e45dd91" > 1784< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter_manager.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l01785" name = "l01785" > < / a > < span class = "lineno" > 1785< / span > < span class = "keywordflow" > return< / span > < span class = "stringliteral" > " LocalSearchFilterManager" < / span > ;< / div >
< div class = "line" > < a id = "l01786" name = "l01786" > < / a > < span class = "lineno" > 1786< / span > }< / div >
< div class = "line" > < a id = "l01787" name = "l01787" > < / a > < span class = "lineno" > 1787< / span > < span class = "comment" > // Builds a manager that calls filter methods using an explicit ordering.< / span > < / div >
< div class = "line" > < a id = "l01788" name = "l01788" > < / a > < span class = "lineno" > 1788< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter_manager.html" > LocalSearchFilterManager< / a > (std::vector< FilterEvent> filter_events);< / div >
< div class = "line" > < a id = "l01789" name = "l01789" > < / a > < span class = "lineno" > 1789< / span > < span class = "comment" > // Builds a manager that calls filter methods using the following ordering:< / span > < / div >
< div class = "line" > < a id = "l01790" name = "l01790" > < / a > < span class = "lineno" > 1790< / span > < span class = "comment" > // first Relax() in vector order, then Accept() in vector order.< / span > < / div >
< div class = "line" > < a id = "l01791" name = "l01791" > < / a > < span class = "lineno" > 1791< / span > < span class = "comment" > // Note that some filters might appear only once, if their Relax() or Accept()< / span > < / div >
< div class = "line" > < a id = "l01792" name = "l01792" > < / a > < span class = "lineno" > 1792< / span > < span class = "comment" > // are trivial.< / span > < / div >
< div class = "line" > < a id = "l01793" name = "l01793" > < / a > < span class = "lineno" > 1793< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter_manager.html" > LocalSearchFilterManager< / a > (std::vector< LocalSearchFilter*> filters);< / div >
< div class = "line" > < a id = "l01794" name = "l01794" > < / a > < span class = "lineno" > 1794< / span > < / div >
< div class = "line" > < a id = "l01795" name = "l01795" > < / a > < span class = "lineno" > 1795< / span > < span class = "comment" > // Calls Revert() of filters, in reverse order of Relax events.< / span > < / div >
< div class = "line" > < a id = "l01796" name = "l01796" > < / a > < span class = "lineno" > 1796< / span > < span class = "keywordtype" > void< / span > Revert();< / div >
< div class = "line" > < a id = "l01800" name = "l01800" > < / a > < span class = "lineno" > 1800< / span > < span class = "keywordtype" > bool< / span > Accept(< a class = "code hl_class" href = "classoperations__research_1_1_local_search_monitor.html" > LocalSearchMonitor< / a > * < span class = "keyword" > const< / span > monitor, < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > ,< / div >
< div class = "line" > < a id = "l01801" name = "l01801" > < / a > < span class = "lineno" > 1801< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta, int64_t objective_min,< / div >
< div class = "line" > < a id = "l01802" name = "l01802" > < / a > < span class = "lineno" > 1802< / span > int64_t objective_max);< / div >
< div class = "line" > < a id = "l01804" name = "l01804" > < / a > < span class = "lineno" > 1804< / span > < span class = "keywordtype" > void< / span > Synchronize(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment, < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > );< / div >
< div class = "line" > < a id = "l01805" name = "l01805" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter_manager.html#a1d06d57955f55158e291e83a99d4361b" > 1805< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter_manager.html#a1d06d57955f55158e291e83a99d4361b" > GetSynchronizedObjectiveValue< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > synchronized_value_; }< / div >
< div class = "line" > < a id = "l01806" name = "l01806" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_filter_manager.html#a16e0093badb54c2c26a272d6f245155e" > 1806< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_local_search_filter_manager.html#a16e0093badb54c2c26a272d6f245155e" > GetAcceptedObjectiveValue< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > accepted_value_; }< / div >
< div class = "line" > < a id = "l01807" name = "l01807" > < / a > < span class = "lineno" > 1807< / span > < / div >
< div class = "line" > < a id = "l01808" name = "l01808" > < / a > < span class = "lineno" > 1808< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01809" name = "l01809" > < / a > < span class = "lineno" > 1809< / span > < span class = "keywordtype" > void< / span > InitializeForcedEvents();< / div >
< div class = "line" > < a id = "l01810" name = "l01810" > < / a > < span class = "lineno" > 1810< / span > < / div >
< div class = "line" > < a id = "l01811" name = "l01811" > < / a > < span class = "lineno" > 1811< / span > std::vector< FilterEvent> filter_events_;< / div >
< div class = "line" > < a id = "l01812" name = "l01812" > < / a > < span class = "lineno" > 1812< / span > < span class = "keywordtype" > int< / span > last_event_called_ = -1;< / div >
< div class = "line" > < a id = "l01813" name = "l01813" > < / a > < span class = "lineno" > 1813< / span > < span class = "comment" > // If a filter is incremental, its Relax() and Accept() must be called for< / span > < / div >
< div class = "line" > < a id = "l01814" name = "l01814" > < / a > < span class = "lineno" > 1814< / span > < span class = "comment" > // every candidate, even if a previous Accept() rejected it.< / span > < / div >
< div class = "line" > < a id = "l01815" name = "l01815" > < / a > < span class = "lineno" > 1815< / span > < span class = "comment" > // To ensure that those filters have consistent inputs, all intermediate< / span > < / div >
< div class = "line" > < a id = "l01816" name = "l01816" > < / a > < span class = "lineno" > 1816< / span > < span class = "comment" > // Relax events are also triggered. All those events are called ' forced' .< / span > < / div >
< div class = "line" > < a id = "l01817" name = "l01817" > < / a > < span class = "lineno" > 1817< / span > std::vector< int> next_forced_events_;< / div >
< div class = "line" > < a id = "l01818" name = "l01818" > < / a > < span class = "lineno" > 1818< / span > int64_t synchronized_value_;< / div >
< div class = "line" > < a id = "l01819" name = "l01819" > < / a > < span class = "lineno" > 1819< / span > int64_t accepted_value_;< / div >
< div class = "line" > < a id = "l01820" name = "l01820" > < / a > < span class = "lineno" > 1820< / span > };< / div >
< div class = "line" > < a id = "l01821" name = "l01821" > < / a > < span class = "lineno" > 1821< / span > < / div >
< div class = "line" > < a id = "l01822" name = "l01822" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_filter.html" > 1822< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_filter.html" > IntVarLocalSearchFilter< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > {< / div >
< div class = "line" > < a id = "l01823" name = "l01823" > < / a > < span class = "lineno" > 1823< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01824" name = "l01824" > < / a > < span class = "lineno" > 1824< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_filter.html" > IntVarLocalSearchFilter< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars);< / div >
< div class = "line" > < a id = "l01825" name = "l01825" > < / a > < span class = "lineno" > 1825< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_local_search_filter.html" > ~IntVarLocalSearchFilter< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01828" name = "l01828" > < / a > < span class = "lineno" > 1828< / span > < span class = "keywordtype" > void< / span > Synchronize(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment,< / div >
< div class = "line" > < a id = "l01829" name = "l01829" > < / a > < span class = "lineno" > 1829< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > ) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01830" name = "l01830" > < / a > < span class = "lineno" > 1830< / span > < / div >
< div class = "line" > < a id = "l01831" name = "l01831" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_filter.html#a8aee4c2eced4f3924981864dffcb9f4b" > 1831< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_filter.html#a8aee4c2eced4f3924981864dffcb9f4b" > FindIndex< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t* < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01832" name = "l01832" > < / a > < span class = "lineno" > 1832< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > != < span class = "keyword" > nullptr< / span > );< / div >
< div class = "line" > < a id = "l01833" name = "l01833" > < / a > < span class = "lineno" > 1833< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > var_index = < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > -> index();< / div >
< div class = "line" > < a id = "l01834" name = "l01834" > < / a > < span class = "lineno" > 1834< / span > *< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > = (var_index < var_index_to_index_.size())< / div >
< div class = "line" > < a id = "l01835" name = "l01835" > < / a > < span class = "lineno" > 1835< / span > ? var_index_to_index_[var_index]< / div >
< div class = "line" > < a id = "l01836" name = "l01836" > < / a > < span class = "lineno" > 1836< / span > : < a class = "code hl_variable" href = "namespaceoperations__research.html#adf85b9c9e168660e5f36d735d88f3955" > kUnassigned< / a > ;< / div >
< div class = "line" > < a id = "l01837" name = "l01837" > < / a > < span class = "lineno" > 1837< / span > < span class = "keywordflow" > return< / span > *< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > != < a class = "code hl_variable" href = "namespaceoperations__research.html#adf85b9c9e168660e5f36d735d88f3955" > kUnassigned< / a > ;< / div >
< div class = "line" > < a id = "l01838" name = "l01838" > < / a > < span class = "lineno" > 1838< / span > }< / div >
< div class = "line" > < a id = "l01839" name = "l01839" > < / a > < span class = "lineno" > 1839< / span > < / div >
< div class = "line" > < a id = "l01841" name = "l01841" > < / a > < span class = "lineno" > 1841< / span > < span class = "keywordtype" > void< / span > AddVars(< span class = "keyword" > const< / span > std::vector< IntVar*> & vars);< / div >
< div class = "line" > < a id = "l01842" name = "l01842" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_filter.html#a24926108b770033792d015cb86aeffb3" > 1842< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_filter.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "alldiff__cst_8cc.html#a151248525a9e07eb3e6e60ea1c4995eb" > vars_< / a > .size(); }< / div >
< div class = "line" > < a id = "l01843" name = "l01843" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_filter.html#a6de77240042f2131a749284738dacf39" > 1843< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_filter.html#a6de77240042f2131a749284738dacf39" > Var< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "alldiff__cst_8cc.html#a151248525a9e07eb3e6e60ea1c4995eb" > vars_< / a > [< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]; }< / div >
< div class = "line" > < a id = "l01844" name = "l01844" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_filter.html#a98462960b58fdbd903804b5fe18c0be0" > 1844< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_filter.html#a98462960b58fdbd903804b5fe18c0be0" > Value< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l01845" name = "l01845" > < / a > < span class = "lineno" > 1845< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (IsVarSynced(< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ));< / div >
< div class = "line" > < a id = "l01846" name = "l01846" > < / a > < span class = "lineno" > 1846< / span > < span class = "keywordflow" > return< / span > values_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ];< / div >
< div class = "line" > < a id = "l01847" name = "l01847" > < / a > < span class = "lineno" > 1847< / span > }< / div >
< div class = "line" > < a id = "l01848" name = "l01848" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_filter.html#af295b14439014798b1fd34faffd3b5e7" > 1848< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_filter.html#af295b14439014798b1fd34faffd3b5e7" > IsVarSynced< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > var_synced_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ]; }< / div >
< div class = "line" > < a id = "l01849" name = "l01849" > < / a > < span class = "lineno" > 1849< / span > < / div >
< div class = "line" > < a id = "l01850" name = "l01850" > < / a > < span class = "lineno" > 1850< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l01851" name = "l01851" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_int_var_local_search_filter.html#a0aee6f5d9448e52ed735f92e581f2a3f" > 1851< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_int_var_local_search_filter.html#a0aee6f5d9448e52ed735f92e581f2a3f" > OnSynchronize< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > ) {}< / div >
< div class = "line" > < a id = "l01852" name = "l01852" > < / a > < span class = "lineno" > 1852< / span > < span class = "keywordtype" > void< / span > SynchronizeOnAssignment(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * assignment);< / div >
< div class = "line" > < a id = "l01853" name = "l01853" > < / a > < span class = "lineno" > 1853< / span > < / div >
< div class = "line" > < a id = "l01854" name = "l01854" > < / a > < span class = "lineno" > 1854< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l01855" name = "l01855" > < / a > < span class = "lineno" > 1855< / span > std::vector< IntVar*> < a class = "code hl_variable" href = "alldiff__cst_8cc.html#a151248525a9e07eb3e6e60ea1c4995eb" > vars_< / a > ;< / div >
< div class = "line" > < a id = "l01856" name = "l01856" > < / a > < span class = "lineno" > 1856< / span > std::vector< int64_t> values_;< / div >
< div class = "line" > < a id = "l01857" name = "l01857" > < / a > < span class = "lineno" > 1857< / span > std::vector< bool> var_synced_;< / div >
< div class = "line" > < a id = "l01858" name = "l01858" > < / a > < span class = "lineno" > 1858< / span > std::vector< int> var_index_to_index_;< / div >
< div class = "line" > < a id = "l01859" name = "l01859" > < / a > < span class = "lineno" > 1859< / span > < span class = "keyword" > static< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "namespaceoperations__research.html#adf85b9c9e168660e5f36d735d88f3955" > kUnassigned< / a > ;< / div >
< div class = "line" > < a id = "l01860" name = "l01860" > < / a > < span class = "lineno" > 1860< / span > };< / div >
< div class = "line" > < a id = "l01861" name = "l01861" > < / a > < span class = "lineno" > 1861< / span > < / div >
< div class = "line" > < a id = "l01862" name = "l01862" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html" > 1862< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_propagation_monitor.html" > PropagationMonitor< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_search_monitor.html" > SearchMonitor< / a > {< / div >
< div class = "line" > < a id = "l01863" name = "l01863" > < / a > < span class = "lineno" > 1863< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01864" name = "l01864" > < / a > < span class = "lineno" > 1864< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_propagation_monitor.html" > PropagationMonitor< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver);< / div >
< div class = "line" > < a id = "l01865" name = "l01865" > < / a > < span class = "lineno" > 1865< / span > < a class = "code hl_class" href = "classoperations__research_1_1_propagation_monitor.html" > ~PropagationMonitor< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01866" name = "l01866" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#aed804747c45a7e1caf81461f9e45dd91" > 1866< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > < span class = "stringliteral" > " PropagationMonitor" < / span > ; }< / div >
< div class = "line" > < a id = "l01867" name = "l01867" > < / a > < span class = "lineno" > 1867< / span > < / div >
< div class = "line" > < a id = "l01869" name = "l01869" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#ab52ff1d356b9ca17d86884720fd9f08f" > 1869< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#ab52ff1d356b9ca17d86884720fd9f08f" > BeginConstraintInitialPropagation< / a > (< / div >
< div class = "line" > < a id = "l01870" name = "l01870" > < / a > < span class = "lineno" > 1870< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > constraint) = 0;< / div >
< div class = "line" > < a id = "l01871" name = "l01871" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a2ba65f329138882aa7a56a8815fe2238" > 1871< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a2ba65f329138882aa7a56a8815fe2238" > EndConstraintInitialPropagation< / a > (< / div >
< div class = "line" > < a id = "l01872" name = "l01872" > < / a > < span class = "lineno" > 1872< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > constraint) = 0;< / div >
< div class = "line" > < a id = "l01873" name = "l01873" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a8f8d2ca3d9f0e871b9770007e7389d3e" > 1873< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a8f8d2ca3d9f0e871b9770007e7389d3e" > BeginNestedConstraintInitialPropagation< / a > (< / div >
< div class = "line" > < a id = "l01874" name = "l01874" > < / a > < span class = "lineno" > 1874< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > parent, < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > nested) = 0;< / div >
< div class = "line" > < a id = "l01875" name = "l01875" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a999c625dc76dfd7f967b8975ae965df8" > 1875< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a999c625dc76dfd7f967b8975ae965df8" > EndNestedConstraintInitialPropagation< / a > (< / div >
< div class = "line" > < a id = "l01876" name = "l01876" > < / a > < span class = "lineno" > 1876< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > parent, < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > nested) = 0;< / div >
< div class = "line" > < a id = "l01877" name = "l01877" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#aced81fe18add9aa052c40a148b6bb79d" > 1877< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#aced81fe18add9aa052c40a148b6bb79d" > RegisterDemon< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < span class = "keyword" > const< / span > demon) = 0;< / div >
< div class = "line" > < a id = "l01878" name = "l01878" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a6e0692306656dae6639fbc6dd001400d" > 1878< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a6e0692306656dae6639fbc6dd001400d" > BeginDemonRun< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < span class = "keyword" > const< / span > demon) = 0;< / div >
< div class = "line" > < a id = "l01879" name = "l01879" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#acd79a3f4a6c95f0acecac5bc8420bd37" > 1879< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#acd79a3f4a6c95f0acecac5bc8420bd37" > EndDemonRun< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * < span class = "keyword" > const< / span > demon) = 0;< / div >
< div class = "line" > < a id = "l01880" name = "l01880" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#aa77ef61dbcadb2bd07159e46dd7555a6" > 1880< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#aa77ef61dbcadb2bd07159e46dd7555a6" > StartProcessingIntegerVariable< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01881" name = "l01881" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#ad8c078366ae8c668ccaa369f2f539a08" > 1881< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#ad8c078366ae8c668ccaa369f2f539a08" > EndProcessingIntegerVariable< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01882" name = "l01882" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a70c1ff674f3da38bc07626c496f34af9" > 1882< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a70c1ff674f3da38bc07626c496f34af9" > PushContext< / a > (< span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "gurobi__interface_8cc.html#a5f287b83a753915ae862fed64f8640a6" > context< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01883" name = "l01883" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#ad8c2cfa3b6981f66705a3309edc2521c" > 1883< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#ad8c2cfa3b6981f66705a3309edc2521c" > PopContext< / a > () = 0;< / div >
< div class = "line" > < a id = "l01885" name = "l01885" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#ac0cf596f1ae7609f165ca4c866c02774" > 1885< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#ac0cf596f1ae7609f165ca4c866c02774" > SetMin< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr, int64_t new_min) = 0;< / div >
< div class = "line" > < a id = "l01886" name = "l01886" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a126966f09d093bc9f6c9410c7bc5a2ef" > 1886< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a126966f09d093bc9f6c9410c7bc5a2ef" > SetMax< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr, int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01887" name = "l01887" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a6e498828df2385b763f45248375f8572" > 1887< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a6e498828df2385b763f45248375f8572" > SetRange< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr, int64_t new_min,< / div >
< div class = "line" > < a id = "l01888" name = "l01888" > < / a > < span class = "lineno" > 1888< / span > int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01890" name = "l01890" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a30937901ac46d02c3cd57f46fcacd679" > 1890< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a30937901ac46d02c3cd57f46fcacd679" > SetMin< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min) = 0;< / div >
< div class = "line" > < a id = "l01891" name = "l01891" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a9d744483fcd1aad50383d420b23ca06a" > 1891< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a9d744483fcd1aad50383d420b23ca06a" > SetMax< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01892" name = "l01892" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#abe2ccd8eca4ac4de1206e8321ebc28d0" > 1892< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#abe2ccd8eca4ac4de1206e8321ebc28d0" > SetRange< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min,< / div >
< div class = "line" > < a id = "l01893" name = "l01893" > < / a > < span class = "lineno" > 1893< / span > int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01894" name = "l01894" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a358d0dc8739be3a69b8d04b20ceeca1b" > 1894< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a358d0dc8739be3a69b8d04b20ceeca1b" > RemoveValue< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01895" name = "l01895" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a4df31041e5a5d2b96b4fd1e2fc7c78fe" > 1895< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a4df31041e5a5d2b96b4fd1e2fc7c78fe" > SetValue< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01896" name = "l01896" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a770ac0e58ac711e3866c3731d9417bd8" > 1896< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a770ac0e58ac711e3866c3731d9417bd8" > RemoveInterval< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t imin,< / div >
< div class = "line" > < a id = "l01897" name = "l01897" > < / a > < span class = "lineno" > 1897< / span > int64_t imax) = 0;< / div >
< div class = "line" > < a id = "l01898" name = "l01898" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a028fe39cb7a6538b681f8187ec8b2fd5" > 1898< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a028fe39cb7a6538b681f8187ec8b2fd5" > SetValues< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l01899" name = "l01899" > < / a > < span class = "lineno" > 1899< / span > < span class = "keyword" > const< / span > std::vector< int64_t> & values) = 0;< / div >
< div class = "line" > < a id = "l01900" name = "l01900" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#ae946f821b8a6287c182392564eae0eba" > 1900< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#ae946f821b8a6287c182392564eae0eba" > RemoveValues< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l01901" name = "l01901" > < / a > < span class = "lineno" > 1901< / span > < span class = "keyword" > const< / span > std::vector< int64_t> & values) = 0;< / div >
< div class = "line" > < a id = "l01903" name = "l01903" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a55f9231fa7bc1e162027f315756b9f0a" > 1903< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a55f9231fa7bc1e162027f315756b9f0a" > SetStartMin< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min) = 0;< / div >
< div class = "line" > < a id = "l01904" name = "l01904" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#ac7773149191696aae6b16b9c9f6c1614" > 1904< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#ac7773149191696aae6b16b9c9f6c1614" > SetStartMax< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01905" name = "l01905" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#aeda01d1493f781ab4e4c4ef463026c59" > 1905< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#aeda01d1493f781ab4e4c4ef463026c59" > SetStartRange< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min,< / div >
< div class = "line" > < a id = "l01906" name = "l01906" > < / a > < span class = "lineno" > 1906< / span > int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01907" name = "l01907" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a7cc3aa8de622c637dccc3133dbb9fbde" > 1907< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a7cc3aa8de622c637dccc3133dbb9fbde" > SetEndMin< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min) = 0;< / div >
< div class = "line" > < a id = "l01908" name = "l01908" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a6f0bc0c96e5fbf376db91e36d430d77a" > 1908< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a6f0bc0c96e5fbf376db91e36d430d77a" > SetEndMax< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01909" name = "l01909" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a6ed2b01b16e2d2d536bfc0492ca49baf" > 1909< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a6ed2b01b16e2d2d536bfc0492ca49baf" > SetEndRange< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min,< / div >
< div class = "line" > < a id = "l01910" name = "l01910" > < / a > < span class = "lineno" > 1910< / span > int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01911" name = "l01911" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a51c254362c423d05c445ac0b601f9d0f" > 1911< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a51c254362c423d05c445ac0b601f9d0f" > SetDurationMin< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min) = 0;< / div >
< div class = "line" > < a id = "l01912" name = "l01912" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a0a9f2aafe6e0af0bd3b2b0bdbfefc43a" > 1912< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a0a9f2aafe6e0af0bd3b2b0bdbfefc43a" > SetDurationMax< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01913" name = "l01913" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a0de3d793976b21f8b85ba61c49fe3aaa" > 1913< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a0de3d793976b21f8b85ba61c49fe3aaa" > SetDurationRange< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t new_min,< / div >
< div class = "line" > < a id = "l01914" name = "l01914" > < / a > < span class = "lineno" > 1914< / span > int64_t new_max) = 0;< / div >
< div class = "line" > < a id = "l01915" name = "l01915" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#aa3e9be9f07862e3f2704cb028866ab81" > 1915< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#aa3e9be9f07862e3f2704cb028866ab81" > SetPerformed< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keywordtype" > bool< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01917" name = "l01917" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#af5aaffbf16ee150934ca1d7feddffdf7" > 1917< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#af5aaffbf16ee150934ca1d7feddffdf7" > RankFirst< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01918" name = "l01918" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a670d62cb4741bc10b2332a8a67fd3f5a" > 1918< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a670d62cb4741bc10b2332a8a67fd3f5a" > RankNotFirst< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01919" name = "l01919" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a133d6644c8ea52f45e657b4c268e0cbf" > 1919< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a133d6644c8ea52f45e657b4c268e0cbf" > RankLast< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01920" name = "l01920" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a6467f671a40283eed2a71c51741d93b8" > 1920< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a6467f671a40283eed2a71c51741d93b8" > RankNotLast< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) = 0;< / div >
< div class = "line" > < a id = "l01921" name = "l01921" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_propagation_monitor.html#a6e8312c7b6a02f813e345b99f98a8458" > 1921< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_propagation_monitor.html#a6e8312c7b6a02f813e345b99f98a8458" > RankSequence< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l01922" name = "l01922" > < / a > < span class = "lineno" > 1922< / span > < span class = "keyword" > const< / span > std::vector< int> & rank_first,< / div >
< div class = "line" > < a id = "l01923" name = "l01923" > < / a > < span class = "lineno" > 1923< / span > < span class = "keyword" > const< / span > std::vector< int> & rank_last,< / div >
< div class = "line" > < a id = "l01924" name = "l01924" > < / a > < span class = "lineno" > 1924< / span > < span class = "keyword" > const< / span > std::vector< int> & unperformed) = 0;< / div >
< div class = "line" > < a id = "l01926" name = "l01926" > < / a > < span class = "lineno" > 1926< / span > < span class = "keywordtype" > void< / span > Install() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01927" name = "l01927" > < / a > < span class = "lineno" > 1927< / span > };< / div >
< div class = "line" > < a id = "l01928" name = "l01928" > < / a > < span class = "lineno" > 1928< / span > < / div >
< div class = "line" > < a id = "l01929" name = "l01929" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html" > 1929< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_monitor.html" > LocalSearchMonitor< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_search_monitor.html" > SearchMonitor< / a > {< / div >
< div class = "line" > < a id = "l01930" name = "l01930" > < / a > < span class = "lineno" > 1930< / span > < span class = "comment" > // TODO(user): Add monitoring of local search filters.< / span > < / div >
< div class = "line" > < a id = "l01931" name = "l01931" > < / a > < span class = "lineno" > 1931< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01932" name = "l01932" > < / a > < span class = "lineno" > 1932< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_monitor.html" > LocalSearchMonitor< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver);< / div >
< div class = "line" > < a id = "l01933" name = "l01933" > < / a > < span class = "lineno" > 1933< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_monitor.html" > ~LocalSearchMonitor< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01934" name = "l01934" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#aed804747c45a7e1caf81461f9e45dd91" > 1934< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > < span class = "stringliteral" > " LocalSearchMonitor" < / span > ; }< / div >
< div class = "line" > < a id = "l01935" name = "l01935" > < / a > < span class = "lineno" > 1935< / span > < / div >
< div class = "line" > < a id = "l01937" name = "l01937" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#a35b82cf962b8485dfef3772acac93985" > 1937< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#a35b82cf962b8485dfef3772acac93985" > BeginOperatorStart< / a > () = 0;< / div >
< div class = "line" > < a id = "l01938" name = "l01938" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#a19a62cbe5ebefaa2729f76d22b7d809f" > 1938< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#a19a62cbe5ebefaa2729f76d22b7d809f" > EndOperatorStart< / a > () = 0;< / div >
< div class = "line" > < a id = "l01939" name = "l01939" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#a1b4ca6b8001752831ccac4e35478456c" > 1939< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#a1b4ca6b8001752831ccac4e35478456c" > BeginMakeNextNeighbor< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * op) = 0;< / div >
< div class = "line" > < a id = "l01940" name = "l01940" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#a0ee5f26ca61781ca148050d4c849a59a" > 1940< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#a0ee5f26ca61781ca148050d4c849a59a" > EndMakeNextNeighbor< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * op,< / div >
< div class = "line" > < a id = "l01941" name = "l01941" > < / a > < span class = "lineno" > 1941< / span > < span class = "keywordtype" > bool< / span > neighbor_found, < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > ,< / div >
< div class = "line" > < a id = "l01942" name = "l01942" > < / a > < span class = "lineno" > 1942< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_assignment.html" > Assignment< / a > * deltadelta) = 0;< / div >
< div class = "line" > < a id = "l01943" name = "l01943" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#a9bff5a3752886dfc07cdb1a013703229" > 1943< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#a9bff5a3752886dfc07cdb1a013703229" > BeginFilterNeighbor< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * op) = 0;< / div >
< div class = "line" > < a id = "l01944" name = "l01944" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#acf88f5c01754112f318c5e3e09e3df28" > 1944< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#acf88f5c01754112f318c5e3e09e3df28" > EndFilterNeighbor< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * op,< / div >
< div class = "line" > < a id = "l01945" name = "l01945" > < / a > < span class = "lineno" > 1945< / span > < span class = "keywordtype" > bool< / span > neighbor_found) = 0;< / div >
< div class = "line" > < a id = "l01946" name = "l01946" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#aa4c2b5fb22216b02024b4e6f42603483" > 1946< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#aa4c2b5fb22216b02024b4e6f42603483" > BeginAcceptNeighbor< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * op) = 0;< / div >
< div class = "line" > < a id = "l01947" name = "l01947" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#a16b6aa7d88fa401005be90a804a7ab10" > 1947< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#a16b6aa7d88fa401005be90a804a7ab10" > EndAcceptNeighbor< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_operator.html" > LocalSearchOperator< / a > * op,< / div >
< div class = "line" > < a id = "l01948" name = "l01948" > < / a > < span class = "lineno" > 1948< / span > < span class = "keywordtype" > bool< / span > neighbor_found) = 0;< / div >
< div class = "line" > < a id = "l01949" name = "l01949" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#aa80c2b78ad60b5811b9fdeb8fab32c71" > 1949< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#aa80c2b78ad60b5811b9fdeb8fab32c71" > BeginFiltering< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > * filter) = 0;< / div >
< div class = "line" > < a id = "l01950" name = "l01950" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_local_search_monitor.html#a70a6f04e20d3aca67f5463c3b12498dc" > 1950< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_local_search_monitor.html#a70a6f04e20d3aca67f5463c3b12498dc" > EndFiltering< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > * filter, < span class = "keywordtype" > bool< / span > reject) = 0;< / div >
< div class = "line" > < a id = "l01951" name = "l01951" > < / a > < span class = "lineno" > 1951< / span > < / div >
< div class = "line" > < a id = "l01953" name = "l01953" > < / a > < span class = "lineno" > 1953< / span > < span class = "keywordtype" > void< / span > Install() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01954" name = "l01954" > < / a > < span class = "lineno" > 1954< / span > };< / div >
< div class = "line" > < a id = "l01955" name = "l01955" > < / a > < span class = "lineno" > 1955< / span > < / div >
< div class = "line" > < a id = "l01956" name = "l01956" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html" > 1956< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_boolean_var.html" > BooleanVar< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > {< / div >
< div class = "line" > < a id = "l01957" name = "l01957" > < / a > < span class = "lineno" > 1957< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l01958" name = "l01958" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a970f18a42acc024041506587b8f79e74" > 1958< / a > < / span > < span class = "keyword" > static< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_boolean_var.html#a970f18a42acc024041506587b8f79e74" > kUnboundBooleanVarValue< / a > ;< / div >
< div class = "line" > < a id = "l01959" name = "l01959" > < / a > < span class = "lineno" > 1959< / span > < / div >
< div class = "line" > < a id = "l01960" name = "l01960" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#aeded50edd859a889ba764147084fc516" > 1960< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#aeded50edd859a889ba764147084fc516" > BooleanVar< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, < span class = "keyword" > const< / span > std::string& < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > = < span class = "stringliteral" > " " < / span > )< / div >
< div class = "line" > < a id = "l01961" name = "l01961" > < / a > < span class = "lineno" > 1961< / span > : < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > (s, < a class = "code hl_variable" href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > ), value_(kUnboundBooleanVarValue) {}< / div >
< div class = "line" > < a id = "l01962" name = "l01962" > < / a > < span class = "lineno" > 1962< / span > < / div >
< div class = "line" > < a id = "l01963" name = "l01963" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#aff6bd70a429314a0d34cfc87cd6adeea" > 1963< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#aff6bd70a429314a0d34cfc87cd6adeea" > ~BooleanVar< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l01964" name = "l01964" > < / a > < span class = "lineno" > 1964< / span > < / div >
< div class = "line" > < a id = "l01965" name = "l01965" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a57de3380cd407d67b62bfdbc72869994" > 1965< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#a57de3380cd407d67b62bfdbc72869994" > Min< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > (value_ == 1); }< / div >
< div class = "line" > < a id = "l01966" name = "l01966" > < / a > < span class = "lineno" > 1966< / span > < span class = "keywordtype" > void< / span > SetMin(int64_t m) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01967" name = "l01967" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#abd0cf0dd59c0427b3e6242da7328c409" > 1967< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#abd0cf0dd59c0427b3e6242da7328c409" > Max< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > (value_ != 0); }< / div >
< div class = "line" > < a id = "l01968" name = "l01968" > < / a > < span class = "lineno" > 1968< / span > < span class = "keywordtype" > void< / span > SetMax(int64_t m) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01969" name = "l01969" > < / a > < span class = "lineno" > 1969< / span > < span class = "keywordtype" > void< / span > SetRange(int64_t mi, int64_t ma) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01970" name = "l01970" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a303c8b67c301d6d436bd06e50d41cd6b" > 1970< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#a303c8b67c301d6d436bd06e50d41cd6b" > Bound< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > (value_ != kUnboundBooleanVarValue); }< / div >
< div class = "line" > < a id = "l01971" name = "l01971" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#ab692c3573e15cc79cf2dbaffdbc033a4" > 1971< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#ab692c3573e15cc79cf2dbaffdbc033a4" > Value< / a > ()< span class = "keyword" > const override < / span > {< / div >
< div class = "line" > < a id = "l01972" name = "l01972" > < / a > < span class = "lineno" > 1972< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab25e01a2942b821d66371fc68d53f2eb" > CHECK_NE< / a > (value_, kUnboundBooleanVarValue) < < < span class = "stringliteral" > " variable is not bound" < / span > ;< / div >
< div class = "line" > < a id = "l01973" name = "l01973" > < / a > < span class = "lineno" > 1973< / span > < span class = "keywordflow" > return< / span > value_;< / div >
< div class = "line" > < a id = "l01974" name = "l01974" > < / a > < span class = "lineno" > 1974< / span > }< / div >
< div class = "line" > < a id = "l01975" name = "l01975" > < / a > < span class = "lineno" > 1975< / span > < span class = "keywordtype" > void< / span > RemoveValue(int64_t v) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01976" name = "l01976" > < / a > < span class = "lineno" > 1976< / span > < span class = "keywordtype" > void< / span > RemoveInterval(int64_t l, int64_t u) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01977" name = "l01977" > < / a > < span class = "lineno" > 1977< / span > < span class = "keywordtype" > void< / span > WhenBound(< a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * d) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01978" name = "l01978" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a4aa5eab0485ae0ec6eac0a81e5d5b9bd" > 1978< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#a4aa5eab0485ae0ec6eac0a81e5d5b9bd" > WhenRange< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * d)< span class = "keyword" > override < / span > { WhenBound(d); }< / div >
< div class = "line" > < a id = "l01979" name = "l01979" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a5d794218448e5119fe2034719dc55c6f" > 1979< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#a5d794218448e5119fe2034719dc55c6f" > WhenDomain< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_demon.html" > Demon< / a > * d)< span class = "keyword" > override < / span > { WhenBound(d); }< / div >
< div class = "line" > < a id = "l01980" name = "l01980" > < / a > < span class = "lineno" > 1980< / span > uint64_t Size() < span class = "keyword" > const override< / span > ;< / div >
< div class = "line" > < a id = "l01981" name = "l01981" > < / a > < span class = "lineno" > 1981< / span > < span class = "keywordtype" > bool< / span > Contains(int64_t v) < span class = "keyword" > const override< / span > ;< / div >
< div class = "line" > < a id = "l01982" name = "l01982" > < / a > < span class = "lineno" > 1982< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_iterator.html" > IntVarIterator< / a > * MakeHoleIterator(< span class = "keywordtype" > bool< / span > reversible) < span class = "keyword" > const override< / span > ;< / div >
< div class = "line" > < a id = "l01983" name = "l01983" > < / a > < span class = "lineno" > 1983< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var_iterator.html" > IntVarIterator< / a > * MakeDomainIterator(< span class = "keywordtype" > bool< / span > reversible) < span class = "keyword" > const override< / span > ;< / div >
< div class = "line" > < a id = "l01984" name = "l01984" > < / a > < span class = "lineno" > 1984< / span > std::string DebugString() < span class = "keyword" > const override< / span > ;< / div >
< div class = "line" > < a id = "l01985" name = "l01985" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a0572abaa4524f2abfa7634123da83584" > 1985< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#a0572abaa4524f2abfa7634123da83584" > VarType< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_enumvalue" href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" > BOOLEAN_VAR< / a > ; }< / div >
< div class = "line" > < a id = "l01986" name = "l01986" > < / a > < span class = "lineno" > 1986< / span > < / div >
< div class = "line" > < a id = "l01987" name = "l01987" > < / a > < span class = "lineno" > 1987< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * IsEqual(int64_t < a class = "code hl_variable" href = "variable__and__expressions_8cc.html#a98c17ae8d99a73259ea78de8c4b66254" > constant< / a > ) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01988" name = "l01988" > < / a > < span class = "lineno" > 1988< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * IsDifferent(int64_t < a class = "code hl_variable" href = "variable__and__expressions_8cc.html#a98c17ae8d99a73259ea78de8c4b66254" > constant< / a > ) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01989" name = "l01989" > < / a > < span class = "lineno" > 1989< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * IsGreaterOrEqual(int64_t < a class = "code hl_variable" href = "variable__and__expressions_8cc.html#a98c17ae8d99a73259ea78de8c4b66254" > constant< / a > ) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01990" name = "l01990" > < / a > < span class = "lineno" > 1990< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * IsLessOrEqual(int64_t < a class = "code hl_variable" href = "variable__and__expressions_8cc.html#a98c17ae8d99a73259ea78de8c4b66254" > constant< / a > ) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l01991" name = "l01991" > < / a > < span class = "lineno" > 1991< / span > < / div >
< div class = "line" > < a id = "l01992" name = "l01992" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a26084244a10aa8370e8d8a165fd9c80e" > 1992< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#a26084244a10aa8370e8d8a165fd9c80e" > RestoreValue< / a > () = 0;< / div >
< div class = "line" > < a id = "l01993" name = "l01993" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#adbfe3c73b9cad61f112ccb082b553c51" > 1993< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#adbfe3c73b9cad61f112ccb082b553c51" > BaseName< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > < span class = "stringliteral" > " BooleanVar" < / span > ; }< / div >
< div class = "line" > < a id = "l01994" name = "l01994" > < / a > < span class = "lineno" > 1994< / span > < / div >
< div class = "line" > < a id = "l01995" name = "l01995" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#ad594d94255d119c43ecdd6f0179b73ae" > 1995< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_boolean_var.html#ad594d94255d119c43ecdd6f0179b73ae" > RawValue< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > value_; }< / div >
< div class = "line" > < a id = "l01996" name = "l01996" > < / a > < span class = "lineno" > 1996< / span > < / div >
< div class = "line" > < a id = "l01997" name = "l01997" > < / a > < span class = "lineno" > 1997< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l01998" name = "l01998" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#ac1575c67c67687efdd5159442637e6ff" > 1998< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "classoperations__research_1_1_boolean_var.html#ac1575c67c67687efdd5159442637e6ff" > value_< / a > ;< / div >
< div class = "line" > < a id = "l01999" name = "l01999" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#ad2da2d3058005bae8dcd6bc37fa1244b" > 1999< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" > SimpleRevFIFO< Demon*> < / a > < a class = "code hl_variable" href = "classoperations__research_1_1_boolean_var.html#ad2da2d3058005bae8dcd6bc37fa1244b" > bound_demons_< / a > ;< / div >
< div class = "line" > < a id = "l02000" name = "l02000" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_boolean_var.html#a5114f46a021e08dd81c2d7462a8bc735" > 2000< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" > SimpleRevFIFO< Demon*> < / a > < a class = "code hl_variable" href = "classoperations__research_1_1_boolean_var.html#a5114f46a021e08dd81c2d7462a8bc735" > delayed_bound_demons_< / a > ;< / div >
< div class = "line" > < a id = "l02001" name = "l02001" > < / a > < span class = "lineno" > 2001< / span > };< / div >
< div class = "line" > < a id = "l02002" name = "l02002" > < / a > < span class = "lineno" > 2002< / span > < / div >
< div class = "line" > < a id = "l02003" name = "l02003" > < / a > < span class = "lineno" > 2003< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_symmetry_manager.html" > SymmetryManager< / a > ;< / div >
< div class = "line" > < a id = "l02004" name = "l02004" > < / a > < span class = "lineno" > 2004< / span > < / div >
< div class = "line" > < a id = "l02008" name = "l02008" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_symmetry_breaker.html" > 2008< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_symmetry_breaker.html" > SymmetryBreaker< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_decision_visitor.html" > DecisionVisitor< / a > {< / div >
< div class = "line" > < a id = "l02009" name = "l02009" > < / a > < span class = "lineno" > 2009< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02010" name = "l02010" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_symmetry_breaker.html#a6d9f23034ceb39de4907c0c6d85e4b86" > 2010< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_symmetry_breaker.html#a6d9f23034ceb39de4907c0c6d85e4b86" > SymmetryBreaker< / a > ()< / div >
< div class = "line" > < a id = "l02011" name = "l02011" > < / a > < span class = "lineno" > 2011< / span > : symmetry_manager_(nullptr), index_in_symmetry_manager_(-1) {}< / div >
< div class = "line" > < a id = "l02012" name = "l02012" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_symmetry_breaker.html#ada76e640c4e2afb8508576e0e937ab6e" > 2012< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_symmetry_breaker.html#ada76e640c4e2afb8508576e0e937ab6e" > ~SymmetryBreaker< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l02013" name = "l02013" > < / a > < span class = "lineno" > 2013< / span > < / div >
< div class = "line" > < a id = "l02014" name = "l02014" > < / a > < span class = "lineno" > 2014< / span > < span class = "keywordtype" > void< / span > AddIntegerVariableEqualValueClause(< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l02015" name = "l02015" > < / a > < span class = "lineno" > 2015< / span > < span class = "keywordtype" > void< / span > AddIntegerVariableGreaterOrEqualValueClause(< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l02016" name = "l02016" > < / a > < span class = "lineno" > 2016< / span > int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l02017" name = "l02017" > < / a > < span class = "lineno" > 2017< / span > < span class = "keywordtype" > void< / span > AddIntegerVariableLessOrEqualValueClause(< a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l02018" name = "l02018" > < / a > < span class = "lineno" > 2018< / span > int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l02019" name = "l02019" > < / a > < span class = "lineno" > 2019< / span > < / div >
< div class = "line" > < a id = "l02020" name = "l02020" > < / a > < span class = "lineno" > 2020< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02021" name = "l02021" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_symmetry_breaker.html#aa126bb367514a24cbd6e0b2c48fda9ee" > 2021< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_symmetry_manager.html" > SymmetryManager< / a > ;< / div >
< div class = "line" > < a id = "l02022" name = "l02022" > < / a > < span class = "lineno" > 2022< / span > < span class = "keywordtype" > void< / span > set_symmetry_manager_and_index(< a class = "code hl_class" href = "classoperations__research_1_1_symmetry_manager.html" > SymmetryManager< / a > * manager, < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ) {< / div >
< div class = "line" > < a id = "l02023" name = "l02023" > < / a > < span class = "lineno" > 2023< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a3e1cfef60e774a81f30eaddf26a3a274" > CHECK< / a > (symmetry_manager_ == < span class = "keyword" > nullptr< / span > );< / div >
< div class = "line" > < a id = "l02024" name = "l02024" > < / a > < span class = "lineno" > 2024< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a7c0ce053b28d53aa4eaf3eb7fb71663b" > CHECK_EQ< / a > (-1, index_in_symmetry_manager_);< / div >
< div class = "line" > < a id = "l02025" name = "l02025" > < / a > < span class = "lineno" > 2025< / span > symmetry_manager_ = manager;< / div >
< div class = "line" > < a id = "l02026" name = "l02026" > < / a > < span class = "lineno" > 2026< / span > index_in_symmetry_manager_ = < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ;< / div >
< div class = "line" > < a id = "l02027" name = "l02027" > < / a > < span class = "lineno" > 2027< / span > }< / div >
< div class = "line" > < a id = "l02028" name = "l02028" > < / a > < span class = "lineno" > 2028< / span > < a class = "code hl_class" href = "classoperations__research_1_1_symmetry_manager.html" > SymmetryManager< / a > * symmetry_manager()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > symmetry_manager_; }< / div >
< div class = "line" > < a id = "l02029" name = "l02029" > < / a > < span class = "lineno" > 2029< / span > < span class = "keywordtype" > int< / span > index_in_symmetry_manager()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > index_in_symmetry_manager_; }< / div >
< div class = "line" > < a id = "l02030" name = "l02030" > < / a > < span class = "lineno" > 2030< / span > < / div >
< div class = "line" > < a id = "l02031" name = "l02031" > < / a > < span class = "lineno" > 2031< / span > SymmetryManager* symmetry_manager_;< / div >
< div class = "line" > < a id = "l02033" name = "l02033" > < / a > < span class = "lineno" > 2033< / span > < span class = "keywordtype" > int< / span > index_in_symmetry_manager_;< / div >
< div class = "line" > < a id = "l02034" name = "l02034" > < / a > < span class = "lineno" > 2034< / span > };< / div >
< div class = "line" > < a id = "l02035" name = "l02035" > < / a > < span class = "lineno" > 2035< / span > < / div >
< div class = "line" > < a id = "l02038" name = "l02038" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_search_log.html" > 2038< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_search_log.html" > SearchLog< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_search_monitor.html" > SearchMonitor< / a > {< / div >
< div class = "line" > < a id = "l02039" name = "l02039" > < / a > < span class = "lineno" > 2039< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02040" name = "l02040" > < / a > < span class = "lineno" > 2040< / span > < a class = "code hl_class" href = "classoperations__research_1_1_search_log.html" > SearchLog< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > s, < a class = "code hl_class" href = "classoperations__research_1_1_optimize_var.html" > OptimizeVar< / a > * < span class = "keyword" > const< / span > obj, < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l02041" name = "l02041" > < / a > < span class = "lineno" > 2041< / span > < span class = "keywordtype" > double< / span > scaling_factor, < span class = "keywordtype" > double< / span > offset,< / div >
< div class = "line" > < a id = "l02042" name = "l02042" > < / a > < span class = "lineno" > 2042< / span > std::function< std::string()> display_callback,< / div >
< div class = "line" > < a id = "l02043" name = "l02043" > < / a > < span class = "lineno" > 2043< / span > < span class = "keywordtype" > bool< / span > display_on_new_solutions_only, < span class = "keywordtype" > int< / span > period);< / div >
< div class = "line" > < a id = "l02044" name = "l02044" > < / a > < span class = "lineno" > 2044< / span > < a class = "code hl_class" href = "classoperations__research_1_1_search_log.html" > ~SearchLog< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02045" name = "l02045" > < / a > < span class = "lineno" > 2045< / span > < span class = "keywordtype" > void< / span > EnterSearch() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02046" name = "l02046" > < / a > < span class = "lineno" > 2046< / span > < span class = "keywordtype" > void< / span > ExitSearch() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02047" name = "l02047" > < / a > < span class = "lineno" > 2047< / span > < span class = "keywordtype" > bool< / span > AtSolution() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02048" name = "l02048" > < / a > < span class = "lineno" > 2048< / span > < span class = "keywordtype" > void< / span > BeginFail() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02049" name = "l02049" > < / a > < span class = "lineno" > 2049< / span > < span class = "keywordtype" > void< / span > NoMoreSolutions() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02050" name = "l02050" > < / a > < span class = "lineno" > 2050< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#af7c8c8d0b8a6e63b446a63628d790337" > AcceptUncheckedNeighbor< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02051" name = "l02051" > < / a > < span class = "lineno" > 2051< / span > < span class = "keywordtype" > void< / span > ApplyDecision(< a class = "code hl_class" href = "classoperations__research_1_1_decision.html" > Decision< / a > * < span class = "keyword" > const< / span > decision) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02052" name = "l02052" > < / a > < span class = "lineno" > 2052< / span > < span class = "keywordtype" > void< / span > RefuteDecision(< a class = "code hl_class" href = "classoperations__research_1_1_decision.html" > Decision< / a > * < span class = "keyword" > const< / span > decision) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02053" name = "l02053" > < / a > < span class = "lineno" > 2053< / span > < span class = "keywordtype" > void< / span > OutputDecision();< / div >
< div class = "line" > < a id = "l02054" name = "l02054" > < / a > < span class = "lineno" > 2054< / span > < span class = "keywordtype" > void< / span > Maintain();< / div >
< div class = "line" > < a id = "l02055" name = "l02055" > < / a > < span class = "lineno" > 2055< / span > < span class = "keywordtype" > void< / span > BeginInitialPropagation() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02056" name = "l02056" > < / a > < span class = "lineno" > 2056< / span > < span class = "keywordtype" > void< / span > EndInitialPropagation() < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02057" name = "l02057" > < / a > < span class = "lineno" > 2057< / span > std::string DebugString() < span class = "keyword" > const override< / span > ;< / div >
< div class = "line" > < a id = "l02058" name = "l02058" > < / a > < span class = "lineno" > 2058< / span > < / div >
< div class = "line" > < a id = "l02059" name = "l02059" > < / a > < span class = "lineno" > 2059< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l02060" name = "l02060" > < / a > < span class = "lineno" > 2060< / span > < span class = "comment" > /* Bottleneck function used for all UI related output. */< / span > < / div >
< div class = "line" > < a id = "l02061" name = "l02061" > < / a > < span class = "lineno" > 2061< / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > OutputLine(< span class = "keyword" > const< / span > std::string& line);< / div >
< div class = "line" > < a id = "l02062" name = "l02062" > < / a > < span class = "lineno" > 2062< / span > < / div >
< div class = "line" > < a id = "l02063" name = "l02063" > < / a > < span class = "lineno" > 2063< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02064" name = "l02064" > < / a > < span class = "lineno" > 2064< / span > < span class = "keyword" > static< / span > std::string < a class = "code hl_function" href = "base_2sysinfo_8h.html#a6c4b947106f3ec8ba6e4e7ddb92b8a05" > MemoryUsage< / a > ();< / div >
< div class = "line" > < a id = "l02065" name = "l02065" > < / a > < span class = "lineno" > 2065< / span > < / div >
< div class = "line" > < a id = "l02066" name = "l02066" > < / a > < span class = "lineno" > 2066< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > period_;< / div >
< div class = "line" > < a id = "l02067" name = "l02067" > < / a > < span class = "lineno" > 2067< / span > std::unique_ptr< WallTimer> timer_;< / div >
< div class = "line" > < a id = "l02068" name = "l02068" > < / a > < span class = "lineno" > 2068< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > var_;< / div >
< div class = "line" > < a id = "l02069" name = "l02069" > < / a > < span class = "lineno" > 2069< / span > < a class = "code hl_class" href = "classoperations__research_1_1_optimize_var.html" > OptimizeVar< / a > * < span class = "keyword" > const< / span > obj_;< / div >
< div class = "line" > < a id = "l02070" name = "l02070" > < / a > < span class = "lineno" > 2070< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > double< / span > scaling_factor_;< / div >
< div class = "line" > < a id = "l02071" name = "l02071" > < / a > < span class = "lineno" > 2071< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > double< / span > < a class = "code hl_variable" href = "interval_8cc.html#adeaf787e3a80bbf698cb9e26264474e0" > offset_< / a > ;< / div >
< div class = "line" > < a id = "l02072" name = "l02072" > < / a > < span class = "lineno" > 2072< / span > std::function< std::string()> display_callback_;< / div >
< div class = "line" > < a id = "l02073" name = "l02073" > < / a > < span class = "lineno" > 2073< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > bool< / span > display_on_new_solutions_only_;< / div >
< div class = "line" > < a id = "l02074" name = "l02074" > < / a > < span class = "lineno" > 2074< / span > < span class = "keywordtype" > int< / span > nsol_;< / div >
< div class = "line" > < a id = "l02075" name = "l02075" > < / a > < span class = "lineno" > 2075< / span > int64_t tick_;< / div >
< div class = "line" > < a id = "l02076" name = "l02076" > < / a > < span class = "lineno" > 2076< / span > int64_t objective_min_;< / div >
< div class = "line" > < a id = "l02077" name = "l02077" > < / a > < span class = "lineno" > 2077< / span > int64_t objective_max_;< / div >
< div class = "line" > < a id = "l02078" name = "l02078" > < / a > < span class = "lineno" > 2078< / span > < span class = "keywordtype" > int< / span > min_right_depth_;< / div >
< div class = "line" > < a id = "l02079" name = "l02079" > < / a > < span class = "lineno" > 2079< / span > < span class = "keywordtype" > int< / span > max_depth_;< / div >
< div class = "line" > < a id = "l02080" name = "l02080" > < / a > < span class = "lineno" > 2080< / span > < span class = "keywordtype" > int< / span > sliding_min_depth_;< / div >
< div class = "line" > < a id = "l02081" name = "l02081" > < / a > < span class = "lineno" > 2081< / span > < span class = "keywordtype" > int< / span > sliding_max_depth_;< / div >
< div class = "line" > < a id = "l02082" name = "l02082" > < / a > < span class = "lineno" > 2082< / span > };< / div >
< div class = "line" > < a id = "l02083" name = "l02083" > < / a > < span class = "lineno" > 2083< / span > < / div >
< div class = "line" > < a id = "l02088" name = "l02088" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html" > 2088< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_model_cache.html" > ModelCache< / a > {< / div >
< div class = "line" > < a id = "l02089" name = "l02089" > < / a > < span class = "lineno" > 2089< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02090" name = "l02090" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640" > 2090< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640" > VoidConstraintType< / a > {< / div >
< div class = "line" > < a id = "l02091" name = "l02091" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640a350d96d35eeacdf0c2c66a69ae370de3" > 2091< / a > < / span > VOID_FALSE_CONSTRAINT = 0,< / div >
< div class = "line" > < a id = "l02092" name = "l02092" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640abb2b7e9646abdb972fafbe90bf19a5ec" > 2092< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640abb2b7e9646abdb972fafbe90bf19a5ec" > VOID_TRUE_CONSTRAINT< / a > ,< / div >
< div class = "line" > < a id = "l02093" name = "l02093" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640a11c6746b747caede5558051e9be71506" > 2093< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640a11c6746b747caede5558051e9be71506" > VOID_CONSTRAINT_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02094" name = "l02094" > < / a > < span class = "lineno" > 2094< / span > };< / div >
< div class = "line" > < a id = "l02095" name = "l02095" > < / a > < span class = "lineno" > 2095< / span > < / div >
< div class = "line" > < a id = "l02096" name = "l02096" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562" > 2096< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562" > VarConstantConstraintType< / a > {< / div >
< div class = "line" > < a id = "l02097" name = "l02097" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562a0b320a3530d1100a39500db43e9f0610" > 2097< / a > < / span > VAR_CONSTANT_EQUALITY = 0,< / div >
< div class = "line" > < a id = "l02098" name = "l02098" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562a718e173e0eeb62d78a44b80843fcd211" > 2098< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562a718e173e0eeb62d78a44b80843fcd211" > VAR_CONSTANT_GREATER_OR_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02099" name = "l02099" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562ac853b00c21d70db5e1f18dadc77fa083" > 2099< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562ac853b00c21d70db5e1f18dadc77fa083" > VAR_CONSTANT_LESS_OR_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02100" name = "l02100" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562a979b0779f36a80f62ac877520de47099" > 2100< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562a979b0779f36a80f62ac877520de47099" > VAR_CONSTANT_NON_EQUALITY< / a > ,< / div >
< div class = "line" > < a id = "l02101" name = "l02101" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562aaa84708a3b17d21e2b5d8b7ad6e57ca8" > 2101< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562aaa84708a3b17d21e2b5d8b7ad6e57ca8" > VAR_CONSTANT_CONSTRAINT_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02102" name = "l02102" > < / a > < span class = "lineno" > 2102< / span > };< / div >
< div class = "line" > < a id = "l02103" name = "l02103" > < / a > < span class = "lineno" > 2103< / span > < / div >
< div class = "line" > < a id = "l02104" name = "l02104" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864f" > 2104< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864f" > VarConstantConstantConstraintType< / a > {< / div >
< div class = "line" > < a id = "l02105" name = "l02105" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864faaf915d4da198c454d55bb3ec6756e9b1" > 2105< / a > < / span > VAR_CONSTANT_CONSTANT_BETWEEN = 0,< / div >
< div class = "line" > < a id = "l02106" name = "l02106" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864fa9f313cf455d543ccd36ee2c8bbbb6610" > 2106< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864fa9f313cf455d543ccd36ee2c8bbbb6610" > VAR_CONSTANT_CONSTANT_CONSTRAINT_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02107" name = "l02107" > < / a > < span class = "lineno" > 2107< / span > };< / div >
< div class = "line" > < a id = "l02108" name = "l02108" > < / a > < span class = "lineno" > 2108< / span > < / div >
< div class = "line" > < a id = "l02109" name = "l02109" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbb" > 2109< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbb" > ExprExprConstraintType< / a > {< / div >
< div class = "line" > < a id = "l02110" name = "l02110" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbbab20099e9309c2b6619ef6c8ec664181a" > 2110< / a > < / span > EXPR_EXPR_EQUALITY = 0,< / div >
< div class = "line" > < a id = "l02111" name = "l02111" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba00529f006ffc58e55baff50d140fe076" > 2111< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba00529f006ffc58e55baff50d140fe076" > EXPR_EXPR_GREATER< / a > ,< / div >
< div class = "line" > < a id = "l02112" name = "l02112" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba7719059f68742eeec43445553767ad62" > 2112< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba7719059f68742eeec43445553767ad62" > EXPR_EXPR_GREATER_OR_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02113" name = "l02113" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba11b9278b1a71f063cc20e8bb79846b68" > 2113< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba11b9278b1a71f063cc20e8bb79846b68" > EXPR_EXPR_LESS< / a > ,< / div >
< div class = "line" > < a id = "l02114" name = "l02114" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbbaa7718fa06e32e05554d8e0a760e9172b" > 2114< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbbaa7718fa06e32e05554d8e0a760e9172b" > EXPR_EXPR_LESS_OR_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02115" name = "l02115" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba73108bc15aaa22c430bba712b73ce920" > 2115< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba73108bc15aaa22c430bba712b73ce920" > EXPR_EXPR_NON_EQUALITY< / a > ,< / div >
< div class = "line" > < a id = "l02116" name = "l02116" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba8af11a728083c50e0be546619201563b" > 2116< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba8af11a728083c50e0be546619201563b" > EXPR_EXPR_CONSTRAINT_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02117" name = "l02117" > < / a > < span class = "lineno" > 2117< / span > };< / div >
< div class = "line" > < a id = "l02118" name = "l02118" > < / a > < span class = "lineno" > 2118< / span > < / div >
< div class = "line" > < a id = "l02119" name = "l02119" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dc" > 2119< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dc" > ExprExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02120" name = "l02120" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dca0f422d5294a543e5a1405e563c1f66f2" > 2120< / a > < / span > EXPR_OPPOSITE = 0,< / div >
< div class = "line" > < a id = "l02121" name = "l02121" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dca938ad10f0b6ca42fa856e245042ac6df" > 2121< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dca938ad10f0b6ca42fa856e245042ac6df" > EXPR_ABS< / a > ,< / div >
< div class = "line" > < a id = "l02122" name = "l02122" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dcaf0a641235b7399f2cda0137af80db8e0" > 2122< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dcaf0a641235b7399f2cda0137af80db8e0" > EXPR_SQUARE< / a > ,< / div >
< div class = "line" > < a id = "l02123" name = "l02123" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dca37081d4ec3d290e733b8346bed09bd2f" > 2123< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dca37081d4ec3d290e733b8346bed09bd2f" > EXPR_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02124" name = "l02124" > < / a > < span class = "lineno" > 2124< / span > };< / div >
< div class = "line" > < a id = "l02125" name = "l02125" > < / a > < span class = "lineno" > 2125< / span > < / div >
< div class = "line" > < a id = "l02126" name = "l02126" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afe" > 2126< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afe" > ExprExprExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02127" name = "l02127" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afeaf4e4e8ba0108a0e9abc4fd2732a38a3b" > 2127< / a > < / span > EXPR_EXPR_DIFFERENCE = 0,< / div >
< div class = "line" > < a id = "l02128" name = "l02128" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea3784ad09f2939fec4b5125c3e3a7ee0a" > 2128< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea3784ad09f2939fec4b5125c3e3a7ee0a" > EXPR_EXPR_PROD< / a > ,< / div >
< div class = "line" > < a id = "l02129" name = "l02129" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea7cdf2f8fb26d167603e160773a680805" > 2129< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea7cdf2f8fb26d167603e160773a680805" > EXPR_EXPR_DIV< / a > ,< / div >
< div class = "line" > < a id = "l02130" name = "l02130" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea373e953d3799bdcdc112f9b0887ac0df" > 2130< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea373e953d3799bdcdc112f9b0887ac0df" > EXPR_EXPR_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02131" name = "l02131" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afeac6a4d05776624b8784e951aa964d00c5" > 2131< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afeac6a4d05776624b8784e951aa964d00c5" > EXPR_EXPR_MIN< / a > ,< / div >
< div class = "line" > < a id = "l02132" name = "l02132" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea2a6687577892c792edccf2585adfaa3a" > 2132< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea2a6687577892c792edccf2585adfaa3a" > EXPR_EXPR_SUM< / a > ,< / div >
< div class = "line" > < a id = "l02133" name = "l02133" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea73e135b9ac9d3286a0656ef84aa77ca6" > 2133< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea73e135b9ac9d3286a0656ef84aa77ca6" > EXPR_EXPR_IS_LESS< / a > ,< / div >
< div class = "line" > < a id = "l02134" name = "l02134" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea822c97af1334ca445a0fd46dfd16c40b" > 2134< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea822c97af1334ca445a0fd46dfd16c40b" > EXPR_EXPR_IS_LESS_OR_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02135" name = "l02135" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea03e855b4a1f2095482a88ac03388d5c3" > 2135< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea03e855b4a1f2095482a88ac03388d5c3" > EXPR_EXPR_IS_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02136" name = "l02136" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afeaa2b501c71087e59e0dea1906ffaabe63" > 2136< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afeaa2b501c71087e59e0dea1906ffaabe63" > EXPR_EXPR_IS_NOT_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02137" name = "l02137" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea4e88d525cd2a35b11b8a16175f6197ab" > 2137< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea4e88d525cd2a35b11b8a16175f6197ab" > EXPR_EXPR_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02138" name = "l02138" > < / a > < span class = "lineno" > 2138< / span > };< / div >
< div class = "line" > < a id = "l02139" name = "l02139" > < / a > < span class = "lineno" > 2139< / span > < / div >
< div class = "line" > < a id = "l02140" name = "l02140" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44" > 2140< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44" > ExprExprConstantExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02141" name = "l02141" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44add01dc8099cbbb28d9aeb816d3345cdf" > 2141< / a > < / span > EXPR_EXPR_CONSTANT_CONDITIONAL = 0,< / div >
< div class = "line" > < a id = "l02142" name = "l02142" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44aa77defdbb56236e669f88a18c563aede" > 2142< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44aa77defdbb56236e669f88a18c563aede" > EXPR_EXPR_CONSTANT_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02143" name = "l02143" > < / a > < span class = "lineno" > 2143< / span > };< / div >
< div class = "line" > < a id = "l02144" name = "l02144" > < / a > < span class = "lineno" > 2144< / span > < / div >
< div class = "line" > < a id = "l02145" name = "l02145" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082c" > 2145< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082c" > ExprConstantExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02146" name = "l02146" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082caedb98a92897e798947ee87fd50b1d471" > 2146< / a > < / span > EXPR_CONSTANT_DIFFERENCE = 0,< / div >
< div class = "line" > < a id = "l02147" name = "l02147" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082cae140fdbd76e5afbe2595bd13678ba960" > 2147< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082cae140fdbd76e5afbe2595bd13678ba960" > EXPR_CONSTANT_DIVIDE< / a > ,< / div >
< div class = "line" > < a id = "l02148" name = "l02148" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca2624a11505d47fde01544da38ecbefce" > 2148< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca2624a11505d47fde01544da38ecbefce" > EXPR_CONSTANT_PROD< / a > ,< / div >
< div class = "line" > < a id = "l02149" name = "l02149" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca50c27197e27e7022f450aada9888a9d1" > 2149< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca50c27197e27e7022f450aada9888a9d1" > EXPR_CONSTANT_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02150" name = "l02150" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca7e3958cb3825bdf7a05631d79debb738" > 2150< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca7e3958cb3825bdf7a05631d79debb738" > EXPR_CONSTANT_MIN< / a > ,< / div >
< div class = "line" > < a id = "l02151" name = "l02151" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082caa6a4fb0890d2f491ba7fa43bc1c9688b" > 2151< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082caa6a4fb0890d2f491ba7fa43bc1c9688b" > EXPR_CONSTANT_SUM< / a > ,< / div >
< div class = "line" > < a id = "l02152" name = "l02152" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca32fea4f03bc3f8c30beed8277ad16a5a" > 2152< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca32fea4f03bc3f8c30beed8277ad16a5a" > EXPR_CONSTANT_IS_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02153" name = "l02153" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca584d2f751a1fdf032c86f07bcf4e24fe" > 2153< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca584d2f751a1fdf032c86f07bcf4e24fe" > EXPR_CONSTANT_IS_NOT_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02154" name = "l02154" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca4c21878ef6b2e734c684a61d084b0d9e" > 2154< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca4c21878ef6b2e734c684a61d084b0d9e" > EXPR_CONSTANT_IS_GREATER_OR_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02155" name = "l02155" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca67ead3f8c6b5a40d1a2c3ef5fb63b906" > 2155< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca67ead3f8c6b5a40d1a2c3ef5fb63b906" > EXPR_CONSTANT_IS_LESS_OR_EQUAL< / a > ,< / div >
< div class = "line" > < a id = "l02156" name = "l02156" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca2f62b258d5a827bd63f993103ec0bef2" > 2156< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca2f62b258d5a827bd63f993103ec0bef2" > EXPR_CONSTANT_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02157" name = "l02157" > < / a > < span class = "lineno" > 2157< / span > };< / div >
< div class = "line" > < a id = "l02158" name = "l02158" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24d" > 2158< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24d" > VarConstantConstantExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02159" name = "l02159" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24da5b2d69b411d657aa0f232a9062dcc1d0" > 2159< / a > < / span > VAR_CONSTANT_CONSTANT_SEMI_CONTINUOUS = 0,< / div >
< div class = "line" > < a id = "l02160" name = "l02160" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24dabef48216e9d32c891d017570c9e638bc" > 2160< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24dabef48216e9d32c891d017570c9e638bc" > VAR_CONSTANT_CONSTANT_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02161" name = "l02161" > < / a > < span class = "lineno" > 2161< / span > };< / div >
< div class = "line" > < a id = "l02162" name = "l02162" > < / a > < span class = "lineno" > 2162< / span > < / div >
< div class = "line" > < a id = "l02163" name = "l02163" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1ecc" > 2163< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1ecc" > VarConstantArrayExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02164" name = "l02164" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1ecca7c34bf537f4d8178d912769b20d9ab2a" > 2164< / a > < / span > VAR_CONSTANT_ARRAY_ELEMENT = 0,< / div >
< div class = "line" > < a id = "l02165" name = "l02165" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1eccadab845ec7630675dc953378647cf35c4" > 2165< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1eccadab845ec7630675dc953378647cf35c4" > VAR_CONSTANT_ARRAY_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02166" name = "l02166" > < / a > < span class = "lineno" > 2166< / span > };< / div >
< div class = "line" > < a id = "l02167" name = "l02167" > < / a > < span class = "lineno" > 2167< / span > < / div >
< div class = "line" > < a id = "l02168" name = "l02168" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddb" > 2168< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddb" > VarArrayConstantArrayExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02169" name = "l02169" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddbaba8984d087f1d6b934634e57add0cdae" > 2169< / a > < / span > VAR_ARRAY_CONSTANT_ARRAY_SCAL_PROD = 0,< / div >
< div class = "line" > < a id = "l02170" name = "l02170" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddba8d7d34d71353796802c476ea764ec7c7" > 2170< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddba8d7d34d71353796802c476ea764ec7c7" > VAR_ARRAY_CONSTANT_ARRAY_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02171" name = "l02171" > < / a > < span class = "lineno" > 2171< / span > };< / div >
< div class = "line" > < a id = "l02172" name = "l02172" > < / a > < span class = "lineno" > 2172< / span > < / div >
< div class = "line" > < a id = "l02173" name = "l02173" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503b" > 2173< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503b" > VarArrayExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02174" name = "l02174" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503bac6616064787f06284ea59f017bdd637a" > 2174< / a > < / span > VAR_ARRAY_MAX = 0,< / div >
< div class = "line" > < a id = "l02175" name = "l02175" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503bab312b39538d98fba96259aad40621005" > 2175< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503bab312b39538d98fba96259aad40621005" > VAR_ARRAY_MIN< / a > ,< / div >
< div class = "line" > < a id = "l02176" name = "l02176" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503ba072f2b932666e9bb3957e50c6ca29130" > 2176< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503ba072f2b932666e9bb3957e50c6ca29130" > VAR_ARRAY_SUM< / a > ,< / div >
< div class = "line" > < a id = "l02177" name = "l02177" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503ba1ed5c1716b347c08d66af5527123f54e" > 2177< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503ba1ed5c1716b347c08d66af5527123f54e" > VAR_ARRAY_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02178" name = "l02178" > < / a > < span class = "lineno" > 2178< / span > };< / div >
< div class = "line" > < a id = "l02179" name = "l02179" > < / a > < span class = "lineno" > 2179< / span > < / div >
< div class = "line" > < a id = "l02180" name = "l02180" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476c" > 2180< / a > < / span > < span class = "keyword" > enum< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476c" > VarArrayConstantExpressionType< / a > {< / div >
< div class = "line" > < a id = "l02181" name = "l02181" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476caebf2a4cbf4f2f568990b8fa64d3d006c" > 2181< / a > < / span > VAR_ARRAY_CONSTANT_INDEX = 0,< / div >
< div class = "line" > < a id = "l02182" name = "l02182" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476ca3ddf574d0de0e5df225a62bc50f2c89f" > 2182< / a > < / span > < a class = "code hl_enumvalue" href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476ca3ddf574d0de0e5df225a62bc50f2c89f" > VAR_ARRAY_CONSTANT_EXPRESSION_MAX< / a > ,< / div >
< div class = "line" > < a id = "l02183" name = "l02183" > < / a > < span class = "lineno" > 2183< / span > };< / div >
< div class = "line" > < a id = "l02184" name = "l02184" > < / a > < span class = "lineno" > 2184< / span > < / div >
< div class = "line" > < a id = "l02185" name = "l02185" > < / a > < span class = "lineno" > 2185< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_model_cache.html" > ModelCache< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver);< / div >
< div class = "line" > < a id = "l02186" name = "l02186" > < / a > < span class = "lineno" > 2186< / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_model_cache.html" > ~ModelCache< / a > ();< / div >
< div class = "line" > < a id = "l02187" name = "l02187" > < / a > < span class = "lineno" > 2187< / span > < / div >
< div class = "line" > < a id = "l02188" name = "l02188" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#aa5b31c976cc6734003d9950e731dfed3" > 2188< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#aa5b31c976cc6734003d9950e731dfed3" > Clear< / a > () = 0;< / div >
< div class = "line" > < a id = "l02189" name = "l02189" > < / a > < span class = "lineno" > 2189< / span > < / div >
< div class = "line" > < a id = "l02191" name = "l02191" > < / a > < span class = "lineno" > 2191< / span > < / div >
< div class = "line" > < a id = "l02192" name = "l02192" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#aa0dbbbfb2ee092c737b17711afa1fe39" > 2192< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#aa0dbbbfb2ee092c737b17711afa1fe39" > FindVoidConstraint< / a > (< a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640" > VoidConstraintType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02193" name = "l02193" > < / a > < span class = "lineno" > 2193< / span > < / div >
< div class = "line" > < a id = "l02194" name = "l02194" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a78f9c320fcfdc3be91db4de41d891deb" > 2194< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a78f9c320fcfdc3be91db4de41d891deb" > InsertVoidConstraint< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l02195" name = "l02195" > < / a > < span class = "lineno" > 2195< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640" > VoidConstraintType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02196" name = "l02196" > < / a > < span class = "lineno" > 2196< / span > < / div >
< div class = "line" > < a id = "l02198" name = "l02198" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a7ac55432b322c146a2526fc19847214c" > 2198< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a7ac55432b322c146a2526fc19847214c" > FindVarConstantConstraint< / a > (< / div >
< div class = "line" > < a id = "l02199" name = "l02199" > < / a > < span class = "lineno" > 2199< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02200" name = "l02200" > < / a > < span class = "lineno" > 2200< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562" > VarConstantConstraintType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02201" name = "l02201" > < / a > < span class = "lineno" > 2201< / span > < / div >
< div class = "line" > < a id = "l02202" name = "l02202" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ab20ce6f268765de9c767948b6a81bfdb" > 2202< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#ab20ce6f268765de9c767948b6a81bfdb" > InsertVarConstantConstraint< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l02203" name = "l02203" > < / a > < span class = "lineno" > 2203< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02204" name = "l02204" > < / a > < span class = "lineno" > 2204< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562" > VarConstantConstraintType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02205" name = "l02205" > < / a > < span class = "lineno" > 2205< / span > < / div >
< div class = "line" > < a id = "l02207" name = "l02207" > < / a > < span class = "lineno" > 2207< / span > < / div >
< div class = "line" > < a id = "l02208" name = "l02208" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#acc6275c15f9a3e9fda8dbf1238f185c9" > 2208< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#acc6275c15f9a3e9fda8dbf1238f185c9" > FindVarConstantConstantConstraint< / a > (< / div >
< div class = "line" > < a id = "l02209" name = "l02209" > < / a > < span class = "lineno" > 2209< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t value1, int64_t value2,< / div >
< div class = "line" > < a id = "l02210" name = "l02210" > < / a > < span class = "lineno" > 2210< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864f" > VarConstantConstantConstraintType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02211" name = "l02211" > < / a > < span class = "lineno" > 2211< / span > < / div >
< div class = "line" > < a id = "l02212" name = "l02212" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#aeeb50bfeff8b6ae139c76a4ec83a6ae7" > 2212< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#aeeb50bfeff8b6ae139c76a4ec83a6ae7" > InsertVarConstantConstantConstraint< / a > (< / div >
< div class = "line" > < a id = "l02213" name = "l02213" > < / a > < span class = "lineno" > 2213< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > , < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t value1, int64_t value2,< / div >
< div class = "line" > < a id = "l02214" name = "l02214" > < / a > < span class = "lineno" > 2214< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864f" > VarConstantConstantConstraintType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02215" name = "l02215" > < / a > < span class = "lineno" > 2215< / span > < / div >
< div class = "line" > < a id = "l02217" name = "l02217" > < / a > < span class = "lineno" > 2217< / span > < / div >
< div class = "line" > < a id = "l02218" name = "l02218" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#aefb96e82103aca70d898b19fb5556048" > 2218< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#aefb96e82103aca70d898b19fb5556048" > FindExprExprConstraint< / a > (< / div >
< div class = "line" > < a id = "l02219" name = "l02219" > < / a > < span class = "lineno" > 2219< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr1, < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr2,< / div >
< div class = "line" > < a id = "l02220" name = "l02220" > < / a > < span class = "lineno" > 2220< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbb" > ExprExprConstraintType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02221" name = "l02221" > < / a > < span class = "lineno" > 2221< / span > < / div >
< div class = "line" > < a id = "l02222" name = "l02222" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#afebe362561fbf18889fd8a1b29be1032" > 2222< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#afebe362561fbf18889fd8a1b29be1032" > InsertExprExprConstraint< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > ,< / div >
< div class = "line" > < a id = "l02223" name = "l02223" > < / a > < span class = "lineno" > 2223< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr1,< / div >
< div class = "line" > < a id = "l02224" name = "l02224" > < / a > < span class = "lineno" > 2224< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr2,< / div >
< div class = "line" > < a id = "l02225" name = "l02225" > < / a > < span class = "lineno" > 2225< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbb" > ExprExprConstraintType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02226" name = "l02226" > < / a > < span class = "lineno" > 2226< / span > < / div >
< div class = "line" > < a id = "l02228" name = "l02228" > < / a > < span class = "lineno" > 2228< / span > < / div >
< div class = "line" > < a id = "l02229" name = "l02229" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a459f96d54b9552f069ec2a94ba57a2f7" > 2229< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a459f96d54b9552f069ec2a94ba57a2f7" > FindExprExpression< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr,< / div >
< div class = "line" > < a id = "l02230" name = "l02230" > < / a > < span class = "lineno" > 2230< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dc" > ExprExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02231" name = "l02231" > < / a > < span class = "lineno" > 2231< / span > < / div >
< div class = "line" > < a id = "l02232" name = "l02232" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#afc8017fcd99c86bb7ae2015a208ff800" > 2232< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#afc8017fcd99c86bb7ae2015a208ff800" > InsertExprExpression< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression,< / div >
< div class = "line" > < a id = "l02233" name = "l02233" > < / a > < span class = "lineno" > 2233< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr,< / div >
< div class = "line" > < a id = "l02234" name = "l02234" > < / a > < span class = "lineno" > 2234< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dc" > ExprExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02235" name = "l02235" > < / a > < span class = "lineno" > 2235< / span > < / div >
< div class = "line" > < a id = "l02237" name = "l02237" > < / a > < span class = "lineno" > 2237< / span > < / div >
< div class = "line" > < a id = "l02238" name = "l02238" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a1dff0028513c78c3b5366883840268fb" > 2238< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a1dff0028513c78c3b5366883840268fb" > FindExprConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02239" name = "l02239" > < / a > < span class = "lineno" > 2239< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02240" name = "l02240" > < / a > < span class = "lineno" > 2240< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082c" > ExprConstantExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02241" name = "l02241" > < / a > < span class = "lineno" > 2241< / span > < / div >
< div class = "line" > < a id = "l02242" name = "l02242" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ad747141d2d707390ff0120482628ef5d" > 2242< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#ad747141d2d707390ff0120482628ef5d" > InsertExprConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02243" name = "l02243" > < / a > < span class = "lineno" > 2243< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression, < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02244" name = "l02244" > < / a > < span class = "lineno" > 2244< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082c" > ExprConstantExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02245" name = "l02245" > < / a > < span class = "lineno" > 2245< / span > < / div >
< div class = "line" > < a id = "l02247" name = "l02247" > < / a > < span class = "lineno" > 2247< / span > < / div >
< div class = "line" > < a id = "l02248" name = "l02248" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ada843938cf8a6c4cd6e8fd5422b14407" > 2248< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#ada843938cf8a6c4cd6e8fd5422b14407" > FindExprExprExpression< / a > (< / div >
< div class = "line" > < a id = "l02249" name = "l02249" > < / a > < span class = "lineno" > 2249< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var1, < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var2,< / div >
< div class = "line" > < a id = "l02250" name = "l02250" > < / a > < span class = "lineno" > 2250< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afe" > ExprExprExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02251" name = "l02251" > < / a > < span class = "lineno" > 2251< / span > < / div >
< div class = "line" > < a id = "l02252" name = "l02252" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a532b0bec45373fd3f093e2212d51cd6f" > 2252< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a532b0bec45373fd3f093e2212d51cd6f" > InsertExprExprExpression< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression,< / div >
< div class = "line" > < a id = "l02253" name = "l02253" > < / a > < span class = "lineno" > 2253< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var1,< / div >
< div class = "line" > < a id = "l02254" name = "l02254" > < / a > < span class = "lineno" > 2254< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var2,< / div >
< div class = "line" > < a id = "l02255" name = "l02255" > < / a > < span class = "lineno" > 2255< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afe" > ExprExprExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02256" name = "l02256" > < / a > < span class = "lineno" > 2256< / span > < / div >
< div class = "line" > < a id = "l02258" name = "l02258" > < / a > < span class = "lineno" > 2258< / span > < / div >
< div class = "line" > < a id = "l02259" name = "l02259" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a5c7515c6c31a40392df8e3628d6f5973" > 2259< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a5c7515c6c31a40392df8e3628d6f5973" > FindExprExprConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02260" name = "l02260" > < / a > < span class = "lineno" > 2260< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var1, < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var2, int64_t < a class = "code hl_variable" href = "variable__and__expressions_8cc.html#a98c17ae8d99a73259ea78de8c4b66254" > constant< / a > ,< / div >
< div class = "line" > < a id = "l02261" name = "l02261" > < / a > < span class = "lineno" > 2261< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44" > ExprExprConstantExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02262" name = "l02262" > < / a > < span class = "lineno" > 2262< / span > < / div >
< div class = "line" > < a id = "l02263" name = "l02263" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a27c24b745d9df6cbe39bf2cee6da940e" > 2263< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a27c24b745d9df6cbe39bf2cee6da940e" > InsertExprExprConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02264" name = "l02264" > < / a > < span class = "lineno" > 2264< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression, < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var1, < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > var2,< / div >
< div class = "line" > < a id = "l02265" name = "l02265" > < / a > < span class = "lineno" > 2265< / span > int64_t < a class = "code hl_variable" href = "variable__and__expressions_8cc.html#a98c17ae8d99a73259ea78de8c4b66254" > constant< / a > , < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44" > ExprExprConstantExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02266" name = "l02266" > < / a > < span class = "lineno" > 2266< / span > < / div >
< div class = "line" > < a id = "l02268" name = "l02268" > < / a > < span class = "lineno" > 2268< / span > < / div >
< div class = "line" > < a id = "l02269" name = "l02269" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a4690cb8d12088e1ff5072444d4731ef8" > 2269< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a4690cb8d12088e1ff5072444d4731ef8" > FindVarConstantConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02270" name = "l02270" > < / a > < span class = "lineno" > 2270< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t value1, int64_t value2,< / div >
< div class = "line" > < a id = "l02271" name = "l02271" > < / a > < span class = "lineno" > 2271< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24d" > VarConstantConstantExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02272" name = "l02272" > < / a > < span class = "lineno" > 2272< / span > < / div >
< div class = "line" > < a id = "l02273" name = "l02273" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#adaf171eb8640c2bbcb290b4ec6fff3c4" > 2273< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#adaf171eb8640c2bbcb290b4ec6fff3c4" > InsertVarConstantConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02274" name = "l02274" > < / a > < span class = "lineno" > 2274< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression, < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t value1,< / div >
< div class = "line" > < a id = "l02275" name = "l02275" > < / a > < span class = "lineno" > 2275< / span > int64_t value2, < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24d" > VarConstantConstantExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02276" name = "l02276" > < / a > < span class = "lineno" > 2276< / span > < / div >
< div class = "line" > < a id = "l02278" name = "l02278" > < / a > < span class = "lineno" > 2278< / span > < / div >
< div class = "line" > < a id = "l02279" name = "l02279" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#aa3a08b9166c1042ad3308823e385ecc3" > 2279< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#aa3a08b9166c1042ad3308823e385ecc3" > FindVarConstantArrayExpression< / a > (< / div >
< div class = "line" > < a id = "l02280" name = "l02280" > < / a > < span class = "lineno" > 2280< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , < span class = "keyword" > const< / span > std::vector< int64_t> & values,< / div >
< div class = "line" > < a id = "l02281" name = "l02281" > < / a > < span class = "lineno" > 2281< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1ecc" > VarConstantArrayExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02282" name = "l02282" > < / a > < span class = "lineno" > 2282< / span > < / div >
< div class = "line" > < a id = "l02283" name = "l02283" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a542da5fee28c0183c3c90fc89f5c34f7" > 2283< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a542da5fee28c0183c3c90fc89f5c34f7" > InsertVarConstantArrayExpression< / a > (< / div >
< div class = "line" > < a id = "l02284" name = "l02284" > < / a > < span class = "lineno" > 2284< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression, < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l02285" name = "l02285" > < / a > < span class = "lineno" > 2285< / span > < span class = "keyword" > const< / span > std::vector< int64_t> & values,< / div >
< div class = "line" > < a id = "l02286" name = "l02286" > < / a > < span class = "lineno" > 2286< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1ecc" > VarConstantArrayExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02287" name = "l02287" > < / a > < span class = "lineno" > 2287< / span > < / div >
< div class = "line" > < a id = "l02289" name = "l02289" > < / a > < span class = "lineno" > 2289< / span > < / div >
< div class = "line" > < a id = "l02290" name = "l02290" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a00f5a81a82268287b31f1e79baba7f40" > 2290< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a00f5a81a82268287b31f1e79baba7f40" > FindVarArrayExpression< / a > (< / div >
< div class = "line" > < a id = "l02291" name = "l02291" > < / a > < span class = "lineno" > 2291< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & vars, < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503b" > VarArrayExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02292" name = "l02292" > < / a > < span class = "lineno" > 2292< / span > < / div >
< div class = "line" > < a id = "l02293" name = "l02293" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a8bf2a7f861f717c6c6276601d6edc84d" > 2293< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a8bf2a7f861f717c6c6276601d6edc84d" > InsertVarArrayExpression< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression,< / div >
< div class = "line" > < a id = "l02294" name = "l02294" > < / a > < span class = "lineno" > 2294< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & vars,< / div >
< div class = "line" > < a id = "l02295" name = "l02295" > < / a > < span class = "lineno" > 2295< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503b" > VarArrayExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02296" name = "l02296" > < / a > < span class = "lineno" > 2296< / span > < / div >
< div class = "line" > < a id = "l02298" name = "l02298" > < / a > < span class = "lineno" > 2298< / span > < / div >
< div class = "line" > < a id = "l02299" name = "l02299" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#a01c14d87a775f0ef2aba3df7e5aaa327" > 2299< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#a01c14d87a775f0ef2aba3df7e5aaa327" > FindVarArrayConstantArrayExpression< / a > (< / div >
< div class = "line" > < a id = "l02300" name = "l02300" > < / a > < span class = "lineno" > 2300< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & vars, < span class = "keyword" > const< / span > std::vector< int64_t> & values,< / div >
< div class = "line" > < a id = "l02301" name = "l02301" > < / a > < span class = "lineno" > 2301< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddb" > VarArrayConstantArrayExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02302" name = "l02302" > < / a > < span class = "lineno" > 2302< / span > < / div >
< div class = "line" > < a id = "l02303" name = "l02303" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#acd23094bd0807a2bb20162c9ddd96df3" > 2303< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#acd23094bd0807a2bb20162c9ddd96df3" > InsertVarArrayConstantArrayExpression< / a > (< / div >
< div class = "line" > < a id = "l02304" name = "l02304" > < / a > < span class = "lineno" > 2304< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression, < span class = "keyword" > const< / span > std::vector< IntVar*> & < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > ,< / div >
< div class = "line" > < a id = "l02305" name = "l02305" > < / a > < span class = "lineno" > 2305< / span > < span class = "keyword" > const< / span > std::vector< int64_t> & values,< / div >
< div class = "line" > < a id = "l02306" name = "l02306" > < / a > < span class = "lineno" > 2306< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddb" > VarArrayConstantArrayExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02307" name = "l02307" > < / a > < span class = "lineno" > 2307< / span > < / div >
< div class = "line" > < a id = "l02309" name = "l02309" > < / a > < span class = "lineno" > 2309< / span > < / div >
< div class = "line" > < a id = "l02310" name = "l02310" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#ac0ce0f2a0be24edf0baaa41c7e6cbcec" > 2310< / a > < / span > < span class = "keyword" > virtual< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#ac0ce0f2a0be24edf0baaa41c7e6cbcec" > FindVarArrayConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02311" name = "l02311" > < / a > < span class = "lineno" > 2311< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & vars, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02312" name = "l02312" > < / a > < span class = "lineno" > 2312< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476c" > VarArrayConstantExpressionType< / a > type) < span class = "keyword" > const< / span > = 0;< / div >
< div class = "line" > < a id = "l02313" name = "l02313" > < / a > < span class = "lineno" > 2313< / span > < / div >
< div class = "line" > < a id = "l02314" name = "l02314" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_cache.html#aac046a1be1d3ab24e9ff08b9a74bf9c0" > 2314< / a > < / span > < span class = "keyword" > virtual< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_model_cache.html#aac046a1be1d3ab24e9ff08b9a74bf9c0" > InsertVarArrayConstantExpression< / a > (< / div >
< div class = "line" > < a id = "l02315" name = "l02315" > < / a > < span class = "lineno" > 2315< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expression, < span class = "keyword" > const< / span > std::vector< IntVar*> & < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > , int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02316" name = "l02316" > < / a > < span class = "lineno" > 2316< / span > < a class = "code hl_enumeration" href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476c" > VarArrayConstantExpressionType< / a > type) = 0;< / div >
< div class = "line" > < a id = "l02317" name = "l02317" > < / a > < span class = "lineno" > 2317< / span > < / div >
< div class = "line" > < a id = "l02318" name = "l02318" > < / a > < span class = "lineno" > 2318< / span > < a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * solver() < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02319" name = "l02319" > < / a > < span class = "lineno" > 2319< / span > < / div >
< div class = "line" > < a id = "l02320" name = "l02320" > < / a > < span class = "lineno" > 2320< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02321" name = "l02321" > < / a > < span class = "lineno" > 2321< / span > < a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver_;< / div >
< div class = "line" > < a id = "l02322" name = "l02322" > < / a > < span class = "lineno" > 2322< / span > };< / div >
< div class = "line" > < a id = "l02323" name = "l02323" > < / a > < span class = "lineno" > 2323< / span > < / div >
< div class = "line" > < a id = "l02325" name = "l02325" > < / a > < span class = "lineno" > 2325< / span > < span class = "preprocessor" > #if !defined(SWIG)< / span > < / div >
< div class = "line" > < a id = "l02326" name = "l02326" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_argument_holder.html" > 2326< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_argument_holder.html" > ArgumentHolder< / a > {< / div >
< div class = "line" > < a id = "l02327" name = "l02327" > < / a > < span class = "lineno" > 2327< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02329" name = "l02329" > < / a > < span class = "lineno" > 2329< / span > < span class = "keyword" > const< / span > std::string& TypeName() < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02330" name = "l02330" > < / a > < span class = "lineno" > 2330< / span > < span class = "keywordtype" > void< / span > SetTypeName(< span class = "keyword" > const< / span > std::string& type_name);< / div >
< div class = "line" > < a id = "l02331" name = "l02331" > < / a > < span class = "lineno" > 2331< / span > < / div >
< div class = "line" > < a id = "l02333" name = "l02333" > < / a > < span class = "lineno" > 2333< / span > < span class = "keywordtype" > void< / span > SetIntegerArgument(< span class = "keyword" > const< / span > std::string& arg_name, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > );< / div >
< div class = "line" > < a id = "l02334" name = "l02334" > < / a > < span class = "lineno" > 2334< / span > < span class = "keywordtype" > void< / span > SetIntegerArrayArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02335" name = "l02335" > < / a > < span class = "lineno" > 2335< / span > < span class = "keyword" > const< / span > std::vector< int64_t> & values);< / div >
< div class = "line" > < a id = "l02336" name = "l02336" > < / a > < span class = "lineno" > 2336< / span > < span class = "keywordtype" > void< / span > SetIntegerMatrixArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02337" name = "l02337" > < / a > < span class = "lineno" > 2337< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_tuple_set.html" > IntTupleSet< / a > & values);< / div >
< div class = "line" > < a id = "l02338" name = "l02338" > < / a > < span class = "lineno" > 2338< / span > < span class = "keywordtype" > void< / span > SetIntegerExpressionArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02339" name = "l02339" > < / a > < span class = "lineno" > 2339< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr);< / div >
< div class = "line" > < a id = "l02340" name = "l02340" > < / a > < span class = "lineno" > 2340< / span > < span class = "keywordtype" > void< / span > SetIntegerVariableArrayArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02341" name = "l02341" > < / a > < span class = "lineno" > 2341< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & vars);< / div >
< div class = "line" > < a id = "l02342" name = "l02342" > < / a > < span class = "lineno" > 2342< / span > < span class = "keywordtype" > void< / span > SetIntervalArgument(< span class = "keyword" > const< / span > std::string& arg_name, < a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > );< / div >
< div class = "line" > < a id = "l02343" name = "l02343" > < / a > < span class = "lineno" > 2343< / span > < span class = "keywordtype" > void< / span > SetIntervalArrayArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02344" name = "l02344" > < / a > < span class = "lineno" > 2344< / span > < span class = "keyword" > const< / span > std::vector< IntervalVar*> & vars);< / div >
< div class = "line" > < a id = "l02345" name = "l02345" > < / a > < span class = "lineno" > 2345< / span > < span class = "keywordtype" > void< / span > SetSequenceArgument(< span class = "keyword" > const< / span > std::string& arg_name, < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > < a class = "code hl_variable" href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > );< / div >
< div class = "line" > < a id = "l02346" name = "l02346" > < / a > < span class = "lineno" > 2346< / span > < span class = "keywordtype" > void< / span > SetSequenceArrayArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02347" name = "l02347" > < / a > < span class = "lineno" > 2347< / span > < span class = "keyword" > const< / span > std::vector< SequenceVar*> & vars);< / div >
< div class = "line" > < a id = "l02348" name = "l02348" > < / a > < span class = "lineno" > 2348< / span > < / div >
< div class = "line" > < a id = "l02350" name = "l02350" > < / a > < span class = "lineno" > 2350< / span > < span class = "keywordtype" > bool< / span > HasIntegerExpressionArgument(< span class = "keyword" > const< / span > std::string& arg_name) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02351" name = "l02351" > < / a > < span class = "lineno" > 2351< / span > < span class = "keywordtype" > bool< / span > HasIntegerVariableArrayArgument(< span class = "keyword" > const< / span > std::string& arg_name) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02352" name = "l02352" > < / a > < span class = "lineno" > 2352< / span > < / div >
< div class = "line" > < a id = "l02354" name = "l02354" > < / a > < span class = "lineno" > 2354< / span > int64_t FindIntegerArgumentWithDefault(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02355" name = "l02355" > < / a > < span class = "lineno" > 2355< / span > int64_t def) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02356" name = "l02356" > < / a > < span class = "lineno" > 2356< / span > int64_t FindIntegerArgumentOrDie(< span class = "keyword" > const< / span > std::string& arg_name) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02357" name = "l02357" > < / a > < span class = "lineno" > 2357< / span > < span class = "keyword" > const< / span > std::vector< int64_t> & FindIntegerArrayArgumentOrDie(< / div >
< div class = "line" > < a id = "l02358" name = "l02358" > < / a > < span class = "lineno" > 2358< / span > < span class = "keyword" > const< / span > std::string& arg_name) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02359" name = "l02359" > < / a > < span class = "lineno" > 2359< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_tuple_set.html" > IntTupleSet< / a > & FindIntegerMatrixArgumentOrDie(< / div >
< div class = "line" > < a id = "l02360" name = "l02360" > < / a > < span class = "lineno" > 2360< / span > < span class = "keyword" > const< / span > std::string& arg_name) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02361" name = "l02361" > < / a > < span class = "lineno" > 2361< / span > < / div >
< div class = "line" > < a id = "l02362" name = "l02362" > < / a > < span class = "lineno" > 2362< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * FindIntegerExpressionArgumentOrDie(< / div >
< div class = "line" > < a id = "l02363" name = "l02363" > < / a > < span class = "lineno" > 2363< / span > < span class = "keyword" > const< / span > std::string& arg_name) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02364" name = "l02364" > < / a > < span class = "lineno" > 2364< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & FindIntegerVariableArrayArgumentOrDie(< / div >
< div class = "line" > < a id = "l02365" name = "l02365" > < / a > < span class = "lineno" > 2365< / span > < span class = "keyword" > const< / span > std::string& arg_name) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02366" name = "l02366" > < / a > < span class = "lineno" > 2366< / span > < / div >
< div class = "line" > < a id = "l02367" name = "l02367" > < / a > < span class = "lineno" > 2367< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02368" name = "l02368" > < / a > < span class = "lineno" > 2368< / span > std::string type_name_;< / div >
< div class = "line" > < a id = "l02369" name = "l02369" > < / a > < span class = "lineno" > 2369< / span > absl::flat_hash_map< std::string, int64_t> integer_argument_;< / div >
< div class = "line" > < a id = "l02370" name = "l02370" > < / a > < span class = "lineno" > 2370< / span > absl::flat_hash_map< std::string, std::vector< int64_t> > < / div >
< div class = "line" > < a id = "l02371" name = "l02371" > < / a > < span class = "lineno" > 2371< / span > integer_array_argument_;< / div >
< div class = "line" > < a id = "l02372" name = "l02372" > < / a > < span class = "lineno" > 2372< / span > absl::flat_hash_map< std::string, IntTupleSet> matrix_argument_;< / div >
< div class = "line" > < a id = "l02373" name = "l02373" > < / a > < span class = "lineno" > 2373< / span > absl::flat_hash_map< std::string, IntExpr*> integer_expression_argument_;< / div >
< div class = "line" > < a id = "l02374" name = "l02374" > < / a > < span class = "lineno" > 2374< / span > absl::flat_hash_map< std::string, IntervalVar*> interval_argument_;< / div >
< div class = "line" > < a id = "l02375" name = "l02375" > < / a > < span class = "lineno" > 2375< / span > absl::flat_hash_map< std::string, SequenceVar*> sequence_argument_;< / div >
< div class = "line" > < a id = "l02376" name = "l02376" > < / a > < span class = "lineno" > 2376< / span > absl::flat_hash_map< std::string, std::vector< IntVar*> > < / div >
< div class = "line" > < a id = "l02377" name = "l02377" > < / a > < span class = "lineno" > 2377< / span > integer_variable_array_argument_;< / div >
< div class = "line" > < a id = "l02378" name = "l02378" > < / a > < span class = "lineno" > 2378< / span > absl::flat_hash_map< std::string, std::vector< IntervalVar*> > < / div >
< div class = "line" > < a id = "l02379" name = "l02379" > < / a > < span class = "lineno" > 2379< / span > interval_array_argument_;< / div >
< div class = "line" > < a id = "l02380" name = "l02380" > < / a > < span class = "lineno" > 2380< / span > absl::flat_hash_map< std::string, std::vector< SequenceVar*> > < / div >
< div class = "line" > < a id = "l02381" name = "l02381" > < / a > < span class = "lineno" > 2381< / span > sequence_array_argument_;< / div >
< div class = "line" > < a id = "l02382" name = "l02382" > < / a > < span class = "lineno" > 2382< / span > };< / div >
< div class = "line" > < a id = "l02383" name = "l02383" > < / a > < span class = "lineno" > 2383< / span > < / div >
< div class = "line" > < a id = "l02385" name = "l02385" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_model_parser.html" > 2385< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_model_parser.html" > ModelParser< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_model_visitor.html" > ModelVisitor< / a > {< / div >
< div class = "line" > < a id = "l02386" name = "l02386" > < / a > < span class = "lineno" > 2386< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02387" name = "l02387" > < / a > < span class = "lineno" > 2387< / span > < a class = "code hl_class" href = "classoperations__research_1_1_model_parser.html" > ModelParser< / a > ();< / div >
< div class = "line" > < a id = "l02388" name = "l02388" > < / a > < span class = "lineno" > 2388< / span > < / div >
< div class = "line" > < a id = "l02389" name = "l02389" > < / a > < span class = "lineno" > 2389< / span > < a class = "code hl_class" href = "classoperations__research_1_1_model_parser.html" > ~ModelParser< / a > () < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02390" name = "l02390" > < / a > < span class = "lineno" > 2390< / span > < / div >
< div class = "line" > < a id = "l02392" name = "l02392" > < / a > < span class = "lineno" > 2392< / span > < span class = "keywordtype" > void< / span > BeginVisitModel(< span class = "keyword" > const< / span > std::string& solver_name) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02393" name = "l02393" > < / a > < span class = "lineno" > 2393< / span > < span class = "keywordtype" > void< / span > EndVisitModel(< span class = "keyword" > const< / span > std::string& solver_name) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02394" name = "l02394" > < / a > < span class = "lineno" > 2394< / span > < span class = "keywordtype" > void< / span > BeginVisitConstraint(< span class = "keyword" > const< / span > std::string& type_name,< / div >
< div class = "line" > < a id = "l02395" name = "l02395" > < / a > < span class = "lineno" > 2395< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > constraint) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02396" name = "l02396" > < / a > < span class = "lineno" > 2396< / span > < span class = "keywordtype" > void< / span > EndVisitConstraint(< span class = "keyword" > const< / span > std::string& type_name,< / div >
< div class = "line" > < a id = "l02397" name = "l02397" > < / a > < span class = "lineno" > 2397< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_constraint.html" > Constraint< / a > * < span class = "keyword" > const< / span > constraint) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02398" name = "l02398" > < / a > < span class = "lineno" > 2398< / span > < span class = "keywordtype" > void< / span > BeginVisitIntegerExpression(< span class = "keyword" > const< / span > std::string& type_name,< / div >
< div class = "line" > < a id = "l02399" name = "l02399" > < / a > < span class = "lineno" > 2399< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02400" name = "l02400" > < / a > < span class = "lineno" > 2400< / span > < span class = "keywordtype" > void< / span > EndVisitIntegerExpression(< span class = "keyword" > const< / span > std::string& type_name,< / div >
< div class = "line" > < a id = "l02401" name = "l02401" > < / a > < span class = "lineno" > 2401< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > expr) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02402" name = "l02402" > < / a > < span class = "lineno" > 2402< / span > < span class = "keywordtype" > void< / span > VisitIntegerVariable(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > variable,< / div >
< div class = "line" > < a id = "l02403" name = "l02403" > < / a > < span class = "lineno" > 2403< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > delegate) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02404" name = "l02404" > < / a > < span class = "lineno" > 2404< / span > < span class = "keywordtype" > void< / span > VisitIntegerVariable(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > variable,< / div >
< div class = "line" > < a id = "l02405" name = "l02405" > < / a > < span class = "lineno" > 2405< / span > < span class = "keyword" > const< / span > std::string& operation, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02406" name = "l02406" > < / a > < span class = "lineno" > 2406< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_var.html" > IntVar< / a > * < span class = "keyword" > const< / span > delegate) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02407" name = "l02407" > < / a > < span class = "lineno" > 2407< / span > < span class = "keywordtype" > void< / span > VisitIntervalVariable(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > variable,< / div >
< div class = "line" > < a id = "l02408" name = "l02408" > < / a > < span class = "lineno" > 2408< / span > < span class = "keyword" > const< / span > std::string& operation, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ,< / div >
< div class = "line" > < a id = "l02409" name = "l02409" > < / a > < span class = "lineno" > 2409< / span > < a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > delegate) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02410" name = "l02410" > < / a > < span class = "lineno" > 2410< / span > < span class = "keywordtype" > void< / span > VisitSequenceVariable(< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > variable) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02412" name = "l02412" > < / a > < span class = "lineno" > 2412< / span > < span class = "keywordtype" > void< / span > VisitIntegerArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02413" name = "l02413" > < / a > < span class = "lineno" > 2413< / span > int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02414" name = "l02414" > < / a > < span class = "lineno" > 2414< / span > < span class = "keywordtype" > void< / span > VisitIntegerArrayArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02415" name = "l02415" > < / a > < span class = "lineno" > 2415< / span > < span class = "keyword" > const< / span > std::vector< int64_t> & values) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02416" name = "l02416" > < / a > < span class = "lineno" > 2416< / span > < span class = "keywordtype" > void< / span > VisitIntegerMatrixArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02417" name = "l02417" > < / a > < span class = "lineno" > 2417< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_tuple_set.html" > IntTupleSet< / a > & values) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02419" name = "l02419" > < / a > < span class = "lineno" > 2419< / span > < span class = "keywordtype" > void< / span > VisitIntegerExpressionArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02420" name = "l02420" > < / a > < span class = "lineno" > 2420< / span > < a class = "code hl_class" href = "classoperations__research_1_1_int_expr.html" > IntExpr< / a > * < span class = "keyword" > const< / span > argument) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02421" name = "l02421" > < / a > < span class = "lineno" > 2421< / span > < span class = "keywordtype" > void< / span > VisitIntegerVariableArrayArgument(< / div >
< div class = "line" > < a id = "l02422" name = "l02422" > < / a > < span class = "lineno" > 2422< / span > < span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02423" name = "l02423" > < / a > < span class = "lineno" > 2423< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & arguments) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02425" name = "l02425" > < / a > < span class = "lineno" > 2425< / span > < span class = "keywordtype" > void< / span > VisitIntervalArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02426" name = "l02426" > < / a > < span class = "lineno" > 2426< / span > < a class = "code hl_class" href = "classoperations__research_1_1_interval_var.html" > IntervalVar< / a > * < span class = "keyword" > const< / span > argument) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02427" name = "l02427" > < / a > < span class = "lineno" > 2427< / span > < span class = "keywordtype" > void< / span > VisitIntervalArrayArgument(< / div >
< div class = "line" > < a id = "l02428" name = "l02428" > < / a > < span class = "lineno" > 2428< / span > < span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02429" name = "l02429" > < / a > < span class = "lineno" > 2429< / span > < span class = "keyword" > const< / span > std::vector< IntervalVar*> & arguments) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02431" name = "l02431" > < / a > < span class = "lineno" > 2431< / span > < span class = "keywordtype" > void< / span > VisitSequenceArgument(< span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02432" name = "l02432" > < / a > < span class = "lineno" > 2432< / span > < a class = "code hl_class" href = "classoperations__research_1_1_sequence_var.html" > SequenceVar< / a > * < span class = "keyword" > const< / span > argument) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02433" name = "l02433" > < / a > < span class = "lineno" > 2433< / span > < span class = "keywordtype" > void< / span > VisitSequenceArrayArgument(< / div >
< div class = "line" > < a id = "l02434" name = "l02434" > < / a > < span class = "lineno" > 2434< / span > < span class = "keyword" > const< / span > std::string& arg_name,< / div >
< div class = "line" > < a id = "l02435" name = "l02435" > < / a > < span class = "lineno" > 2435< / span > < span class = "keyword" > const< / span > std::vector< SequenceVar*> & arguments) < span class = "keyword" > override< / span > ;< / div >
< div class = "line" > < a id = "l02436" name = "l02436" > < / a > < span class = "lineno" > 2436< / span > < / div >
< div class = "line" > < a id = "l02437" name = "l02437" > < / a > < span class = "lineno" > 2437< / span > < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a id = "l02438" name = "l02438" > < / a > < span class = "lineno" > 2438< / span > < span class = "keywordtype" > void< / span > PushArgumentHolder();< / div >
< div class = "line" > < a id = "l02439" name = "l02439" > < / a > < span class = "lineno" > 2439< / span > < span class = "keywordtype" > void< / span > PopArgumentHolder();< / div >
< div class = "line" > < a id = "l02440" name = "l02440" > < / a > < span class = "lineno" > 2440< / span > < a class = "code hl_class" href = "classoperations__research_1_1_argument_holder.html" > ArgumentHolder< / a > * Top() < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l02441" name = "l02441" > < / a > < span class = "lineno" > 2441< / span > < / div >
< div class = "line" > < a id = "l02442" name = "l02442" > < / a > < span class = "lineno" > 2442< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02443" name = "l02443" > < / a > < span class = "lineno" > 2443< / span > std::vector< ArgumentHolder*> holders_;< / div >
< div class = "line" > < a id = "l02444" name = "l02444" > < / a > < span class = "lineno" > 2444< / span > };< / div >
< div class = "line" > < a id = "l02445" name = "l02445" > < / a > < span class = "lineno" > 2445< / span > < / div >
< div class = "line" > < a id = "l02446" name = "l02446" > < / a > < span class = "lineno" > 2446< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02447" name = "l02447" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_array_with_offset.html" > 2447< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_array_with_offset.html" > ArrayWithOffset< / a > : < span class = "keyword" > public< / span > < a class = "code hl_class" href = "classoperations__research_1_1_base_object.html" > BaseObject< / a > {< / div >
< div class = "line" > < a id = "l02448" name = "l02448" > < / a > < span class = "lineno" > 2448< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02449" name = "l02449" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_array_with_offset.html#ad071686565d52814817f6d90d320803a" > 2449< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_array_with_offset.html#ad071686565d52814817f6d90d320803a" > ArrayWithOffset< / a > (int64_t index_min, int64_t index_max)< / div >
< div class = "line" > < a id = "l02450" name = "l02450" > < / a > < span class = "lineno" > 2450< / span > : index_min_(index_min),< / div >
< div class = "line" > < a id = "l02451" name = "l02451" > < / a > < span class = "lineno" > 2451< / span > index_max_(index_max),< / div >
< div class = "line" > < a id = "l02452" name = "l02452" > < / a > < span class = "lineno" > 2452< / span > values_(new T[index_max - index_min + 1]) {< / div >
< div class = "line" > < a id = "l02453" name = "l02453" > < / a > < span class = "lineno" > 2453< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a4395e95bab44e222cb2e77251017a0e2" > DCHECK_LE< / a > (index_min, index_max);< / div >
< div class = "line" > < a id = "l02454" name = "l02454" > < / a > < span class = "lineno" > 2454< / span > }< / div >
< div class = "line" > < a id = "l02455" name = "l02455" > < / a > < span class = "lineno" > 2455< / span > < / div >
< div class = "line" > < a id = "l02456" name = "l02456" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_array_with_offset.html#a88e32439ca2aef1df5d8a59d02dc145c" > 2456< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_array_with_offset.html#a88e32439ca2aef1df5d8a59d02dc145c" > ~ArrayWithOffset< / a > ()< span class = "keyword" > override < / span > {}< / div >
< div class = "line" > < a id = "l02457" name = "l02457" > < / a > < span class = "lineno" > 2457< / span > < / div >
< div class = "line" > < a id = "l02458" name = "l02458" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_array_with_offset.html#a77762357fb482084e1500646aba19f02" > 2458< / a > < / span > < span class = "keyword" > virtual< / span > T < a class = "code hl_function" href = "classoperations__research_1_1_array_with_offset.html#a77762357fb482084e1500646aba19f02" > Evaluate< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02459" name = "l02459" > < / a > < span class = "lineno" > 2459< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , index_min_);< / div >
< div class = "line" > < a id = "l02460" name = "l02460" > < / a > < span class = "lineno" > 2460< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a4395e95bab44e222cb2e77251017a0e2" > DCHECK_LE< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , index_max_);< / div >
< div class = "line" > < a id = "l02461" name = "l02461" > < / a > < span class = "lineno" > 2461< / span > < span class = "keywordflow" > return< / span > values_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > - index_min_];< / div >
< div class = "line" > < a id = "l02462" name = "l02462" > < / a > < span class = "lineno" > 2462< / span > }< / div >
< div class = "line" > < a id = "l02463" name = "l02463" > < / a > < span class = "lineno" > 2463< / span > < / div >
< div class = "line" > < a id = "l02464" name = "l02464" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_array_with_offset.html#ad117938b130bcd505b71898bcdef3450" > 2464< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_array_with_offset.html#ad117938b130bcd505b71898bcdef3450" > SetValue< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , T < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02465" name = "l02465" > < / a > < span class = "lineno" > 2465< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , index_min_);< / div >
< div class = "line" > < a id = "l02466" name = "l02466" > < / a > < span class = "lineno" > 2466< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a4395e95bab44e222cb2e77251017a0e2" > DCHECK_LE< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , index_max_);< / div >
< div class = "line" > < a id = "l02467" name = "l02467" > < / a > < span class = "lineno" > 2467< / span > values_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > - index_min_] = < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ;< / div >
< div class = "line" > < a id = "l02468" name = "l02468" > < / a > < span class = "lineno" > 2468< / span > }< / div >
< div class = "line" > < a id = "l02469" name = "l02469" > < / a > < span class = "lineno" > 2469< / span > < / div >
< div class = "line" > < a id = "l02470" name = "l02470" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_array_with_offset.html#aed804747c45a7e1caf81461f9e45dd91" > 2470< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_array_with_offset.html#aed804747c45a7e1caf81461f9e45dd91" > DebugString< / a > ()< span class = "keyword" > const override < / span > { < span class = "keywordflow" > return< / span > < span class = "stringliteral" > " ArrayWithOffset" < / span > ; }< / div >
< div class = "line" > < a id = "l02471" name = "l02471" > < / a > < span class = "lineno" > 2471< / span > < / div >
< div class = "line" > < a id = "l02472" name = "l02472" > < / a > < span class = "lineno" > 2472< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02473" name = "l02473" > < / a > < span class = "lineno" > 2473< / span > < span class = "keyword" > const< / span > int64_t index_min_;< / div >
< div class = "line" > < a id = "l02474" name = "l02474" > < / a > < span class = "lineno" > 2474< / span > < span class = "keyword" > const< / span > int64_t index_max_;< / div >
< div class = "line" > < a id = "l02475" name = "l02475" > < / a > < span class = "lineno" > 2475< / span > std::unique_ptr< T[]> values_;< / div >
< div class = "line" > < a id = "l02476" name = "l02476" > < / a > < span class = "lineno" > 2476< / span > };< / div >
< div class = "line" > < a id = "l02477" name = "l02477" > < / a > < span class = "lineno" > 2477< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // SWIG< / span > < / div >
< div class = "line" > < a id = "l02478" name = "l02478" > < / a > < span class = "lineno" > 2478< / span > < / div >
< div class = "line" > < a id = "l02483" name = "l02483" > < / a > < span class = "lineno" > 2483< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T, < span class = "keyword" > class< / span > C> < / div >
< div class = "line" > < a id = "l02484" name = "l02484" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_growing_array.html" > 2484< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_growing_array.html" > RevGrowingArray< / a > {< / div >
< div class = "line" > < a id = "l02485" name = "l02485" > < / a > < span class = "lineno" > 2485< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02486" name = "l02486" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_growing_array.html#ae30876de177c25a1bb60638d216e7026" > 2486< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_growing_array.html#ae30876de177c25a1bb60638d216e7026" > RevGrowingArray< / a > (int64_t block_size)< / div >
< div class = "line" > < a id = "l02487" name = "l02487" > < / a > < span class = "lineno" > 2487< / span > : block_size_(block_size), block_offset_(0) {< / div >
< div class = "line" > < a id = "l02488" name = "l02488" > < / a > < span class = "lineno" > 2488< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a7e03ec13560fa94a8fea569960d7efc6" > CHECK_GT< / a > (block_size, 0);< / div >
< div class = "line" > < a id = "l02489" name = "l02489" > < / a > < span class = "lineno" > 2489< / span > }< / div >
< div class = "line" > < a id = "l02490" name = "l02490" > < / a > < span class = "lineno" > 2490< / span > < / div >
< div class = "line" > < a id = "l02491" name = "l02491" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_growing_array.html#ab75ed69877226a6c1c51af3babe02b94" > 2491< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_growing_array.html#ab75ed69877226a6c1c51af3babe02b94" > ~RevGrowingArray< / a > () {< / div >
< div class = "line" > < a id = "l02492" name = "l02492" > < / a > < span class = "lineno" > 2492< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < elements_.size(); ++i) {< / div >
< div class = "line" > < a id = "l02493" name = "l02493" > < / a > < span class = "lineno" > 2493< / span > < span class = "keyword" > delete< / span > [] elements_[i];< / div >
< div class = "line" > < a id = "l02494" name = "l02494" > < / a > < span class = "lineno" > 2494< / span > }< / div >
< div class = "line" > < a id = "l02495" name = "l02495" > < / a > < span class = "lineno" > 2495< / span > }< / div >
< div class = "line" > < a id = "l02496" name = "l02496" > < / a > < span class = "lineno" > 2496< / span > < / div >
< div class = "line" > < a id = "l02497" name = "l02497" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_growing_array.html#a71a4ac053fc13b4bfa675ceff2fab024" > 2497< / a > < / span > T < a class = "code hl_function" href = "classoperations__research_1_1_rev_growing_array.html#a71a4ac053fc13b4bfa675ceff2fab024" > At< / a > (int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02498" name = "l02498" > < / a > < span class = "lineno" > 2498< / span > < span class = "keyword" > const< / span > int64_t block_index = ComputeBlockIndex(< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l02499" name = "l02499" > < / a > < span class = "lineno" > 2499< / span > < span class = "keyword" > const< / span > int64_t relative_index = block_index - block_offset_;< / div >
< div class = "line" > < a id = "l02500" name = "l02500" > < / a > < span class = "lineno" > 2500< / span > < span class = "keywordflow" > if< / span > (relative_index < 0 || relative_index > = elements_.size()) {< / div >
< div class = "line" > < a id = "l02501" name = "l02501" > < / a > < span class = "lineno" > 2501< / span > < span class = "keywordflow" > return< / span > T();< / div >
< div class = "line" > < a id = "l02502" name = "l02502" > < / a > < span class = "lineno" > 2502< / span > }< / div >
< div class = "line" > < a id = "l02503" name = "l02503" > < / a > < span class = "lineno" > 2503< / span > < span class = "keyword" > const< / span > T* block = elements_[relative_index];< / div >
< div class = "line" > < a id = "l02504" name = "l02504" > < / a > < span class = "lineno" > 2504< / span > < span class = "keywordflow" > return< / span > block != < span class = "keyword" > nullptr< / span > ? block[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > - block_index * block_size_] : T();< / div >
< div class = "line" > < a id = "l02505" name = "l02505" > < / a > < span class = "lineno" > 2505< / span > }< / div >
< div class = "line" > < a id = "l02506" name = "l02506" > < / a > < span class = "lineno" > 2506< / span > < / div >
< div class = "line" > < a id = "l02507" name = "l02507" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_growing_array.html#a4ead353fd8ad8d4432366add9247f991" > 2507< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_growing_array.html#a4ead353fd8ad8d4432366add9247f991" > RevInsert< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, int64_t < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , T < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02508" name = "l02508" > < / a > < span class = "lineno" > 2508< / span > < span class = "keyword" > const< / span > int64_t block_index = ComputeBlockIndex(< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > );< / div >
< div class = "line" > < a id = "l02509" name = "l02509" > < / a > < span class = "lineno" > 2509< / span > T* < span class = "keyword" > const< / span > block = GetOrCreateBlock(block_index);< / div >
< div class = "line" > < a id = "l02510" name = "l02510" > < / a > < span class = "lineno" > 2510< / span > < span class = "keyword" > const< / span > int64_t residual = < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > - block_index * block_size_;< / div >
< div class = "line" > < a id = "l02511" name = "l02511" > < / a > < span class = "lineno" > 2511< / span > solver-> < a class = "code hl_function" href = "classoperations__research_1_1_solver.html#a675d33a9ef9aa399017fb68e652c7a5c" > SaveAndSetValue< / a > (< span class = "keyword" > reinterpret_cast< < / span > C*< span class = "keyword" > > < / span > (& block[residual]),< / div >
< div class = "line" > < a id = "l02512" name = "l02512" > < / a > < span class = "lineno" > 2512< / span > < span class = "keyword" > reinterpret_cast< < / span > C< span class = "keyword" > > < / span > (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ));< / div >
< div class = "line" > < a id = "l02513" name = "l02513" > < / a > < span class = "lineno" > 2513< / span > }< / div >
< div class = "line" > < a id = "l02514" name = "l02514" > < / a > < span class = "lineno" > 2514< / span > < / div >
< div class = "line" > < a id = "l02515" name = "l02515" > < / a > < span class = "lineno" > 2515< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02516" name = "l02516" > < / a > < span class = "lineno" > 2516< / span > T* NewBlock()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02517" name = "l02517" > < / a > < span class = "lineno" > 2517< / span > T* < span class = "keyword" > const< / span > result = < span class = "keyword" > new< / span > T[block_size_];< / div >
< div class = "line" > < a id = "l02518" name = "l02518" > < / a > < span class = "lineno" > 2518< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < block_size_; ++i) {< / div >
< div class = "line" > < a id = "l02519" name = "l02519" > < / a > < span class = "lineno" > 2519< / span > result[i] = T();< / div >
< div class = "line" > < a id = "l02520" name = "l02520" > < / a > < span class = "lineno" > 2520< / span > }< / div >
< div class = "line" > < a id = "l02521" name = "l02521" > < / a > < span class = "lineno" > 2521< / span > < span class = "keywordflow" > return< / span > result;< / div >
< div class = "line" > < a id = "l02522" name = "l02522" > < / a > < span class = "lineno" > 2522< / span > }< / div >
< div class = "line" > < a id = "l02523" name = "l02523" > < / a > < span class = "lineno" > 2523< / span > < / div >
< div class = "line" > < a id = "l02524" name = "l02524" > < / a > < span class = "lineno" > 2524< / span > T* GetOrCreateBlock(< span class = "keywordtype" > int< / span > block_index) {< / div >
< div class = "line" > < a id = "l02525" name = "l02525" > < / a > < span class = "lineno" > 2525< / span > < span class = "keywordflow" > if< / span > (elements_.size() == 0) {< / div >
< div class = "line" > < a id = "l02526" name = "l02526" > < / a > < span class = "lineno" > 2526< / span > block_offset_ = block_index;< / div >
< div class = "line" > < a id = "l02527" name = "l02527" > < / a > < span class = "lineno" > 2527< / span > GrowUp(block_index);< / div >
< div class = "line" > < a id = "l02528" name = "l02528" > < / a > < span class = "lineno" > 2528< / span > } < span class = "keywordflow" > else< / span > < span class = "keywordflow" > if< / span > (block_index < block_offset_) {< / div >
< div class = "line" > < a id = "l02529" name = "l02529" > < / a > < span class = "lineno" > 2529< / span > GrowDown(block_index);< / div >
< div class = "line" > < a id = "l02530" name = "l02530" > < / a > < span class = "lineno" > 2530< / span > } < span class = "keywordflow" > else< / span > < span class = "keywordflow" > if< / span > (block_index - block_offset_ > = elements_.size()) {< / div >
< div class = "line" > < a id = "l02531" name = "l02531" > < / a > < span class = "lineno" > 2531< / span > GrowUp(block_index);< / div >
< div class = "line" > < a id = "l02532" name = "l02532" > < / a > < span class = "lineno" > 2532< / span > }< / div >
< div class = "line" > < a id = "l02533" name = "l02533" > < / a > < span class = "lineno" > 2533< / span > T* block = elements_[block_index - block_offset_];< / div >
< div class = "line" > < a id = "l02534" name = "l02534" > < / a > < span class = "lineno" > 2534< / span > < span class = "keywordflow" > if< / span > (block == < span class = "keyword" > nullptr< / span > ) {< / div >
< div class = "line" > < a id = "l02535" name = "l02535" > < / a > < span class = "lineno" > 2535< / span > block = NewBlock();< / div >
< div class = "line" > < a id = "l02536" name = "l02536" > < / a > < span class = "lineno" > 2536< / span > elements_[block_index - block_offset_] = block;< / div >
< div class = "line" > < a id = "l02537" name = "l02537" > < / a > < span class = "lineno" > 2537< / span > }< / div >
< div class = "line" > < a id = "l02538" name = "l02538" > < / a > < span class = "lineno" > 2538< / span > < span class = "keywordflow" > return< / span > block;< / div >
< div class = "line" > < a id = "l02539" name = "l02539" > < / a > < span class = "lineno" > 2539< / span > }< / div >
< div class = "line" > < a id = "l02540" name = "l02540" > < / a > < span class = "lineno" > 2540< / span > < / div >
< div class = "line" > < a id = "l02541" name = "l02541" > < / a > < span class = "lineno" > 2541< / span > int64_t ComputeBlockIndex(int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02542" name = "l02542" > < / a > < span class = "lineno" > 2542< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > > = 0 ? < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > / block_size_< / div >
< div class = "line" > < a id = "l02543" name = "l02543" > < / a > < span class = "lineno" > 2543< / span > : (< a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > - block_size_ + 1) / block_size_;< / div >
< div class = "line" > < a id = "l02544" name = "l02544" > < / a > < span class = "lineno" > 2544< / span > }< / div >
< div class = "line" > < a id = "l02545" name = "l02545" > < / a > < span class = "lineno" > 2545< / span > < / div >
< div class = "line" > < a id = "l02546" name = "l02546" > < / a > < span class = "lineno" > 2546< / span > < span class = "keywordtype" > void< / span > GrowUp(int64_t block_index) {< / div >
< div class = "line" > < a id = "l02547" name = "l02547" > < / a > < span class = "lineno" > 2547< / span > elements_.resize(block_index - block_offset_ + 1);< / div >
< div class = "line" > < a id = "l02548" name = "l02548" > < / a > < span class = "lineno" > 2548< / span > }< / div >
< div class = "line" > < a id = "l02549" name = "l02549" > < / a > < span class = "lineno" > 2549< / span > < / div >
< div class = "line" > < a id = "l02550" name = "l02550" > < / a > < span class = "lineno" > 2550< / span > < span class = "keywordtype" > void< / span > GrowDown(int64_t block_index) {< / div >
< div class = "line" > < a id = "l02551" name = "l02551" > < / a > < span class = "lineno" > 2551< / span > < span class = "keyword" > const< / span > int64_t < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > = block_offset_ - block_index;< / div >
< div class = "line" > < a id = "l02552" name = "l02552" > < / a > < span class = "lineno" > 2552< / span > block_offset_ = block_index;< / div >
< div class = "line" > < a id = "l02553" name = "l02553" > < / a > < span class = "lineno" > 2553< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab4f56aa24c4c9cddc47a6abd2d747f9a" > DCHECK_GT< / a > (< a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , 0);< / div >
< div class = "line" > < a id = "l02554" name = "l02554" > < / a > < span class = "lineno" > 2554< / span > elements_.insert(elements_.begin(), < a class = "code hl_variable" href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > , < span class = "keyword" > nullptr< / span > );< / div >
< div class = "line" > < a id = "l02555" name = "l02555" > < / a > < span class = "lineno" > 2555< / span > }< / div >
< div class = "line" > < a id = "l02556" name = "l02556" > < / a > < span class = "lineno" > 2556< / span > < / div >
< div class = "line" > < a id = "l02557" name = "l02557" > < / a > < span class = "lineno" > 2557< / span > < span class = "keyword" > const< / span > int64_t block_size_;< / div >
< div class = "line" > < a id = "l02558" name = "l02558" > < / a > < span class = "lineno" > 2558< / span > std::vector< T*> elements_;< / div >
< div class = "line" > < a id = "l02559" name = "l02559" > < / a > < span class = "lineno" > 2559< / span > < span class = "keywordtype" > int< / span > block_offset_;< / div >
< div class = "line" > < a id = "l02560" name = "l02560" > < / a > < span class = "lineno" > 2560< / span > };< / div >
< div class = "line" > < a id = "l02561" name = "l02561" > < / a > < span class = "lineno" > 2561< / span > < / div >
< div class = "line" > < a id = "l02566" name = "l02566" > < / a > < span class = "lineno" > 2566< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02567" name = "l02567" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html" > 2567< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_int_set.html" > RevIntSet< / a > {< / div >
< div class = "line" > < a id = "l02568" name = "l02568" > < / a > < span class = "lineno" > 2568< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02569" name = "l02569" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a563ff7bb4f40754b5b1bfb01a3dd95c1" > 2569< / a > < / span > < span class = "keyword" > static< / span > < span class = "keyword" > constexpr< / span > < span class = "keywordtype" > int< / span > kNoInserted = -1;< / div >
< div class = "line" > < a id = "l02570" name = "l02570" > < / a > < span class = "lineno" > 2570< / span > < / div >
< div class = "line" > < a id = "l02572" name = "l02572" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a23bf807dec205b7965271a2980ba7aa1" > 2572< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a23bf807dec205b7965271a2980ba7aa1" > RevIntSet< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > )< / div >
< div class = "line" > < a id = "l02573" name = "l02573" > < / a > < span class = "lineno" > 2573< / span > : elements_(new T[< a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > ]),< / div >
< div class = "line" > < a id = "l02574" name = "l02574" > < / a > < span class = "lineno" > 2574< / span > num_elements_(0),< / div >
< div class = "line" > < a id = "l02575" name = "l02575" > < / a > < span class = "lineno" > 2575< / span > capacity_(< a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > ),< / div >
< div class = "line" > < a id = "l02576" name = "l02576" > < / a > < span class = "lineno" > 2576< / span > position_(new int[< a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > ]),< / div >
< div class = "line" > < a id = "l02577" name = "l02577" > < / a > < span class = "lineno" > 2577< / span > delete_position_(true) {< / div >
< div class = "line" > < a id = "l02578" name = "l02578" > < / a > < span class = "lineno" > 2578< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < < a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > ; ++i) {< / div >
< div class = "line" > < a id = "l02579" name = "l02579" > < / a > < span class = "lineno" > 2579< / span > position_[i] = kNoInserted;< / div >
< div class = "line" > < a id = "l02580" name = "l02580" > < / a > < span class = "lineno" > 2580< / span > }< / div >
< div class = "line" > < a id = "l02581" name = "l02581" > < / a > < span class = "lineno" > 2581< / span > }< / div >
< div class = "line" > < a id = "l02582" name = "l02582" > < / a > < span class = "lineno" > 2582< / span > < / div >
< div class = "line" > < a id = "l02584" name = "l02584" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a9dc6b5dd524a344be68d49dfe713445b" > 2584< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a9dc6b5dd524a344be68d49dfe713445b" > RevIntSet< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > , < span class = "keywordtype" > int< / span > * shared_positions, < span class = "keywordtype" > int< / span > shared_positions_size)< / div >
< div class = "line" > < a id = "l02585" name = "l02585" > < / a > < span class = "lineno" > 2585< / span > : elements_(new T[< a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > ]),< / div >
< div class = "line" > < a id = "l02586" name = "l02586" > < / a > < span class = "lineno" > 2586< / span > num_elements_(0),< / div >
< div class = "line" > < a id = "l02587" name = "l02587" > < / a > < span class = "lineno" > 2587< / span > capacity_(< a class = "code hl_variable" href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > ),< / div >
< div class = "line" > < a id = "l02588" name = "l02588" > < / a > < span class = "lineno" > 2588< / span > position_(shared_positions),< / div >
< div class = "line" > < a id = "l02589" name = "l02589" > < / a > < span class = "lineno" > 2589< / span > delete_position_(false) {< / div >
< div class = "line" > < a id = "l02590" name = "l02590" > < / a > < span class = "lineno" > 2590< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < shared_positions_size; ++i) {< / div >
< div class = "line" > < a id = "l02591" name = "l02591" > < / a > < span class = "lineno" > 2591< / span > position_[i] = kNoInserted;< / div >
< div class = "line" > < a id = "l02592" name = "l02592" > < / a > < span class = "lineno" > 2592< / span > }< / div >
< div class = "line" > < a id = "l02593" name = "l02593" > < / a > < span class = "lineno" > 2593< / span > }< / div >
< div class = "line" > < a id = "l02594" name = "l02594" > < / a > < span class = "lineno" > 2594< / span > < / div >
< div class = "line" > < a id = "l02595" name = "l02595" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a843688384c304891f0a00b0336ac9823" > 2595< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a843688384c304891f0a00b0336ac9823" > ~RevIntSet< / a > () {< / div >
< div class = "line" > < a id = "l02596" name = "l02596" > < / a > < span class = "lineno" > 2596< / span > < span class = "keywordflow" > if< / span > (delete_position_) {< / div >
< div class = "line" > < a id = "l02597" name = "l02597" > < / a > < span class = "lineno" > 2597< / span > < span class = "keyword" > delete< / span > [] position_;< / div >
< div class = "line" > < a id = "l02598" name = "l02598" > < / a > < span class = "lineno" > 2598< / span > }< / div >
< div class = "line" > < a id = "l02599" name = "l02599" > < / a > < span class = "lineno" > 2599< / span > }< / div >
< div class = "line" > < a id = "l02600" name = "l02600" > < / a > < span class = "lineno" > 2600< / span > < / div >
< div class = "line" > < a id = "l02601" name = "l02601" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a24926108b770033792d015cb86aeffb3" > 2601< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > num_elements_.Value(); }< / div >
< div class = "line" > < a id = "l02602" name = "l02602" > < / a > < span class = "lineno" > 2602< / span > < / div >
< div class = "line" > < a id = "l02603" name = "l02603" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#ae37167b9b5134bd482bc4e21d77b3f4b" > 2603< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#ae37167b9b5134bd482bc4e21d77b3f4b" > Capacity< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > capacity_; }< / div >
< div class = "line" > < a id = "l02604" name = "l02604" > < / a > < span class = "lineno" > 2604< / span > < / div >
< div class = "line" > < a id = "l02605" name = "l02605" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a6b01bbd962186b2a530cb1ab6855b833" > 2605< / a > < / span > T < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a6b01bbd962186b2a530cb1ab6855b833" > Element< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02606" name = "l02606" > < / a > < span class = "lineno" > 2606< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (i, 0);< / div >
< div class = "line" > < a id = "l02607" name = "l02607" > < / a > < span class = "lineno" > 2607< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (i, num_elements_.Value());< / div >
< div class = "line" > < a id = "l02608" name = "l02608" > < / a > < span class = "lineno" > 2608< / span > < span class = "keywordflow" > return< / span > elements_[i];< / div >
< div class = "line" > < a id = "l02609" name = "l02609" > < / a > < span class = "lineno" > 2609< / span > }< / div >
< div class = "line" > < a id = "l02610" name = "l02610" > < / a > < span class = "lineno" > 2610< / span > < / div >
< div class = "line" > < a id = "l02611" name = "l02611" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a34d8dff251306e611f6393c007372233" > 2611< / a > < / span > T < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a34d8dff251306e611f6393c007372233" > RemovedElement< / a > (< span class = "keywordtype" > int< / span > i)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02612" name = "l02612" > < / a > < span class = "lineno" > 2612< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (i, 0);< / div >
< div class = "line" > < a id = "l02613" name = "l02613" > < / a > < span class = "lineno" > 2613< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (i + num_elements_.Value(), capacity_);< / div >
< div class = "line" > < a id = "l02614" name = "l02614" > < / a > < span class = "lineno" > 2614< / span > < span class = "keywordflow" > return< / span > elements_[i + num_elements_.Value()];< / div >
< div class = "line" > < a id = "l02615" name = "l02615" > < / a > < span class = "lineno" > 2615< / span > }< / div >
< div class = "line" > < a id = "l02616" name = "l02616" > < / a > < span class = "lineno" > 2616< / span > < / div >
< div class = "line" > < a id = "l02617" name = "l02617" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a09b435e833bb97525ef2e54735f632ea" > 2617< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a09b435e833bb97525ef2e54735f632ea" > Insert< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keyword" > const< / span > T& elt) {< / div >
< div class = "line" > < a id = "l02618" name = "l02618" > < / a > < span class = "lineno" > 2618< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > position = num_elements_.Value();< / div >
< div class = "line" > < a id = "l02619" name = "l02619" > < / a > < span class = "lineno" > 2619< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (position, capacity_); < / div >
< div class = "line" > < a id = "l02620" name = "l02620" > < / a > < span class = "lineno" > 2620< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (NotAlreadyInserted(elt));< / div >
< div class = "line" > < a id = "l02621" name = "l02621" > < / a > < span class = "lineno" > 2621< / span > elements_[position] = elt;< / div >
< div class = "line" > < a id = "l02622" name = "l02622" > < / a > < span class = "lineno" > 2622< / span > position_[elt] = position;< / div >
< div class = "line" > < a id = "l02623" name = "l02623" > < / a > < span class = "lineno" > 2623< / span > num_elements_.Incr(solver);< / div >
< div class = "line" > < a id = "l02624" name = "l02624" > < / a > < span class = "lineno" > 2624< / span > }< / div >
< div class = "line" > < a id = "l02625" name = "l02625" > < / a > < span class = "lineno" > 2625< / span > < / div >
< div class = "line" > < a id = "l02626" name = "l02626" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#ace705075d1b47c62aa622a912c14626c" > 2626< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#ace705075d1b47c62aa622a912c14626c" > Remove< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keyword" > const< / span > T& value_index) {< / div >
< div class = "line" > < a id = "l02627" name = "l02627" > < / a > < span class = "lineno" > 2627< / span > num_elements_.Decr(solver);< / div >
< div class = "line" > < a id = "l02628" name = "l02628" > < / a > < span class = "lineno" > 2628< / span > SwapTo(value_index, num_elements_.Value());< / div >
< div class = "line" > < a id = "l02629" name = "l02629" > < / a > < span class = "lineno" > 2629< / span > }< / div >
< div class = "line" > < a id = "l02630" name = "l02630" > < / a > < span class = "lineno" > 2630< / span > < / div >
< div class = "line" > < a id = "l02631" name = "l02631" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#ab57ce8f50aeb2f7e4171b04ca42fd447" > 2631< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#ab57ce8f50aeb2f7e4171b04ca42fd447" > Restore< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keyword" > const< / span > T& value_index) {< / div >
< div class = "line" > < a id = "l02632" name = "l02632" > < / a > < span class = "lineno" > 2632< / span > SwapTo(value_index, num_elements_.Value());< / div >
< div class = "line" > < a id = "l02633" name = "l02633" > < / a > < span class = "lineno" > 2633< / span > num_elements_.Incr(solver);< / div >
< div class = "line" > < a id = "l02634" name = "l02634" > < / a > < span class = "lineno" > 2634< / span > }< / div >
< div class = "line" > < a id = "l02635" name = "l02635" > < / a > < span class = "lineno" > 2635< / span > < / div >
< div class = "line" > < a id = "l02636" name = "l02636" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#ae44fff9ea13a57991eb263fc98f526ab" > 2636< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#ae44fff9ea13a57991eb263fc98f526ab" > Clear< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver) { num_elements_.SetValue(solver, 0); }< / div >
< div class = "line" > < a id = "l02637" name = "l02637" > < / a > < span class = "lineno" > 2637< / span > < / div >
< div class = "line" > < a id = "l02639" name = "l02639" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a2fc97dce62b7053449cc868607540dba" > 2639< / a > < / span > < span class = "keyword" > typedef< / span > < span class = "keyword" > const< / span > T* < a class = "code hl_typedef" href = "classoperations__research_1_1_rev_int_set.html#a2fc97dce62b7053449cc868607540dba" > const_iterator< / a > ;< / div >
< div class = "line" > < a id = "l02640" name = "l02640" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#a29305669b60ca1680752e2fc3592ba99" > 2640< / a > < / span > < a class = "code hl_typedef" href = "classoperations__research_1_1_rev_int_set.html#a2fc97dce62b7053449cc868607540dba" > const_iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#a29305669b60ca1680752e2fc3592ba99" > begin< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > elements_.get(); }< / div >
< div class = "line" > < a id = "l02641" name = "l02641" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_int_set.html#accf9a4bd0c34d4a5f6a7dab66ea10cdc" > 2641< / a > < / span > < a class = "code hl_typedef" href = "classoperations__research_1_1_rev_int_set.html#a2fc97dce62b7053449cc868607540dba" > const_iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_rev_int_set.html#accf9a4bd0c34d4a5f6a7dab66ea10cdc" > end< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > elements_.get() + num_elements_.Value(); }< / div >
< div class = "line" > < a id = "l02642" name = "l02642" > < / a > < span class = "lineno" > 2642< / span > < / div >
< div class = "line" > < a id = "l02643" name = "l02643" > < / a > < span class = "lineno" > 2643< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02645" name = "l02645" > < / a > < span class = "lineno" > 2645< / span > < span class = "keywordtype" > bool< / span > NotAlreadyInserted(< span class = "keyword" > const< / span > T& elt) {< / div >
< div class = "line" > < a id = "l02646" name = "l02646" > < / a > < span class = "lineno" > 2646< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < num_elements_.Value(); ++i) {< / div >
< div class = "line" > < a id = "l02647" name = "l02647" > < / a > < span class = "lineno" > 2647< / span > < span class = "keywordflow" > if< / span > (elt == elements_[i]) {< / div >
< div class = "line" > < a id = "l02648" name = "l02648" > < / a > < span class = "lineno" > 2648< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02649" name = "l02649" > < / a > < span class = "lineno" > 2649< / span > }< / div >
< div class = "line" > < a id = "l02650" name = "l02650" > < / a > < span class = "lineno" > 2650< / span > }< / div >
< div class = "line" > < a id = "l02651" name = "l02651" > < / a > < span class = "lineno" > 2651< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02652" name = "l02652" > < / a > < span class = "lineno" > 2652< / span > }< / div >
< div class = "line" > < a id = "l02653" name = "l02653" > < / a > < span class = "lineno" > 2653< / span > < / div >
< div class = "line" > < a id = "l02654" name = "l02654" > < / a > < span class = "lineno" > 2654< / span > < span class = "keywordtype" > void< / span > SwapTo(T value_index, < span class = "keywordtype" > int< / span > next_position) {< / div >
< div class = "line" > < a id = "l02655" name = "l02655" > < / a > < span class = "lineno" > 2655< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > current_position = position_[value_index];< / div >
< div class = "line" > < a id = "l02656" name = "l02656" > < / a > < span class = "lineno" > 2656< / span > < span class = "keywordflow" > if< / span > (current_position != next_position) {< / div >
< div class = "line" > < a id = "l02657" name = "l02657" > < / a > < span class = "lineno" > 2657< / span > < span class = "keyword" > const< / span > T next_value_index = elements_[next_position];< / div >
< div class = "line" > < a id = "l02658" name = "l02658" > < / a > < span class = "lineno" > 2658< / span > elements_[current_position] = next_value_index;< / div >
< div class = "line" > < a id = "l02659" name = "l02659" > < / a > < span class = "lineno" > 2659< / span > elements_[next_position] = value_index;< / div >
< div class = "line" > < a id = "l02660" name = "l02660" > < / a > < span class = "lineno" > 2660< / span > position_[value_index] = next_position;< / div >
< div class = "line" > < a id = "l02661" name = "l02661" > < / a > < span class = "lineno" > 2661< / span > position_[next_value_index] = current_position;< / div >
< div class = "line" > < a id = "l02662" name = "l02662" > < / a > < span class = "lineno" > 2662< / span > }< / div >
< div class = "line" > < a id = "l02663" name = "l02663" > < / a > < span class = "lineno" > 2663< / span > }< / div >
< div class = "line" > < a id = "l02664" name = "l02664" > < / a > < span class = "lineno" > 2664< / span > < / div >
< div class = "line" > < a id = "l02666" name = "l02666" > < / a > < span class = "lineno" > 2666< / span > std::unique_ptr< T[]> elements_;< / div >
< div class = "line" > < a id = "l02668" name = "l02668" > < / a > < span class = "lineno" > 2668< / span > NumericalRev< int> num_elements_;< / div >
< div class = "line" > < a id = "l02670" name = "l02670" > < / a > < span class = "lineno" > 2670< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > capacity_;< / div >
< div class = "line" > < a id = "l02672" name = "l02672" > < / a > < span class = "lineno" > 2672< / span > < span class = "keywordtype" > int< / span > * position_;< / div >
< div class = "line" > < a id = "l02674" name = "l02674" > < / a > < span class = "lineno" > 2674< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > bool< / span > delete_position_;< / div >
< div class = "line" > < a id = "l02675" name = "l02675" > < / a > < span class = "lineno" > 2675< / span > };< / div >
< div class = "line" > < a id = "l02676" name = "l02676" > < / a > < span class = "lineno" > 2676< / span > < / div >
< div class = "line" > < a id = "l02678" name = "l02678" > < / a > < span class = "lineno" > 2678< / span > < / div >
< div class = "line" > < a id = "l02679" name = "l02679" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html" > 2679< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_partial_sequence.html" > RevPartialSequence< / a > {< / div >
< div class = "line" > < a id = "l02680" name = "l02680" > < / a > < span class = "lineno" > 2680< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02681" name = "l02681" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#ae94f333127d093281b44be431c78162c" > 2681< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#ae94f333127d093281b44be431c78162c" > RevPartialSequence< / a > (< span class = "keyword" > const< / span > std::vector< int> & items)< / div >
< div class = "line" > < a id = "l02682" name = "l02682" > < / a > < span class = "lineno" > 2682< / span > : elements_(items),< / div >
< div class = "line" > < a id = "l02683" name = "l02683" > < / a > < span class = "lineno" > 2683< / span > first_ranked_(0),< / div >
< div class = "line" > < a id = "l02684" name = "l02684" > < / a > < span class = "lineno" > 2684< / span > last_ranked_(items.size() - 1),< / div >
< div class = "line" > < a id = "l02685" name = "l02685" > < / a > < span class = "lineno" > 2685< / span > size_(items.size()),< / div >
< div class = "line" > < a id = "l02686" name = "l02686" > < / a > < span class = "lineno" > 2686< / span > position_(new int[size_]) {< / div >
< div class = "line" > < a id = "l02687" name = "l02687" > < / a > < span class = "lineno" > 2687< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < size_; ++i) {< / div >
< div class = "line" > < a id = "l02688" name = "l02688" > < / a > < span class = "lineno" > 2688< / span > elements_[i] = items[i];< / div >
< div class = "line" > < a id = "l02689" name = "l02689" > < / a > < span class = "lineno" > 2689< / span > position_[i] = i;< / div >
< div class = "line" > < a id = "l02690" name = "l02690" > < / a > < span class = "lineno" > 2690< / span > }< / div >
< div class = "line" > < a id = "l02691" name = "l02691" > < / a > < span class = "lineno" > 2691< / span > }< / div >
< div class = "line" > < a id = "l02692" name = "l02692" > < / a > < span class = "lineno" > 2692< / span > < / div >
< div class = "line" > < a id = "l02693" name = "l02693" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a388bf17b12a3231df6f1c5c2ce2aba7d" > 2693< / a > < / span > < span class = "keyword" > explicit< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a388bf17b12a3231df6f1c5c2ce2aba7d" > RevPartialSequence< / a > (< span class = "keywordtype" > int< / span > size)< / div >
< div class = "line" > < a id = "l02694" name = "l02694" > < / a > < span class = "lineno" > 2694< / span > : elements_(size),< / div >
< div class = "line" > < a id = "l02695" name = "l02695" > < / a > < span class = "lineno" > 2695< / span > first_ranked_(0),< / div >
< div class = "line" > < a id = "l02696" name = "l02696" > < / a > < span class = "lineno" > 2696< / span > last_ranked_(size - 1),< / div >
< div class = "line" > < a id = "l02697" name = "l02697" > < / a > < span class = "lineno" > 2697< / span > size_(size),< / div >
< div class = "line" > < a id = "l02698" name = "l02698" > < / a > < span class = "lineno" > 2698< / span > position_(new int[size_]) {< / div >
< div class = "line" > < a id = "l02699" name = "l02699" > < / a > < span class = "lineno" > 2699< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < size_; ++i) {< / div >
< div class = "line" > < a id = "l02700" name = "l02700" > < / a > < span class = "lineno" > 2700< / span > elements_[i] = i;< / div >
< div class = "line" > < a id = "l02701" name = "l02701" > < / a > < span class = "lineno" > 2701< / span > position_[i] = i;< / div >
< div class = "line" > < a id = "l02702" name = "l02702" > < / a > < span class = "lineno" > 2702< / span > }< / div >
< div class = "line" > < a id = "l02703" name = "l02703" > < / a > < span class = "lineno" > 2703< / span > }< / div >
< div class = "line" > < a id = "l02704" name = "l02704" > < / a > < span class = "lineno" > 2704< / span > < / div >
< div class = "line" > < a id = "l02705" name = "l02705" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a952da5a13f656543b8fc2dd0ada0ca3f" > 2705< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a952da5a13f656543b8fc2dd0ada0ca3f" > ~RevPartialSequence< / a > () {}< / div >
< div class = "line" > < a id = "l02706" name = "l02706" > < / a > < span class = "lineno" > 2706< / span > < / div >
< div class = "line" > < a id = "l02707" name = "l02707" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a4bb9c257807ee5c22729df7e1b008571" > 2707< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a4bb9c257807ee5c22729df7e1b008571" > NumFirstRanked< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > first_ranked_.Value(); }< / div >
< div class = "line" > < a id = "l02708" name = "l02708" > < / a > < span class = "lineno" > 2708< / span > < / div >
< div class = "line" > < a id = "l02709" name = "l02709" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a26a014b275560d5f40a7fed763efc5b3" > 2709< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a26a014b275560d5f40a7fed763efc5b3" > NumLastRanked< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > size_ - 1 - last_ranked_.Value(); }< / div >
< div class = "line" > < a id = "l02710" name = "l02710" > < / a > < span class = "lineno" > 2710< / span > < / div >
< div class = "line" > < a id = "l02711" name = "l02711" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a24926108b770033792d015cb86aeffb3" > 2711< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a24926108b770033792d015cb86aeffb3" > Size< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > size_; }< / div >
< div class = "line" > < a id = "l02712" name = "l02712" > < / a > < span class = "lineno" > 2712< / span > < / div >
< div class = "line" > < a id = "l02713" name = "l02713" > < / a > < span class = "lineno" > 2713< / span > < span class = "preprocessor" > #if !defined(SWIG)< / span > < / div >
< div class = "line" > < a id = "l02714" name = "l02714" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#aa40539cbc926aa90df91fcb10f8ada39" > 2714< / a > < / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > & < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#aa40539cbc926aa90df91fcb10f8ada39" > operator[]< / a > (< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > )< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02715" name = "l02715" > < / a > < span class = "lineno" > 2715< / span > < a class = "code hl_define" href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , 0);< / div >
< div class = "line" > < a id = "l02716" name = "l02716" > < / a > < span class = "lineno" > 2716< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > (< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > , size_);< / div >
< div class = "line" > < a id = "l02717" name = "l02717" > < / a > < span class = "lineno" > 2717< / span > < span class = "keywordflow" > return< / span > elements_[< a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ];< / div >
< div class = "line" > < a id = "l02718" name = "l02718" > < / a > < span class = "lineno" > 2718< / span > }< / div >
< div class = "line" > < a id = "l02719" name = "l02719" > < / a > < span class = "lineno" > 2719< / span > < span class = "preprocessor" > #endif< / span > < / div >
< div class = "line" > < a id = "l02720" name = "l02720" > < / a > < span class = "lineno" > 2720< / span > < / div >
< div class = "line" > < a id = "l02721" name = "l02721" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#aae1ff1f02500de1b7cf8042c10a5a36d" > 2721< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#aae1ff1f02500de1b7cf8042c10a5a36d" > RankFirst< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keywordtype" > int< / span > elt) {< / div >
< div class = "line" > < a id = "l02722" name = "l02722" > < / a > < span class = "lineno" > 2722< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a4395e95bab44e222cb2e77251017a0e2" > DCHECK_LE< / a > (first_ranked_.Value(), last_ranked_.Value());< / div >
< div class = "line" > < a id = "l02723" name = "l02723" > < / a > < span class = "lineno" > 2723< / span > SwapTo(elt, first_ranked_.Value());< / div >
< div class = "line" > < a id = "l02724" name = "l02724" > < / a > < span class = "lineno" > 2724< / span > first_ranked_.Incr(solver);< / div >
< div class = "line" > < a id = "l02725" name = "l02725" > < / a > < span class = "lineno" > 2725< / span > }< / div >
< div class = "line" > < a id = "l02726" name = "l02726" > < / a > < span class = "lineno" > 2726< / span > < / div >
< div class = "line" > < a id = "l02727" name = "l02727" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a7a0cad593e63d53f505bb7da17fcd1d4" > 2727< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a7a0cad593e63d53f505bb7da17fcd1d4" > RankLast< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keywordtype" > int< / span > elt) {< / div >
< div class = "line" > < a id = "l02728" name = "l02728" > < / a > < span class = "lineno" > 2728< / span > < a class = "code hl_define" href = "base_2logging_8h.html#a4395e95bab44e222cb2e77251017a0e2" > DCHECK_LE< / a > (first_ranked_.Value(), last_ranked_.Value());< / div >
< div class = "line" > < a id = "l02729" name = "l02729" > < / a > < span class = "lineno" > 2729< / span > SwapTo(elt, last_ranked_.Value());< / div >
< div class = "line" > < a id = "l02730" name = "l02730" > < / a > < span class = "lineno" > 2730< / span > last_ranked_.Decr(solver);< / div >
< div class = "line" > < a id = "l02731" name = "l02731" > < / a > < span class = "lineno" > 2731< / span > }< / div >
< div class = "line" > < a id = "l02732" name = "l02732" > < / a > < span class = "lineno" > 2732< / span > < / div >
< div class = "line" > < a id = "l02733" name = "l02733" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a7515e88d1faa654d75c89b0abdc67133" > 2733< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a7515e88d1faa654d75c89b0abdc67133" > IsRanked< / a > (< span class = "keywordtype" > int< / span > elt)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02734" name = "l02734" > < / a > < span class = "lineno" > 2734< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > position = position_[elt];< / div >
< div class = "line" > < a id = "l02735" name = "l02735" > < / a > < span class = "lineno" > 2735< / span > < span class = "keywordflow" > return< / span > (position < first_ranked_.Value() ||< / div >
< div class = "line" > < a id = "l02736" name = "l02736" > < / a > < span class = "lineno" > 2736< / span > position > last_ranked_.Value());< / div >
< div class = "line" > < a id = "l02737" name = "l02737" > < / a > < span class = "lineno" > 2737< / span > }< / div >
< div class = "line" > < a id = "l02738" name = "l02738" > < / a > < span class = "lineno" > 2738< / span > < / div >
< div class = "line" > < a id = "l02739" name = "l02739" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_rev_partial_sequence.html#a764be64f3029f8b8e23511061d8de355" > 2739< / a > < / span > std::string < a class = "code hl_function" href = "classoperations__research_1_1_rev_partial_sequence.html#a764be64f3029f8b8e23511061d8de355" > DebugString< / a > ()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l02740" name = "l02740" > < / a > < span class = "lineno" > 2740< / span > std::string result = < span class = "stringliteral" > " [" < / span > ;< / div >
< div class = "line" > < a id = "l02741" name = "l02741" > < / a > < span class = "lineno" > 2741< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < first_ranked_.Value(); ++i) {< / div >
< div class = "line" > < a id = "l02742" name = "l02742" > < / a > < span class = "lineno" > 2742< / span > absl::StrAppend(& result, elements_[i]);< / div >
< div class = "line" > < a id = "l02743" name = "l02743" > < / a > < span class = "lineno" > 2743< / span > < span class = "keywordflow" > if< / span > (i != first_ranked_.Value() - 1) {< / div >
< div class = "line" > < a id = "l02744" name = "l02744" > < / a > < span class = "lineno" > 2744< / span > result.append(< span class = "stringliteral" > " -" < / span > );< / div >
< div class = "line" > < a id = "l02745" name = "l02745" > < / a > < span class = "lineno" > 2745< / span > }< / div >
< div class = "line" > < a id = "l02746" name = "l02746" > < / a > < span class = "lineno" > 2746< / span > }< / div >
< div class = "line" > < a id = "l02747" name = "l02747" > < / a > < span class = "lineno" > 2747< / span > result.append(< span class = "stringliteral" > " |" < / span > );< / div >
< div class = "line" > < a id = "l02748" name = "l02748" > < / a > < span class = "lineno" > 2748< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = first_ranked_.Value(); i < = last_ranked_.Value(); ++i) {< / div >
< div class = "line" > < a id = "l02749" name = "l02749" > < / a > < span class = "lineno" > 2749< / span > absl::StrAppend(& result, elements_[i]);< / div >
< div class = "line" > < a id = "l02750" name = "l02750" > < / a > < span class = "lineno" > 2750< / span > < span class = "keywordflow" > if< / span > (i != last_ranked_.Value()) {< / div >
< div class = "line" > < a id = "l02751" name = "l02751" > < / a > < span class = "lineno" > 2751< / span > result.append(< span class = "stringliteral" > " -" < / span > );< / div >
< div class = "line" > < a id = "l02752" name = "l02752" > < / a > < span class = "lineno" > 2752< / span > }< / div >
< div class = "line" > < a id = "l02753" name = "l02753" > < / a > < span class = "lineno" > 2753< / span > }< / div >
< div class = "line" > < a id = "l02754" name = "l02754" > < / a > < span class = "lineno" > 2754< / span > result.append(< span class = "stringliteral" > " |" < / span > );< / div >
< div class = "line" > < a id = "l02755" name = "l02755" > < / a > < span class = "lineno" > 2755< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = last_ranked_.Value() + 1; i < size_; ++i) {< / div >
< div class = "line" > < a id = "l02756" name = "l02756" > < / a > < span class = "lineno" > 2756< / span > absl::StrAppend(& result, elements_[i]);< / div >
< div class = "line" > < a id = "l02757" name = "l02757" > < / a > < span class = "lineno" > 2757< / span > < span class = "keywordflow" > if< / span > (i != size_ - 1) {< / div >
< div class = "line" > < a id = "l02758" name = "l02758" > < / a > < span class = "lineno" > 2758< / span > result.append(< span class = "stringliteral" > " -" < / span > );< / div >
< div class = "line" > < a id = "l02759" name = "l02759" > < / a > < span class = "lineno" > 2759< / span > }< / div >
< div class = "line" > < a id = "l02760" name = "l02760" > < / a > < span class = "lineno" > 2760< / span > }< / div >
< div class = "line" > < a id = "l02761" name = "l02761" > < / a > < span class = "lineno" > 2761< / span > result.append(< span class = "stringliteral" > " ]" < / span > );< / div >
< div class = "line" > < a id = "l02762" name = "l02762" > < / a > < span class = "lineno" > 2762< / span > < span class = "keywordflow" > return< / span > result;< / div >
< div class = "line" > < a id = "l02763" name = "l02763" > < / a > < span class = "lineno" > 2763< / span > }< / div >
< div class = "line" > < a id = "l02764" name = "l02764" > < / a > < span class = "lineno" > 2764< / span > < / div >
< div class = "line" > < a id = "l02765" name = "l02765" > < / a > < span class = "lineno" > 2765< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02766" name = "l02766" > < / a > < span class = "lineno" > 2766< / span > < span class = "keywordtype" > void< / span > SwapTo(< span class = "keywordtype" > int< / span > elt, < span class = "keywordtype" > int< / span > next_position) {< / div >
< div class = "line" > < a id = "l02767" name = "l02767" > < / a > < span class = "lineno" > 2767< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > current_position = position_[elt];< / div >
< div class = "line" > < a id = "l02768" name = "l02768" > < / a > < span class = "lineno" > 2768< / span > < span class = "keywordflow" > if< / span > (current_position != next_position) {< / div >
< div class = "line" > < a id = "l02769" name = "l02769" > < / a > < span class = "lineno" > 2769< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > next_elt = elements_[next_position];< / div >
< div class = "line" > < a id = "l02770" name = "l02770" > < / a > < span class = "lineno" > 2770< / span > elements_[current_position] = next_elt;< / div >
< div class = "line" > < a id = "l02771" name = "l02771" > < / a > < span class = "lineno" > 2771< / span > elements_[next_position] = elt;< / div >
< div class = "line" > < a id = "l02772" name = "l02772" > < / a > < span class = "lineno" > 2772< / span > position_[elt] = next_position;< / div >
< div class = "line" > < a id = "l02773" name = "l02773" > < / a > < span class = "lineno" > 2773< / span > position_[next_elt] = current_position;< / div >
< div class = "line" > < a id = "l02774" name = "l02774" > < / a > < span class = "lineno" > 2774< / span > }< / div >
< div class = "line" > < a id = "l02775" name = "l02775" > < / a > < span class = "lineno" > 2775< / span > }< / div >
< div class = "line" > < a id = "l02776" name = "l02776" > < / a > < span class = "lineno" > 2776< / span > < / div >
< div class = "line" > < a id = "l02778" name = "l02778" > < / a > < span class = "lineno" > 2778< / span > std::vector< int> elements_;< / div >
< div class = "line" > < a id = "l02780" name = "l02780" > < / a > < span class = "lineno" > 2780< / span > NumericalRev< int> first_ranked_;< / div >
< div class = "line" > < a id = "l02782" name = "l02782" > < / a > < span class = "lineno" > 2782< / span > NumericalRev< int> last_ranked_;< / div >
< div class = "line" > < a id = "l02784" name = "l02784" > < / a > < span class = "lineno" > 2784< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > size_;< / div >
< div class = "line" > < a id = "l02786" name = "l02786" > < / a > < span class = "lineno" > 2786< / span > std::unique_ptr< int[]> position_;< / div >
< div class = "line" > < a id = "l02787" name = "l02787" > < / a > < span class = "lineno" > 2787< / span > };< / div >
< div class = "line" > < a id = "l02788" name = "l02788" > < / a > < span class = "lineno" > 2788< / span > < / div >
< div class = "line" > < a id = "l02793" name = "l02793" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html" > 2793< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html" > UnsortedNullableRevBitset< / a > {< / div >
< div class = "line" > < a id = "l02794" name = "l02794" > < / a > < span class = "lineno" > 2794< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l02796" name = "l02796" > < / a > < span class = "lineno" > 2796< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html" > UnsortedNullableRevBitset< / a > (< span class = "keywordtype" > int< / span > bit_size);< / div >
< div class = "line" > < a id = "l02797" name = "l02797" > < / a > < span class = "lineno" > 2797< / span > < / div >
< div class = "line" > < a id = "l02798" name = "l02798" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a76ba13aa9ecbcd8755720533712f4f70" > 2798< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a76ba13aa9ecbcd8755720533712f4f70" > ~UnsortedNullableRevBitset< / a > () {}< / div >
< div class = "line" > < a id = "l02799" name = "l02799" > < / a > < span class = "lineno" > 2799< / span > < / div >
< div class = "line" > < a id = "l02802" name = "l02802" > < / a > < span class = "lineno" > 2802< / span > < span class = "keywordtype" > void< / span > Init(< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keyword" > const< / span > std::vector< uint64_t> & mask);< / div >
< div class = "line" > < a id = "l02803" name = "l02803" > < / a > < span class = "lineno" > 2803< / span > < / div >
< div class = "line" > < a id = "l02806" name = "l02806" > < / a > < span class = "lineno" > 2806< / span > < span class = "keywordtype" > bool< / span > RevSubtract(< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keyword" > const< / span > std::vector< uint64_t> & mask);< / div >
< div class = "line" > < a id = "l02807" name = "l02807" > < / a > < span class = "lineno" > 2807< / span > < / div >
< div class = "line" > < a id = "l02810" name = "l02810" > < / a > < span class = "lineno" > 2810< / span > < span class = "keywordtype" > bool< / span > RevAnd(< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver, < span class = "keyword" > const< / span > std::vector< uint64_t> & mask);< / div >
< div class = "line" > < a id = "l02811" name = "l02811" > < / a > < span class = "lineno" > 2811< / span > < / div >
< div class = "line" > < a id = "l02814" name = "l02814" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#ae6bce1d393b8e189c1d550ed4f02b07f" > 2814< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#ae6bce1d393b8e189c1d550ed4f02b07f" > ActiveWordSize< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > active_words_.Size(); }< / div >
< div class = "line" > < a id = "l02815" name = "l02815" > < / a > < span class = "lineno" > 2815< / span > < / div >
< div class = "line" > < a id = "l02817" name = "l02817" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#abcfbdba215d3b15fbb4b682969943a6e" > 2817< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#abcfbdba215d3b15fbb4b682969943a6e" > Empty< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > active_words_.Size() == 0; }< / div >
< div class = "line" > < a id = "l02818" name = "l02818" > < / a > < span class = "lineno" > 2818< / span > < / div >
< div class = "line" > < a id = "l02826" name = "l02826" > < / a > < span class = "lineno" > 2826< / span > < span class = "keywordtype" > bool< / span > Intersects(< span class = "keyword" > const< / span > std::vector< uint64_t> & mask, < span class = "keywordtype" > int< / span > * support_index);< / div >
< div class = "line" > < a id = "l02827" name = "l02827" > < / a > < span class = "lineno" > 2827< / span > < / div >
< div class = "line" > < a id = "l02829" name = "l02829" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a44d180cc00f52b2c221bb9a59c598d78" > 2829< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a44d180cc00f52b2c221bb9a59c598d78" > bit_size< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > bit_size_; }< / div >
< div class = "line" > < a id = "l02831" name = "l02831" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a3e7853de206b761301ac2ab64d10cee7" > 2831< / a > < / span > int64_t < a class = "code hl_function" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a3e7853de206b761301ac2ab64d10cee7" > word_size< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > word_size_; }< / div >
< div class = "line" > < a id = "l02833" name = "l02833" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#aa9ee56e96a76bffbcde4676be746755d" > 2833< / a > < / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_int_set.html" > RevIntSet< int> < / a > & < a class = "code hl_function" href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#aa9ee56e96a76bffbcde4676be746755d" > active_words< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > active_words_; }< / div >
< div class = "line" > < a id = "l02834" name = "l02834" > < / a > < span class = "lineno" > 2834< / span > < / div >
< div class = "line" > < a id = "l02835" name = "l02835" > < / a > < span class = "lineno" > 2835< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l02836" name = "l02836" > < / a > < span class = "lineno" > 2836< / span > < span class = "keywordtype" > void< / span > CleanUpActives(< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * < span class = "keyword" > const< / span > solver);< / div >
< div class = "line" > < a id = "l02837" name = "l02837" > < / a > < span class = "lineno" > 2837< / span > < / div >
< div class = "line" > < a id = "l02838" name = "l02838" > < / a > < span class = "lineno" > 2838< / span > < span class = "keyword" > const< / span > int64_t bit_size_;< / div >
< div class = "line" > < a id = "l02839" name = "l02839" > < / a > < span class = "lineno" > 2839< / span > < span class = "keyword" > const< / span > int64_t word_size_;< / div >
< div class = "line" > < a id = "l02840" name = "l02840" > < / a > < span class = "lineno" > 2840< / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_array.html" > RevArray< uint64_t> < / a > bits_;< / div >
< div class = "line" > < a id = "l02841" name = "l02841" > < / a > < span class = "lineno" > 2841< / span > < a class = "code hl_class" href = "classoperations__research_1_1_rev_int_set.html" > RevIntSet< int> < / a > active_words_;< / div >
< div class = "line" > < a id = "l02842" name = "l02842" > < / a > < span class = "lineno" > 2842< / span > std::vector< int> < a class = "code hl_variable" href = "constraint__solver_2table_8cc.html#ace49187800bab1a967e655278e69ca39" > to_remove_< / a > ;< / div >
< div class = "line" > < a id = "l02843" name = "l02843" > < / a > < span class = "lineno" > 2843< / span > };< / div >
< div class = "line" > < a id = "l02844" name = "l02844" > < / a > < span class = "lineno" > 2844< / span > < / div >
< div class = "line" > < a id = "l02845" name = "l02845" > < / a > < span class = "lineno" > 2845< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02846" name = "l02846" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a12527c82ffc8b31c5d8dc836c366d624" > 2846< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a12527c82ffc8b31c5d8dc836c366d624" > IsArrayConstant< / a > (< span class = "keyword" > const< / span > std::vector< T> & values, < span class = "keyword" > const< / span > T& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02847" name = "l02847" > < / a > < span class = "lineno" > 2847< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < values.size(); ++i) {< / div >
< div class = "line" > < a id = "l02848" name = "l02848" > < / a > < span class = "lineno" > 2848< / span > < span class = "keywordflow" > if< / span > (values[i] != < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02849" name = "l02849" > < / a > < span class = "lineno" > 2849< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02850" name = "l02850" > < / a > < span class = "lineno" > 2850< / span > }< / div >
< div class = "line" > < a id = "l02851" name = "l02851" > < / a > < span class = "lineno" > 2851< / span > }< / div >
< div class = "line" > < a id = "l02852" name = "l02852" > < / a > < span class = "lineno" > 2852< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02853" name = "l02853" > < / a > < span class = "lineno" > 2853< / span > }< / div >
< div class = "line" > < a id = "l02854" name = "l02854" > < / a > < span class = "lineno" > 2854< / span > < / div >
< div class = "line" > < a id = "l02855" name = "l02855" > < / a > < span class = "lineno" > 2855< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02856" name = "l02856" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a3f4525e71a6b05d97c868f0832750a60" > 2856< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a3f4525e71a6b05d97c868f0832750a60" > IsArrayBoolean< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02857" name = "l02857" > < / a > < span class = "lineno" > 2857< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < values.size(); ++i) {< / div >
< div class = "line" > < a id = "l02858" name = "l02858" > < / a > < span class = "lineno" > 2858< / span > < span class = "keywordflow" > if< / span > (values[i] != 0 & & values[i] != 1) {< / div >
< div class = "line" > < a id = "l02859" name = "l02859" > < / a > < span class = "lineno" > 2859< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02860" name = "l02860" > < / a > < span class = "lineno" > 2860< / span > }< / div >
< div class = "line" > < a id = "l02861" name = "l02861" > < / a > < span class = "lineno" > 2861< / span > }< / div >
< div class = "line" > < a id = "l02862" name = "l02862" > < / a > < span class = "lineno" > 2862< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02863" name = "l02863" > < / a > < span class = "lineno" > 2863< / span > }< / div >
< div class = "line" > < a id = "l02864" name = "l02864" > < / a > < span class = "lineno" > 2864< / span > < / div >
< div class = "line" > < a id = "l02865" name = "l02865" > < / a > < span class = "lineno" > 2865< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02866" name = "l02866" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ae3e4f71c4c79e0b4ec00c4e715a7c298" > 2866< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#ae3e4f71c4c79e0b4ec00c4e715a7c298" > AreAllOnes< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02867" name = "l02867" > < / a > < span class = "lineno" > 2867< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a12527c82ffc8b31c5d8dc836c366d624" > IsArrayConstant< / a > (values, T(1));< / div >
< div class = "line" > < a id = "l02868" name = "l02868" > < / a > < span class = "lineno" > 2868< / span > }< / div >
< div class = "line" > < a id = "l02869" name = "l02869" > < / a > < span class = "lineno" > 2869< / span > < / div >
< div class = "line" > < a id = "l02870" name = "l02870" > < / a > < span class = "lineno" > 2870< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02871" name = "l02871" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ab0ae787392a8dd8a499eb55ac0916aa4" > 2871< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#ab0ae787392a8dd8a499eb55ac0916aa4" > AreAllNull< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02872" name = "l02872" > < / a > < span class = "lineno" > 2872< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a12527c82ffc8b31c5d8dc836c366d624" > IsArrayConstant< / a > (values, T(0));< / div >
< div class = "line" > < a id = "l02873" name = "l02873" > < / a > < span class = "lineno" > 2873< / span > }< / div >
< div class = "line" > < a id = "l02874" name = "l02874" > < / a > < span class = "lineno" > 2874< / span > < / div >
< div class = "line" > < a id = "l02875" name = "l02875" > < / a > < span class = "lineno" > 2875< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02876" name = "l02876" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a3aea406979285a28c91fd1ee8115af74" > 2876< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a3aea406979285a28c91fd1ee8115af74" > AreAllGreaterOrEqual< / a > (< span class = "keyword" > const< / span > std::vector< T> & values, < span class = "keyword" > const< / span > T& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02877" name = "l02877" > < / a > < span class = "lineno" > 2877< / span > < span class = "keywordflow" > for< / span > (< span class = "keyword" > const< / span > T& current_value : values) {< / div >
< div class = "line" > < a id = "l02878" name = "l02878" > < / a > < span class = "lineno" > 2878< / span > < span class = "keywordflow" > if< / span > (current_value < < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02879" name = "l02879" > < / a > < span class = "lineno" > 2879< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02880" name = "l02880" > < / a > < span class = "lineno" > 2880< / span > }< / div >
< div class = "line" > < a id = "l02881" name = "l02881" > < / a > < span class = "lineno" > 2881< / span > }< / div >
< div class = "line" > < a id = "l02882" name = "l02882" > < / a > < span class = "lineno" > 2882< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02883" name = "l02883" > < / a > < span class = "lineno" > 2883< / span > }< / div >
< div class = "line" > < a id = "l02884" name = "l02884" > < / a > < span class = "lineno" > 2884< / span > < / div >
< div class = "line" > < a id = "l02885" name = "l02885" > < / a > < span class = "lineno" > 2885< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02886" name = "l02886" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a15f08cfbb35e2b8b1eb76f79caea924a" > 2886< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a15f08cfbb35e2b8b1eb76f79caea924a" > AreAllLessOrEqual< / a > (< span class = "keyword" > const< / span > std::vector< T> & values, < span class = "keyword" > const< / span > T& < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02887" name = "l02887" > < / a > < span class = "lineno" > 2887< / span > < span class = "keywordflow" > for< / span > (< span class = "keyword" > const< / span > T& current_value : values) {< / div >
< div class = "line" > < a id = "l02888" name = "l02888" > < / a > < span class = "lineno" > 2888< / span > < span class = "keywordflow" > if< / span > (current_value > < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02889" name = "l02889" > < / a > < span class = "lineno" > 2889< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02890" name = "l02890" > < / a > < span class = "lineno" > 2890< / span > }< / div >
< div class = "line" > < a id = "l02891" name = "l02891" > < / a > < span class = "lineno" > 2891< / span > }< / div >
< div class = "line" > < a id = "l02892" name = "l02892" > < / a > < span class = "lineno" > 2892< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02893" name = "l02893" > < / a > < span class = "lineno" > 2893< / span > }< / div >
< div class = "line" > < a id = "l02894" name = "l02894" > < / a > < span class = "lineno" > 2894< / span > < / div >
< div class = "line" > < a id = "l02895" name = "l02895" > < / a > < span class = "lineno" > 2895< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02896" name = "l02896" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ab62b402f767cda48eb67ef8b50397f8f" > 2896< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#ab62b402f767cda48eb67ef8b50397f8f" > AreAllPositive< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02897" name = "l02897" > < / a > < span class = "lineno" > 2897< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a3aea406979285a28c91fd1ee8115af74" > AreAllGreaterOrEqual< / a > (values, T(0));< / div >
< div class = "line" > < a id = "l02898" name = "l02898" > < / a > < span class = "lineno" > 2898< / span > }< / div >
< div class = "line" > < a id = "l02899" name = "l02899" > < / a > < span class = "lineno" > 2899< / span > < / div >
< div class = "line" > < a id = "l02900" name = "l02900" > < / a > < span class = "lineno" > 2900< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02901" name = "l02901" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a38972723946490ea4df4e34298d8805d" > 2901< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a38972723946490ea4df4e34298d8805d" > AreAllNegative< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02902" name = "l02902" > < / a > < span class = "lineno" > 2902< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a15f08cfbb35e2b8b1eb76f79caea924a" > AreAllLessOrEqual< / a > (values, T(0));< / div >
< div class = "line" > < a id = "l02903" name = "l02903" > < / a > < span class = "lineno" > 2903< / span > }< / div >
< div class = "line" > < a id = "l02904" name = "l02904" > < / a > < span class = "lineno" > 2904< / span > < / div >
< div class = "line" > < a id = "l02905" name = "l02905" > < / a > < span class = "lineno" > 2905< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02906" name = "l02906" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a3de09f9134b976e5ba64751ac0f4440b" > 2906< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a3de09f9134b976e5ba64751ac0f4440b" > AreAllStrictlyPositive< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02907" name = "l02907" > < / a > < span class = "lineno" > 2907< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a3aea406979285a28c91fd1ee8115af74" > AreAllGreaterOrEqual< / a > (values, T(1));< / div >
< div class = "line" > < a id = "l02908" name = "l02908" > < / a > < span class = "lineno" > 2908< / span > }< / div >
< div class = "line" > < a id = "l02909" name = "l02909" > < / a > < span class = "lineno" > 2909< / span > < / div >
< div class = "line" > < a id = "l02910" name = "l02910" > < / a > < span class = "lineno" > 2910< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02911" name = "l02911" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a8351829c324863ddda52e201df4f9f84" > 2911< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a8351829c324863ddda52e201df4f9f84" > AreAllStrictlyNegative< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02912" name = "l02912" > < / a > < span class = "lineno" > 2912< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a15f08cfbb35e2b8b1eb76f79caea924a" > AreAllLessOrEqual< / a > (values, T(-1));< / div >
< div class = "line" > < a id = "l02913" name = "l02913" > < / a > < span class = "lineno" > 2913< / span > }< / div >
< div class = "line" > < a id = "l02914" name = "l02914" > < / a > < span class = "lineno" > 2914< / span > < / div >
< div class = "line" > < a id = "l02915" name = "l02915" > < / a > < span class = "lineno" > 2915< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02916" name = "l02916" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#aafac7375c23337f25821aa6f86ca627c" > 2916< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#aafac7375c23337f25821aa6f86ca627c" > IsIncreasingContiguous< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02917" name = "l02917" > < / a > < span class = "lineno" > 2917< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < values.size() - 1; ++i) {< / div >
< div class = "line" > < a id = "l02918" name = "l02918" > < / a > < span class = "lineno" > 2918< / span > < span class = "keywordflow" > if< / span > (values[i + 1] != values[i] + 1) {< / div >
< div class = "line" > < a id = "l02919" name = "l02919" > < / a > < span class = "lineno" > 2919< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02920" name = "l02920" > < / a > < span class = "lineno" > 2920< / span > }< / div >
< div class = "line" > < a id = "l02921" name = "l02921" > < / a > < span class = "lineno" > 2921< / span > }< / div >
< div class = "line" > < a id = "l02922" name = "l02922" > < / a > < span class = "lineno" > 2922< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02923" name = "l02923" > < / a > < span class = "lineno" > 2923< / span > }< / div >
< div class = "line" > < a id = "l02924" name = "l02924" > < / a > < span class = "lineno" > 2924< / span > < / div >
< div class = "line" > < a id = "l02925" name = "l02925" > < / a > < span class = "lineno" > 2925< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02926" name = "l02926" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a3d434774c07815a25ffaa7adb343c19e" > 2926< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a3d434774c07815a25ffaa7adb343c19e" > IsIncreasing< / a > (< span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02927" name = "l02927" > < / a > < span class = "lineno" > 2927< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < values.size() - 1; ++i) {< / div >
< div class = "line" > < a id = "l02928" name = "l02928" > < / a > < span class = "lineno" > 2928< / span > < span class = "keywordflow" > if< / span > (values[i + 1] < values[i]) {< / div >
< div class = "line" > < a id = "l02929" name = "l02929" > < / a > < span class = "lineno" > 2929< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02930" name = "l02930" > < / a > < span class = "lineno" > 2930< / span > }< / div >
< div class = "line" > < a id = "l02931" name = "l02931" > < / a > < span class = "lineno" > 2931< / span > }< / div >
< div class = "line" > < a id = "l02932" name = "l02932" > < / a > < span class = "lineno" > 2932< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02933" name = "l02933" > < / a > < span class = "lineno" > 2933< / span > }< / div >
< div class = "line" > < a id = "l02934" name = "l02934" > < / a > < span class = "lineno" > 2934< / span > < / div >
< div class = "line" > < a id = "l02935" name = "l02935" > < / a > < span class = "lineno" > 2935< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02936" name = "l02936" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#adf2aea6c68fe502389c9264b971b2f85" > 2936< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#adf2aea6c68fe502389c9264b971b2f85" > IsArrayInRange< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars, T range_min,< / div >
< div class = "line" > < a id = "l02937" name = "l02937" > < / a > < span class = "lineno" > 2937< / span > T range_max) {< / div >
< div class = "line" > < a id = "l02938" name = "l02938" > < / a > < span class = "lineno" > 2938< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < vars.size(); ++i) {< / div >
< div class = "line" > < a id = "l02939" name = "l02939" > < / a > < span class = "lineno" > 2939< / span > < span class = "keywordflow" > if< / span > (vars[i]-> Min() < range_min || vars[i]-> Max() > range_max) {< / div >
< div class = "line" > < a id = "l02940" name = "l02940" > < / a > < span class = "lineno" > 2940< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02941" name = "l02941" > < / a > < span class = "lineno" > 2941< / span > }< / div >
< div class = "line" > < a id = "l02942" name = "l02942" > < / a > < span class = "lineno" > 2942< / span > }< / div >
< div class = "line" > < a id = "l02943" name = "l02943" > < / a > < span class = "lineno" > 2943< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02944" name = "l02944" > < / a > < span class = "lineno" > 2944< / span > }< / div >
< div class = "line" > < a id = "l02945" name = "l02945" > < / a > < span class = "lineno" > 2945< / span > < / div >
< div class = "line" > < a id = "l02946" name = "l02946" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ae4c7a8bfc6877606e512d3279549f44d" > 2946< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#ae4c7a8bfc6877606e512d3279549f44d" > AreAllBound< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars) {< / div >
< div class = "line" > < a id = "l02947" name = "l02947" > < / a > < span class = "lineno" > 2947< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < vars.size(); ++i) {< / div >
< div class = "line" > < a id = "l02948" name = "l02948" > < / a > < span class = "lineno" > 2948< / span > < span class = "keywordflow" > if< / span > (!vars[i]-> Bound()) {< / div >
< div class = "line" > < a id = "l02949" name = "l02949" > < / a > < span class = "lineno" > 2949< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02950" name = "l02950" > < / a > < span class = "lineno" > 2950< / span > }< / div >
< div class = "line" > < a id = "l02951" name = "l02951" > < / a > < span class = "lineno" > 2951< / span > }< / div >
< div class = "line" > < a id = "l02952" name = "l02952" > < / a > < span class = "lineno" > 2952< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02953" name = "l02953" > < / a > < span class = "lineno" > 2953< / span > }< / div >
< div class = "line" > < a id = "l02954" name = "l02954" > < / a > < span class = "lineno" > 2954< / span > < / div >
< div class = "line" > < a id = "l02955" name = "l02955" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a7abde7313cef64d25202a18f07481fc3" > 2955< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a7abde7313cef64d25202a18f07481fc3" > AreAllBooleans< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars) {< / div >
< div class = "line" > < a id = "l02956" name = "l02956" > < / a > < span class = "lineno" > 2956< / span > < span class = "keywordflow" > return< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#adf2aea6c68fe502389c9264b971b2f85" > IsArrayInRange< / a > (vars, 0, 1);< / div >
< div class = "line" > < a id = "l02957" name = "l02957" > < / a > < span class = "lineno" > 2957< / span > }< / div >
< div class = "line" > < a id = "l02958" name = "l02958" > < / a > < span class = "lineno" > 2958< / span > < / div >
< div class = "line" > < a id = "l02961" name = "l02961" > < / a > < span class = "lineno" > 2961< / span > < span class = "keyword" > template< / span > < < span class = "keyword" > class< / span > T> < / div >
< div class = "line" > < a id = "l02962" name = "l02962" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a54470bffc3ea32cc37d0222e5dbb62a6" > 2962< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a54470bffc3ea32cc37d0222e5dbb62a6" > AreAllBoundOrNull< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars,< / div >
< div class = "line" > < a id = "l02963" name = "l02963" > < / a > < span class = "lineno" > 2963< / span > < span class = "keyword" > const< / span > std::vector< T> & values) {< / div >
< div class = "line" > < a id = "l02964" name = "l02964" > < / a > < span class = "lineno" > 2964< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < vars.size(); ++i) {< / div >
< div class = "line" > < a id = "l02965" name = "l02965" > < / a > < span class = "lineno" > 2965< / span > < span class = "keywordflow" > if< / span > (values[i] != 0 & & !vars[i]-> Bound()) {< / div >
< div class = "line" > < a id = "l02966" name = "l02966" > < / a > < span class = "lineno" > 2966< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02967" name = "l02967" > < / a > < span class = "lineno" > 2967< / span > }< / div >
< div class = "line" > < a id = "l02968" name = "l02968" > < / a > < span class = "lineno" > 2968< / span > }< / div >
< div class = "line" > < a id = "l02969" name = "l02969" > < / a > < span class = "lineno" > 2969< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02970" name = "l02970" > < / a > < span class = "lineno" > 2970< / span > }< / div >
< div class = "line" > < a id = "l02971" name = "l02971" > < / a > < span class = "lineno" > 2971< / span > < / div >
< div class = "line" > < a id = "l02973" name = "l02973" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a78ff06a9b302c6c96d8d917da235b749" > 2973< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a78ff06a9b302c6c96d8d917da235b749" > AreAllBoundTo< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars, int64_t < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02974" name = "l02974" > < / a > < span class = "lineno" > 2974< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < vars.size(); ++i) {< / div >
< div class = "line" > < a id = "l02975" name = "l02975" > < / a > < span class = "lineno" > 2975< / span > < span class = "keywordflow" > if< / span > (!vars[i]-> Bound() || vars[i]-> Min() != < a class = "code hl_variable" href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > ) {< / div >
< div class = "line" > < a id = "l02976" name = "l02976" > < / a > < span class = "lineno" > 2976< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l02977" name = "l02977" > < / a > < span class = "lineno" > 2977< / span > }< / div >
< div class = "line" > < a id = "l02978" name = "l02978" > < / a > < span class = "lineno" > 2978< / span > }< / div >
< div class = "line" > < a id = "l02979" name = "l02979" > < / a > < span class = "lineno" > 2979< / span > < span class = "keywordflow" > return< / span > < span class = "keyword" > true< / span > ;< / div >
< div class = "line" > < a id = "l02980" name = "l02980" > < / a > < span class = "lineno" > 2980< / span > }< / div >
< div class = "line" > < a id = "l02981" name = "l02981" > < / a > < span class = "lineno" > 2981< / span > < / div >
< div class = "line" > < a id = "l02982" name = "l02982" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a587a6a73cbcb4e4a4c7d3b596fa407aa" > 2982< / a > < / span > < span class = "keyword" > inline< / span > int64_t < a class = "code hl_function" href = "namespaceoperations__research.html#a587a6a73cbcb4e4a4c7d3b596fa407aa" > MaxVarArray< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars) {< / div >
< div class = "line" > < a id = "l02983" name = "l02983" > < / a > < span class = "lineno" > 2983< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (!vars.empty());< / div >
< div class = "line" > < a id = "l02984" name = "l02984" > < / a > < span class = "lineno" > 2984< / span > int64_t result = < a class = "code hl_variable" href = "integral__types_8h.html#af8b05f1b3a4c4ef94dd184c6c31a56e6" > kint64min< / a > ;< / div >
< div class = "line" > < a id = "l02985" name = "l02985" > < / a > < span class = "lineno" > 2985< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < vars.size(); ++i) {< / div >
< div class = "line" > < a id = "l02987" name = "l02987" > < / a > < span class = "lineno" > 2987< / span > result = std::max< int64_t> (result, vars[i]-> Max());< / div >
< div class = "line" > < a id = "l02988" name = "l02988" > < / a > < span class = "lineno" > 2988< / span > }< / div >
< div class = "line" > < a id = "l02989" name = "l02989" > < / a > < span class = "lineno" > 2989< / span > < span class = "keywordflow" > return< / span > result;< / div >
< div class = "line" > < a id = "l02990" name = "l02990" > < / a > < span class = "lineno" > 2990< / span > }< / div >
< div class = "line" > < a id = "l02991" name = "l02991" > < / a > < span class = "lineno" > 2991< / span > < / div >
< div class = "line" > < a id = "l02992" name = "l02992" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a8e8f645f06f9749b562b6625cd822daa" > 2992< / a > < / span > < span class = "keyword" > inline< / span > int64_t < a class = "code hl_function" href = "namespaceoperations__research.html#a8e8f645f06f9749b562b6625cd822daa" > MinVarArray< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars) {< / div >
< div class = "line" > < a id = "l02993" name = "l02993" > < / a > < span class = "lineno" > 2993< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > (!vars.empty());< / div >
< div class = "line" > < a id = "l02994" name = "l02994" > < / a > < span class = "lineno" > 2994< / span > int64_t result = < a class = "code hl_variable" href = "integral__types_8h.html#a808bd435380aa1e2bbd6f13ac7759897" > kint64max< / a > ;< / div >
< div class = "line" > < a id = "l02995" name = "l02995" > < / a > < span class = "lineno" > 2995< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < vars.size(); ++i) {< / div >
< div class = "line" > < a id = "l02997" name = "l02997" > < / a > < span class = "lineno" > 2997< / span > result = std::min< int64_t> (result, vars[i]-> Min());< / div >
< div class = "line" > < a id = "l02998" name = "l02998" > < / a > < span class = "lineno" > 2998< / span > }< / div >
< div class = "line" > < a id = "l02999" name = "l02999" > < / a > < span class = "lineno" > 2999< / span > < span class = "keywordflow" > return< / span > result;< / div >
< div class = "line" > < a id = "l03000" name = "l03000" > < / a > < span class = "lineno" > 3000< / span > }< / div >
< div class = "line" > < a id = "l03001" name = "l03001" > < / a > < span class = "lineno" > 3001< / span > < / div >
< div class = "line" > < a id = "l03002" name = "l03002" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#a79edaa5bfddfcd382d36a2ae25df798c" > 3002< / a > < / span > < span class = "keyword" > inline< / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "namespaceoperations__research.html#a79edaa5bfddfcd382d36a2ae25df798c" > FillValues< / a > (< span class = "keyword" > const< / span > std::vector< IntVar*> & vars,< / div >
< div class = "line" > < a id = "l03003" name = "l03003" > < / a > < span class = "lineno" > 3003< / span > std::vector< int64_t> * < span class = "keyword" > const< / span > values) {< / div >
< div class = "line" > < a id = "l03004" name = "l03004" > < / a > < span class = "lineno" > 3004< / span > values-> clear();< / div >
< div class = "line" > < a id = "l03005" name = "l03005" > < / a > < span class = "lineno" > 3005< / span > values-> resize(vars.size());< / div >
< div class = "line" > < a id = "l03006" name = "l03006" > < / a > < span class = "lineno" > 3006< / span > < span class = "keywordflow" > for< / span > (< span class = "keywordtype" > int< / span > i = 0; i < vars.size(); ++i) {< / div >
< div class = "line" > < a id = "l03007" name = "l03007" > < / a > < span class = "lineno" > 3007< / span > (*values)[i] = vars[i]-> Value();< / div >
< div class = "line" > < a id = "l03008" name = "l03008" > < / a > < span class = "lineno" > 3008< / span > }< / div >
< div class = "line" > < a id = "l03009" name = "l03009" > < / a > < span class = "lineno" > 3009< / span > }< / div >
< div class = "line" > < a id = "l03010" name = "l03010" > < / a > < span class = "lineno" > 3010< / span > < / div >
< div class = "line" > < a id = "l03011" name = "l03011" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#afb0903025d265c67199f5f09cee57ed0" > 3011< / a > < / span > < span class = "keyword" > inline< / span > int64_t < a class = "code hl_function" href = "namespaceoperations__research.html#afb0903025d265c67199f5f09cee57ed0" > PosIntDivUp< / a > (int64_t e, int64_t v) {< / div >
< div class = "line" > < a id = "l03012" name = "l03012" > < / a > < span class = "lineno" > 3012< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab4f56aa24c4c9cddc47a6abd2d747f9a" > DCHECK_GT< / a > (v, 0);< / div >
< div class = "line" > < a id = "l03013" name = "l03013" > < / a > < span class = "lineno" > 3013< / span > < span class = "keywordflow" > return< / span > (e < 0 || e % v == 0) ? e / v : e / v + 1;< / div >
< div class = "line" > < a id = "l03014" name = "l03014" > < / a > < span class = "lineno" > 3014< / span > }< / div >
< div class = "line" > < a id = "l03015" name = "l03015" > < / a > < span class = "lineno" > 3015< / span > < / div >
< div class = "line" > < a id = "l03016" name = "l03016" > < / a > < span class = "lineno" > < a class = "line" href = "namespaceoperations__research.html#ade1945fe75ec08245775fc4df20153d6" > 3016< / a > < / span > < span class = "keyword" > inline< / span > int64_t < a class = "code hl_function" href = "namespaceoperations__research.html#ade1945fe75ec08245775fc4df20153d6" > PosIntDivDown< / a > (int64_t e, int64_t v) {< / div >
< div class = "line" > < a id = "l03017" name = "l03017" > < / a > < span class = "lineno" > 3017< / span > < a class = "code hl_define" href = "base_2logging_8h.html#ab4f56aa24c4c9cddc47a6abd2d747f9a" > DCHECK_GT< / a > (v, 0);< / div >
< div class = "line" > < a id = "l03018" name = "l03018" > < / a > < span class = "lineno" > 3018< / span > < span class = "keywordflow" > return< / span > (e > = 0 || e % v == 0) ? e / v : e / v - 1;< / div >
< div class = "line" > < a id = "l03019" name = "l03019" > < / a > < span class = "lineno" > 3019< / span > }< / div >
< div class = "line" > < a id = "l03020" name = "l03020" > < / a > < span class = "lineno" > 3020< / span > < / div >
< div class = "line" > < a id = "l03021" name = "l03021" > < / a > < span class = "lineno" > 3021< / span > std::vector< int64_t> < a class = "code hl_function" href = "namespaceoperations__research.html#abeac98dfd5ab1335f6d21a8d71bdfd51" > ToInt64Vector< / a > (< span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_function" href = "parser_8yy_8cc.html#a5a634cf4429798b1c921a81de8250051" > input< / a > );< / div >
< div class = "line" > < a id = "l03022" name = "l03022" > < / a > < span class = "lineno" > 3022< / span > < / div >
< div class = "line" > < a id = "l03023" name = "l03023" > < / a > < span class = "lineno" > 3023< / span > < span class = "preprocessor" > #if !defined(SWIG)< / span > < / div >
< div class = "line" > < a id = "l03024" name = "l03024" > < / a > < span class = "lineno" > 3024< / span > < span class = "comment" > // A PathState represents a set of paths and changes made on it.< / span > < / div >
< div class = "line" > < a id = "l03025" name = "l03025" > < / a > < span class = "lineno" > 3025< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l03026" name = "l03026" > < / a > < span class = "lineno" > 3026< / span > < span class = "comment" > // More accurately, let us define P_{num_nodes, starts, ends}-graphs the set of< / span > < / div >
< div class = "line" > < a id = "l03027" name = "l03027" > < / a > < span class = "lineno" > 3027< / span > < span class = "comment" > // directed graphs with nodes [0, num_nodes) whose connected components are< / span > < / div >
< div class = "line" > < a id = "l03028" name = "l03028" > < / a > < span class = "lineno" > 3028< / span > < span class = "comment" > // paths from starts[i] to ends[i] (for the same i) and loops.< / span > < / div >
< div class = "line" > < a id = "l03029" name = "l03029" > < / a > < span class = "lineno" > 3029< / span > < span class = "comment" > // Let us fix num_nodes, starts and ends, so we call these P-graphs.< / span > < / div >
< div class = "line" > < a id = "l03030" name = "l03030" > < / a > < span class = "lineno" > 3030< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l03031" name = "l03031" > < / a > < span class = "lineno" > 3031< / span > < span class = "comment" > // A P-graph can be described by the sequence of nodes of each of its paths,< / span > < / div >
< div class = "line" > < a id = "l03032" name = "l03032" > < / a > < span class = "lineno" > 3032< / span > < span class = "comment" > // and its set of loops. To describe a change made on a given P-graph G0 that< / span > < / div >
< div class = "line" > < a id = "l03033" name = "l03033" > < / a > < span class = "lineno" > 3033< / span > < span class = "comment" > // yields another P-graph G1, we choose to describe G1 in terms of G0. When< / span > < / div >
< div class = "line" > < a id = "l03034" name = "l03034" > < / a > < span class = "lineno" > 3034< / span > < span class = "comment" > // the difference between G0 and G1 is small, as is almost always the case in a< / span > < / div >
< div class = "line" > < a id = "l03035" name = "l03035" > < / a > < span class = "lineno" > 3035< / span > < span class = "comment" > // local search setting, the description is compact, allowing for incremental< / span > < / div >
< div class = "line" > < a id = "l03036" name = "l03036" > < / a > < span class = "lineno" > 3036< / span > < span class = "comment" > // filters to be efficient.< / span > < / div >
< div class = "line" > < a id = "l03037" name = "l03037" > < / a > < span class = "lineno" > 3037< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l03038" name = "l03038" > < / a > < span class = "lineno" > 3038< / span > < span class = "comment" > // In order to describe G1 in terms of G0 succintly, we describe each path of< / span > < / div >
< div class = "line" > < a id = "l03039" name = "l03039" > < / a > < span class = "lineno" > 3039< / span > < span class = "comment" > // G1 as a sequence of chains of G0. A chain of G0 is either a nonempty sequence< / span > < / div >
< div class = "line" > < a id = "l03040" name = "l03040" > < / a > < span class = "lineno" > 3040< / span > < span class = "comment" > // of consecutive nodes of a path of G0, or a node that was a loop in G0.< / span > < / div >
< div class = "line" > < a id = "l03041" name = "l03041" > < / a > < span class = "lineno" > 3041< / span > < span class = "comment" > // For instance, a path that was not modified from G0 to G1 has one chain,< / span > < / div >
< div class = "line" > < a id = "l03042" name = "l03042" > < / a > < span class = "lineno" > 3042< / span > < span class = "comment" > // the sequence of all nodes in the path. Typically, local search operators< / span > < / div >
< div class = "line" > < a id = "l03043" name = "l03043" > < / a > < span class = "lineno" > 3043< / span > < span class = "comment" > // modify one or two paths, and the resulting paths can described as sequences< / span > < / div >
< div class = "line" > < a id = "l03044" name = "l03044" > < / a > < span class = "lineno" > 3044< / span > < span class = "comment" > // of two to four chains of G0. Paths that were modified are listed explicitly,< / span > < / div >
< div class = "line" > < a id = "l03045" name = "l03045" > < / a > < span class = "lineno" > 3045< / span > < span class = "comment" > // allowing to iterate only on changed paths.< / span > < / div >
< div class = "line" > < a id = "l03046" name = "l03046" > < / a > < span class = "lineno" > 3046< / span > < span class = "comment" > // The loops of G1 are described more implicitly: the loops of G1 not in G0< / span > < / div >
< div class = "line" > < a id = "l03047" name = "l03047" > < / a > < span class = "lineno" > 3047< / span > < span class = "comment" > // are listed explicitly, but those in both G1 and G0 are not listed.< / span > < / div >
< div class = "line" > < a id = "l03048" name = "l03048" > < / a > < span class = "lineno" > 3048< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l03049" name = "l03049" > < / a > < span class = "lineno" > 3049< / span > < span class = "comment" > // A PathState object can be in two states: committed or changed.< / span > < / div >
< div class = "line" > < a id = "l03050" name = "l03050" > < / a > < span class = "lineno" > 3050< / span > < span class = "comment" > // At construction, the object is committed, G0.< / span > < / div >
< div class = "line" > < a id = "l03051" name = "l03051" > < / a > < span class = "lineno" > 3051< / span > < span class = "comment" > // To enter a changed state G1, one can pass modifications with ChangePath() and< / span > < / div >
< div class = "line" > < a id = "l03052" name = "l03052" > < / a > < span class = "lineno" > 3052< / span > < span class = "comment" > // ChangeLoops(). For reasons of efficiency, a chain is described as a range of< / span > < / div >
< div class = "line" > < a id = "l03053" name = "l03053" > < / a > < span class = "lineno" > 3053< / span > < span class = "comment" > // node indices in the representation of the committed graph G0. To that effect,< / span > < / div >
< div class = "line" > < a id = "l03054" name = "l03054" > < / a > < span class = "lineno" > 3054< / span > < span class = "comment" > // the nodes of a path of G0 are guaranteed to have consecutive indices.< / span > < / div >
< div class = "line" > < a id = "l03055" name = "l03055" > < / a > < span class = "lineno" > 3055< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l03056" name = "l03056" > < / a > < span class = "lineno" > 3056< / span > < span class = "comment" > // Filters can then browse the change efficiently using ChangedPaths(),< / span > < / div >
< div class = "line" > < a id = "l03057" name = "l03057" > < / a > < span class = "lineno" > 3057< / span > < span class = "comment" > // Chains(), Nodes() and ChangedLoops().< / span > < / div >
< div class = "line" > < a id = "l03058" name = "l03058" > < / a > < span class = "lineno" > 3058< / span > < span class = "comment" > //< / span > < / div >
< div class = "line" > < a id = "l03059" name = "l03059" > < / a > < span class = "lineno" > 3059< / span > < span class = "comment" > // Then Commit() or Revert() can be called: Commit() sets the changed state G1< / span > < / div >
< div class = "line" > < a id = "l03060" name = "l03060" > < / a > < span class = "lineno" > 3060< / span > < span class = "comment" > // as the new committed state, Revert() erases all changes.< / span > < / div >
< div class = "line" > < a id = "l03061" name = "l03061" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html" > 3061< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state.html" > PathState< / a > {< / div >
< div class = "line" > < a id = "l03062" name = "l03062" > < / a > < span class = "lineno" > 3062< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03063" name = "l03063" > < / a > < span class = "lineno" > 3063< / span > < span class = "comment" > // A Chain allows to iterate on all nodes of a chain, and access some data:< / span > < / div >
< div class = "line" > < a id = "l03064" name = "l03064" > < / a > < span class = "lineno" > 3064< / span > < span class = "comment" > // first node, last node, number of nodes in the chain.< / span > < / div >
< div class = "line" > < a id = "l03065" name = "l03065" > < / a > < span class = "lineno" > 3065< / span > < span class = "comment" > // Chain is a range, its iterator ChainNodeIterator, its value type int.< / span > < / div >
< div class = "line" > < a id = "l03066" name = "l03066" > < / a > < span class = "lineno" > 3066< / span > < span class = "comment" > // Chains are returned by PathChainIterator' s operator*().< / span > < / div >
< div class = "line" > < a id = "l03067" name = "l03067" > < / a > < span class = "lineno" > 3067< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain.html" > Chain< / a > ;< / div >
< div class = "line" > < a id = "l03068" name = "l03068" > < / a > < span class = "lineno" > 3068< / span > < span class = "comment" > // A ChainRange allows to iterate on all chains of a path.< / span > < / div >
< div class = "line" > < a id = "l03069" name = "l03069" > < / a > < span class = "lineno" > 3069< / span > < span class = "comment" > // ChainRange is a range, its iterator Chain*, its value type Chain.< / span > < / div >
< div class = "line" > < a id = "l03070" name = "l03070" > < / a > < span class = "lineno" > 3070< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range.html" > ChainRange< / a > ;< / div >
< div class = "line" > < a id = "l03071" name = "l03071" > < / a > < span class = "lineno" > 3071< / span > < span class = "comment" > // A NodeRange allows to iterate on all nodes of a path.< / span > < / div >
< div class = "line" > < a id = "l03072" name = "l03072" > < / a > < span class = "lineno" > 3072< / span > < span class = "comment" > // NodeRange is a range, its iterator PathNodeIterator, its value type int.< / span > < / div >
< div class = "line" > < a id = "l03073" name = "l03073" > < / a > < span class = "lineno" > 3073< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range.html" > NodeRange< / a > ;< / div >
< div class = "line" > < a id = "l03074" name = "l03074" > < / a > < span class = "lineno" > 3074< / span > < / div >
< div class = "line" > < a id = "l03075" name = "l03075" > < / a > < span class = "lineno" > 3075< / span > < span class = "comment" > // Path constructor: path_start and path_end must be disjoint,< / span > < / div >
< div class = "line" > < a id = "l03076" name = "l03076" > < / a > < span class = "lineno" > 3076< / span > < span class = "comment" > // their values in [0, num_nodes).< / span > < / div >
< div class = "line" > < a id = "l03077" name = "l03077" > < / a > < span class = "lineno" > 3077< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state.html" > PathState< / a > (< span class = "keywordtype" > int< / span > num_nodes, std::vector< int> path_start,< / div >
< div class = "line" > < a id = "l03078" name = "l03078" > < / a > < span class = "lineno" > 3078< / span > std::vector< int> path_end);< / div >
< div class = "line" > < a id = "l03079" name = "l03079" > < / a > < span class = "lineno" > 3079< / span > < / div >
< div class = "line" > < a id = "l03080" name = "l03080" > < / a > < span class = "lineno" > 3080< / span > < span class = "comment" > // Instance-constant accessors.< / span > < / div >
< div class = "line" > < a id = "l03081" name = "l03081" > < / a > < span class = "lineno" > 3081< / span > < / div >
< div class = "line" > < a id = "l03082" name = "l03082" > < / a > < span class = "lineno" > 3082< / span > < span class = "comment" > // Returns the number of nodes in the underlying graph.< / span > < / div >
< div class = "line" > < a id = "l03083" name = "l03083" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#af7b62ca470d8de1c1dde577b04671fa7" > 3083< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#af7b62ca470d8de1c1dde577b04671fa7" > NumNodes< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > num_nodes_; }< / div >
< div class = "line" > < a id = "l03084" name = "l03084" > < / a > < span class = "lineno" > 3084< / span > < span class = "comment" > // Returns the number of paths (empty paths included).< / span > < / div >
< div class = "line" > < a id = "l03085" name = "l03085" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#a0d16eaa2f4cc0dbde0c88126021ec34e" > 3085< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#a0d16eaa2f4cc0dbde0c88126021ec34e" > NumPaths< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > num_paths_; }< / div >
< div class = "line" > < a id = "l03086" name = "l03086" > < / a > < span class = "lineno" > 3086< / span > < span class = "comment" > // Returns the start of a path.< / span > < / div >
< div class = "line" > < a id = "l03087" name = "l03087" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#add5aaa3d107c19f881053c3a398df594" > 3087< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#add5aaa3d107c19f881053c3a398df594" > Start< / a > (< span class = "keywordtype" > int< / span > path)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > path_start_end_[path].start; }< / div >
< div class = "line" > < a id = "l03088" name = "l03088" > < / a > < span class = "lineno" > 3088< / span > < span class = "comment" > // Returns the end of a path.< / span > < / div >
< div class = "line" > < a id = "l03089" name = "l03089" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#ac1f21be35df1e57b870e96fcacf5cf5c" > 3089< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#ac1f21be35df1e57b870e96fcacf5cf5c" > End< / a > (< span class = "keywordtype" > int< / span > path)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > path_start_end_[path].end; }< / div >
< div class = "line" > < a id = "l03090" name = "l03090" > < / a > < span class = "lineno" > 3090< / span > < / div >
< div class = "line" > < a id = "l03091" name = "l03091" > < / a > < span class = "lineno" > 3091< / span > < span class = "comment" > // State-dependent accessors.< / span > < / div >
< div class = "line" > < a id = "l03092" name = "l03092" > < / a > < span class = "lineno" > 3092< / span > < / div >
< div class = "line" > < a id = "l03093" name = "l03093" > < / a > < span class = "lineno" > 3093< / span > < span class = "comment" > // Returns the committed path of a given node, -1 if it is a loop.< / span > < / div >
< div class = "line" > < a id = "l03094" name = "l03094" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#a937b365701ebfe974cd5cb1353261f09" > 3094< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#a937b365701ebfe974cd5cb1353261f09" > Path< / a > (< span class = "keywordtype" > int< / span > node)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l03095" name = "l03095" > < / a > < span class = "lineno" > 3095< / span > < span class = "keywordflow" > return< / span > committed_nodes_[committed_index_[node]].path;< / div >
< div class = "line" > < a id = "l03096" name = "l03096" > < / a > < span class = "lineno" > 3096< / span > }< / div >
< div class = "line" > < a id = "l03097" name = "l03097" > < / a > < span class = "lineno" > 3097< / span > < span class = "comment" > // Returns the set of arcs that have been added,< / span > < / div >
< div class = "line" > < a id = "l03098" name = "l03098" > < / a > < span class = "lineno" > 3098< / span > < span class = "comment" > // i.e. that were changed and were not in the committed state.< / span > < / div >
< div class = "line" > < a id = "l03099" name = "l03099" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#abfff11e6152645afbde1b85c50734c72" > 3099< / a > < / span > < span class = "keyword" > const< / span > std::vector< std::pair< int, int> > & < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#abfff11e6152645afbde1b85c50734c72" > ChangedArcs< / a > ()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l03100" name = "l03100" > < / a > < span class = "lineno" > 3100< / span > < span class = "keywordflow" > return< / span > changed_arcs_;< / div >
< div class = "line" > < a id = "l03101" name = "l03101" > < / a > < span class = "lineno" > 3101< / span > }< / div >
< div class = "line" > < a id = "l03102" name = "l03102" > < / a > < span class = "lineno" > 3102< / span > < span class = "comment" > // Returns the set of paths that actually changed,< / span > < / div >
< div class = "line" > < a id = "l03103" name = "l03103" > < / a > < span class = "lineno" > 3103< / span > < span class = "comment" > // i.e. that have an arc in ChangedArcs().< / span > < / div >
< div class = "line" > < a id = "l03104" name = "l03104" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#a5385bb1f08b7a7dedd4caa863f3b09b1" > 3104< / a > < / span > < span class = "keyword" > const< / span > std::vector< int> & < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#a5385bb1f08b7a7dedd4caa863f3b09b1" > ChangedPaths< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > changed_paths_; }< / div >
< div class = "line" > < a id = "l03105" name = "l03105" > < / a > < span class = "lineno" > 3105< / span > < span class = "comment" > // Returns the current range of chains of path.< / span > < / div >
< div class = "line" > < a id = "l03106" name = "l03106" > < / a > < span class = "lineno" > 3106< / span > ChainRange Chains(< span class = "keywordtype" > int< / span > path) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l03107" name = "l03107" > < / a > < span class = "lineno" > 3107< / span > < span class = "comment" > // Returns the current range of nodes of path.< / span > < / div >
< div class = "line" > < a id = "l03108" name = "l03108" > < / a > < span class = "lineno" > 3108< / span > NodeRange Nodes(< span class = "keywordtype" > int< / span > path) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l03109" name = "l03109" > < / a > < span class = "lineno" > 3109< / span > < / div >
< div class = "line" > < a id = "l03110" name = "l03110" > < / a > < span class = "lineno" > 3110< / span > < span class = "comment" > // State modifiers.< / span > < / div >
< div class = "line" > < a id = "l03111" name = "l03111" > < / a > < span class = "lineno" > 3111< / span > < / div >
< div class = "line" > < a id = "l03112" name = "l03112" > < / a > < span class = "lineno" > 3112< / span > < span class = "comment" > // Adds arc (node, new_next) to the changed state, more formally,< / span > < / div >
< div class = "line" > < a id = "l03113" name = "l03113" > < / a > < span class = "lineno" > 3113< / span > < span class = "comment" > // changes the state from (P0, D) to (P0, D + (node, new_next)).< / span > < / div >
< div class = "line" > < a id = "l03114" name = "l03114" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#af6d5206c3dd14d6b3ad08f0109cedf1e" > 3114< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#af6d5206c3dd14d6b3ad08f0109cedf1e" > ChangeNext< / a > (< span class = "keywordtype" > int< / span > node, < span class = "keywordtype" > int< / span > new_next) {< / div >
< div class = "line" > < a id = "l03115" name = "l03115" > < / a > < span class = "lineno" > 3115< / span > changed_arcs_.emplace_back(node, new_next);< / div >
< div class = "line" > < a id = "l03116" name = "l03116" > < / a > < span class = "lineno" > 3116< / span > }< / div >
< div class = "line" > < a id = "l03117" name = "l03117" > < / a > < span class = "lineno" > 3117< / span > < span class = "comment" > // Marks the end of ChangeNext() sequence, more formally,< / span > < / div >
< div class = "line" > < a id = "l03118" name = "l03118" > < / a > < span class = "lineno" > 3118< / span > < span class = "comment" > // changes the state from (P0, D) to (P0 |> D, D).< / span > < / div >
< div class = "line" > < a id = "l03119" name = "l03119" > < / a > < span class = "lineno" > 3119< / span > < span class = "keywordtype" > void< / span > CutChains();< / div >
< div class = "line" > < a id = "l03120" name = "l03120" > < / a > < span class = "lineno" > 3120< / span > < span class = "comment" > // Makes the current temporary state permanent, more formally,< / span > < / div >
< div class = "line" > < a id = "l03121" name = "l03121" > < / a > < span class = "lineno" > 3121< / span > < span class = "comment" > // changes the state from (P0 |> D, D) to (P0 + D, \emptyset),< / span > < / div >
< div class = "line" > < a id = "l03122" name = "l03122" > < / a > < span class = "lineno" > 3122< / span > < span class = "keywordtype" > void< / span > Commit();< / div >
< div class = "line" > < a id = "l03123" name = "l03123" > < / a > < span class = "lineno" > 3123< / span > < span class = "comment" > // Erase incremental changes made by ChangeNext() and CutChains(),< / span > < / div >
< div class = "line" > < a id = "l03124" name = "l03124" > < / a > < span class = "lineno" > 3124< / span > < span class = "comment" > // more formally, changes the state from (P0 |> D, D) to (P0, \emptyset).< / span > < / div >
< div class = "line" > < a id = "l03125" name = "l03125" > < / a > < span class = "lineno" > 3125< / span > < span class = "keywordtype" > void< / span > Revert();< / div >
< div class = "line" > < a id = "l03126" name = "l03126" > < / a > < span class = "lineno" > 3126< / span > < / div >
< div class = "line" > < a id = "l03127" name = "l03127" > < / a > < span class = "lineno" > 3127< / span > < span class = "comment" > // LNS Operators may not fix variables,< / span > < / div >
< div class = "line" > < a id = "l03128" name = "l03128" > < / a > < span class = "lineno" > 3128< / span > < span class = "comment" > // in which case we mark the candidate invalid.< / span > < / div >
< div class = "line" > < a id = "l03129" name = "l03129" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#afed50c82e72ac41a3653683cb17cdfbc" > 3129< / a > < / span > < span class = "keywordtype" > void< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#afed50c82e72ac41a3653683cb17cdfbc" > SetInvalid< / a > () { is_invalid_ = < span class = "keyword" > true< / span > ; }< / div >
< div class = "line" > < a id = "l03130" name = "l03130" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state.html#a6c1f27c9de7ff98356fa712e4b796a1a" > 3130< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state.html#a6c1f27c9de7ff98356fa712e4b796a1a" > IsInvalid< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > is_invalid_; }< / div >
< div class = "line" > < a id = "l03131" name = "l03131" > < / a > < span class = "lineno" > 3131< / span > < / div >
< div class = "line" > < a id = "l03132" name = "l03132" > < / a > < span class = "lineno" > 3132< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03133" name = "l03133" > < / a > < span class = "lineno" > 3133< / span > < span class = "comment" > // Most structs below are named pairs of ints, for typing purposes.< / span > < / div >
< div class = "line" > < a id = "l03134" name = "l03134" > < / a > < span class = "lineno" > 3134< / span > < / div >
< div class = "line" > < a id = "l03135" name = "l03135" > < / a > < span class = "lineno" > 3135< / span > < span class = "comment" > // Start and end are stored together to optimize (likely) simultaneous access.< / span > < / div >
< div class = "line" > < a id = "l03136" name = "l03136" > < / a > < span class = "lineno" > 3136< / span > < span class = "keyword" > struct < / span > PathStartEnd {< / div >
< div class = "line" > < a id = "l03137" name = "l03137" > < / a > < span class = "lineno" > 3137< / span > PathStartEnd(< span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a9b7656b922ea4ec96097d7380c0e61fe" > start< / a > , < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a4d53eac2ef2732c28fa9fb663e0c19a7" > end< / a > ) : < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a9b7656b922ea4ec96097d7380c0e61fe" > start< / a > (< a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a9b7656b922ea4ec96097d7380c0e61fe" > start< / a > ), < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a4d53eac2ef2732c28fa9fb663e0c19a7" > end< / a > (< a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a4d53eac2ef2732c28fa9fb663e0c19a7" > end< / a > ) {}< / div >
< div class = "line" > < a id = "l03138" name = "l03138" > < / a > < span class = "lineno" > 3138< / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a9b7656b922ea4ec96097d7380c0e61fe" > start< / a > ;< / div >
< div class = "line" > < a id = "l03139" name = "l03139" > < / a > < span class = "lineno" > 3139< / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "sparse__submatrix_8cc.html#a4d53eac2ef2732c28fa9fb663e0c19a7" > end< / a > ;< / div >
< div class = "line" > < a id = "l03140" name = "l03140" > < / a > < span class = "lineno" > 3140< / span > };< / div >
< div class = "line" > < a id = "l03141" name = "l03141" > < / a > < span class = "lineno" > 3141< / span > < span class = "comment" > // Paths are ranges of chains, which are ranges of committed nodes, see below.< / span > < / div >
< div class = "line" > < a id = "l03142" name = "l03142" > < / a > < span class = "lineno" > 3142< / span > < span class = "keyword" > struct < / span > PathBounds {< / div >
< div class = "line" > < a id = "l03143" name = "l03143" > < / a > < span class = "lineno" > 3143< / span > < span class = "keywordtype" > int< / span > begin_index;< / div >
< div class = "line" > < a id = "l03144" name = "l03144" > < / a > < span class = "lineno" > 3144< / span > < span class = "keywordtype" > int< / span > end_index;< / div >
< div class = "line" > < a id = "l03145" name = "l03145" > < / a > < span class = "lineno" > 3145< / span > };< / div >
< div class = "line" > < a id = "l03146" name = "l03146" > < / a > < span class = "lineno" > 3146< / span > < span class = "keyword" > struct < / span > ChainBounds {< / div >
< div class = "line" > < a id = "l03147" name = "l03147" > < / a > < span class = "lineno" > 3147< / span > ChainBounds() = < span class = "keywordflow" > default< / span > ;< / div >
< div class = "line" > < a id = "l03148" name = "l03148" > < / a > < span class = "lineno" > 3148< / span > ChainBounds(< span class = "keywordtype" > int< / span > begin_index, < span class = "keywordtype" > int< / span > end_index)< / div >
< div class = "line" > < a id = "l03149" name = "l03149" > < / a > < span class = "lineno" > 3149< / span > : begin_index(begin_index), end_index(end_index) {}< / div >
< div class = "line" > < a id = "l03150" name = "l03150" > < / a > < span class = "lineno" > 3150< / span > < span class = "keywordtype" > int< / span > begin_index;< / div >
< div class = "line" > < a id = "l03151" name = "l03151" > < / a > < span class = "lineno" > 3151< / span > < span class = "keywordtype" > int< / span > end_index;< / div >
< div class = "line" > < a id = "l03152" name = "l03152" > < / a > < span class = "lineno" > 3152< / span > };< / div >
< div class = "line" > < a id = "l03153" name = "l03153" > < / a > < span class = "lineno" > 3153< / span > < span class = "keyword" > struct < / span > CommittedNode {< / div >
< div class = "line" > < a id = "l03154" name = "l03154" > < / a > < span class = "lineno" > 3154< / span > CommittedNode(< span class = "keywordtype" > int< / span > node, < span class = "keywordtype" > int< / span > path) : node(node), path(path) {}< / div >
< div class = "line" > < a id = "l03155" name = "l03155" > < / a > < span class = "lineno" > 3155< / span > < span class = "keywordtype" > int< / span > node;< / div >
< div class = "line" > < a id = "l03156" name = "l03156" > < / a > < span class = "lineno" > 3156< / span > < span class = "comment" > // Path of node in the committed state, -1 for loop nodes.< / span > < / div >
< div class = "line" > < a id = "l03157" name = "l03157" > < / a > < span class = "lineno" > 3157< / span > < span class = "comment" > // TODO(user): check if path would be better stored< / span > < / div >
< div class = "line" > < a id = "l03158" name = "l03158" > < / a > < span class = "lineno" > 3158< / span > < span class = "comment" > // with committed_index_, or in its own vector, or just recomputed.< / span > < / div >
< div class = "line" > < a id = "l03159" name = "l03159" > < / a > < span class = "lineno" > 3159< / span > < span class = "keywordtype" > int< / span > path;< / div >
< div class = "line" > < a id = "l03160" name = "l03160" > < / a > < span class = "lineno" > 3160< / span > };< / div >
< div class = "line" > < a id = "l03161" name = "l03161" > < / a > < span class = "lineno" > 3161< / span > < span class = "comment" > // Used in temporary structures, see below.< / span > < / div >
< div class = "line" > < a id = "l03162" name = "l03162" > < / a > < span class = "lineno" > 3162< / span > < span class = "keyword" > struct < / span > TailHeadIndices {< / div >
< div class = "line" > < a id = "l03163" name = "l03163" > < / a > < span class = "lineno" > 3163< / span > < span class = "keywordtype" > int< / span > tail_index;< / div >
< div class = "line" > < a id = "l03164" name = "l03164" > < / a > < span class = "lineno" > 3164< / span > < span class = "keywordtype" > int< / span > head_index;< / div >
< div class = "line" > < a id = "l03165" name = "l03165" > < / a > < span class = "lineno" > 3165< / span > };< / div >
< div class = "line" > < a id = "l03166" name = "l03166" > < / a > < span class = "lineno" > 3166< / span > < span class = "keyword" > struct < / span > IndexArc {< / div >
< div class = "line" > < a id = "l03167" name = "l03167" > < / a > < span class = "lineno" > 3167< / span > < span class = "keywordtype" > int< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > ;< / div >
< div class = "line" > < a id = "l03168" name = "l03168" > < / a > < span class = "lineno" > 3168< / span > < span class = "keywordtype" > int< / span > arc;< / div >
< div class = "line" > < a id = "l03169" name = "l03169" > < / a > < span class = "lineno" > 3169< / span > < span class = "keywordtype" > bool< / span > operator< (< span class = "keyword" > const< / span > IndexArc& other)< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_variable" href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > < other.index; }< / div >
< div class = "line" > < a id = "l03170" name = "l03170" > < / a > < span class = "lineno" > 3170< / span > };< / div >
< div class = "line" > < a id = "l03171" name = "l03171" > < / a > < span class = "lineno" > 3171< / span > < / div >
< div class = "line" > < a id = "l03172" name = "l03172" > < / a > < span class = "lineno" > 3172< / span > < span class = "comment" > // From changed_paths_ and changed_arcs_, fill chains_ and paths_.< / span > < / div >
< div class = "line" > < a id = "l03173" name = "l03173" > < / a > < span class = "lineno" > 3173< / span > < span class = "comment" > // Selection-based algorithm in O(n^2), to use for small change sets.< / span > < / div >
< div class = "line" > < a id = "l03174" name = "l03174" > < / a > < span class = "lineno" > 3174< / span > < span class = "keywordtype" > void< / span > MakeChainsFromChangedPathsAndArcsWithSelectionAlgorithm();< / div >
< div class = "line" > < a id = "l03175" name = "l03175" > < / a > < span class = "lineno" > 3175< / span > < span class = "comment" > // From changed_paths_ and changed_arcs_, fill chains_ and paths_.< / span > < / div >
< div class = "line" > < a id = "l03176" name = "l03176" > < / a > < span class = "lineno" > 3176< / span > < span class = "comment" > // Generic algorithm in O(std::sort(n)+n), to use for larger change sets.< / span > < / div >
< div class = "line" > < a id = "l03177" name = "l03177" > < / a > < span class = "lineno" > 3177< / span > < span class = "keywordtype" > void< / span > MakeChainsFromChangedPathsAndArcsWithGenericAlgorithm();< / div >
< div class = "line" > < a id = "l03178" name = "l03178" > < / a > < span class = "lineno" > 3178< / span > < / div >
< div class = "line" > < a id = "l03179" name = "l03179" > < / a > < span class = "lineno" > 3179< / span > < span class = "comment" > // Copies nodes in chains of path at the end of nodes,< / span > < / div >
< div class = "line" > < a id = "l03180" name = "l03180" > < / a > < span class = "lineno" > 3180< / span > < span class = "comment" > // and sets those nodes' path member to value path.< / span > < / div >
< div class = "line" > < a id = "l03181" name = "l03181" > < / a > < span class = "lineno" > 3181< / span > < span class = "keywordtype" > void< / span > CopyNewPathAtEndOfNodes(< span class = "keywordtype" > int< / span > path);< / div >
< div class = "line" > < a id = "l03182" name = "l03182" > < / a > < span class = "lineno" > 3182< / span > < span class = "comment" > // Commits paths in O(#{changed paths' nodes}) time,< / span > < / div >
< div class = "line" > < a id = "l03183" name = "l03183" > < / a > < span class = "lineno" > 3183< / span > < span class = "comment" > // increasing this object' s space usage by O(|changed path nodes|).< / span > < / div >
< div class = "line" > < a id = "l03184" name = "l03184" > < / a > < span class = "lineno" > 3184< / span > < span class = "keywordtype" > void< / span > IncrementalCommit();< / div >
< div class = "line" > < a id = "l03185" name = "l03185" > < / a > < span class = "lineno" > 3185< / span > < span class = "comment" > // Commits paths in O(num_nodes + num_paths) time,< / span > < / div >
< div class = "line" > < a id = "l03186" name = "l03186" > < / a > < span class = "lineno" > 3186< / span > < span class = "comment" > // reducing this object' s space usage to O(num_nodes + num_paths).< / span > < / div >
< div class = "line" > < a id = "l03187" name = "l03187" > < / a > < span class = "lineno" > 3187< / span > < span class = "keywordtype" > void< / span > FullCommit();< / div >
< div class = "line" > < a id = "l03188" name = "l03188" > < / a > < span class = "lineno" > 3188< / span > < / div >
< div class = "line" > < a id = "l03189" name = "l03189" > < / a > < span class = "lineno" > 3189< / span > < span class = "comment" > // Instance-constant data.< / span > < / div >
< div class = "line" > < a id = "l03190" name = "l03190" > < / a > < span class = "lineno" > 3190< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > num_nodes_;< / div >
< div class = "line" > < a id = "l03191" name = "l03191" > < / a > < span class = "lineno" > 3191< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > num_paths_;< / div >
< div class = "line" > < a id = "l03192" name = "l03192" > < / a > < span class = "lineno" > 3192< / span > std::vector< PathStartEnd> path_start_end_;< / div >
< div class = "line" > < a id = "l03193" name = "l03193" > < / a > < span class = "lineno" > 3193< / span > < / div >
< div class = "line" > < a id = "l03194" name = "l03194" > < / a > < span class = "lineno" > 3194< / span > < span class = "comment" > // Representation of the committed and changed paths.< / span > < / div >
< div class = "line" > < a id = "l03195" name = "l03195" > < / a > < span class = "lineno" > 3195< / span > < span class = "comment" > // A path is a range of chains, which is a range of nodes.< / span > < / div >
< div class = "line" > < a id = "l03196" name = "l03196" > < / a > < span class = "lineno" > 3196< / span > < span class = "comment" > // Ranges are represented internally by indices in vectors:< / span > < / div >
< div class = "line" > < a id = "l03197" name = "l03197" > < / a > < span class = "lineno" > 3197< / span > < span class = "comment" > // ChainBounds are indices in committed_nodes_. PathBounds are indices in< / span > < / div >
< div class = "line" > < a id = "l03198" name = "l03198" > < / a > < span class = "lineno" > 3198< / span > < span class = "comment" > // chains_. When committed (after construction, Revert() or Commit()):< / span > < / div >
< div class = "line" > < a id = "l03199" name = "l03199" > < / a > < span class = "lineno" > 3199< / span > < span class = "comment" > // - path ranges are [path, path+1): they have one chain.< / span > < / div >
< div class = "line" > < a id = "l03200" name = "l03200" > < / a > < span class = "lineno" > 3200< / span > < span class = "comment" > // - chain ranges don' t overlap, chains_ has an empty sentinel at the end.< / span > < / div >
< div class = "line" > < a id = "l03201" name = "l03201" > < / a > < span class = "lineno" > 3201< / span > < span class = "comment" > // - committed_nodes_ contains all nodes and old duplicates may appear,< / span > < / div >
< div class = "line" > < a id = "l03202" name = "l03202" > < / a > < span class = "lineno" > 3202< / span > < span class = "comment" > // the current version of a node is at the index given by< / span > < / div >
< div class = "line" > < a id = "l03203" name = "l03203" > < / a > < span class = "lineno" > 3203< / span > < span class = "comment" > // committed_index_[node]. A Commit() can add nodes at the end of< / span > < / div >
< div class = "line" > < a id = "l03204" name = "l03204" > < / a > < span class = "lineno" > 3204< / span > < span class = "comment" > // committed_nodes_ in a space/time tradeoff, but if committed_nodes_' size< / span > < / div >
< div class = "line" > < a id = "l03205" name = "l03205" > < / a > < span class = "lineno" > 3205< / span > < span class = "comment" > // is above num_nodes_threshold_, Commit() must reclaim useless duplicates' < / span > < / div >
< div class = "line" > < a id = "l03206" name = "l03206" > < / a > < span class = "lineno" > 3206< / span > < span class = "comment" > // space by rewriting the path/chain/nodes structure.< / span > < / div >
< div class = "line" > < a id = "l03207" name = "l03207" > < / a > < span class = "lineno" > 3207< / span > < span class = "comment" > // When changed (after CutChains()), new chains are computed,< / span > < / div >
< div class = "line" > < a id = "l03208" name = "l03208" > < / a > < span class = "lineno" > 3208< / span > < span class = "comment" > // and the structure is updated accordingly:< / span > < / div >
< div class = "line" > < a id = "l03209" name = "l03209" > < / a > < span class = "lineno" > 3209< / span > < span class = "comment" > // - path ranges that were changed have nonoverlapping values [begin, end)< / span > < / div >
< div class = "line" > < a id = "l03210" name = "l03210" > < / a > < span class = "lineno" > 3210< / span > < span class = "comment" > // where begin is > = num_paths_ + 1, i.e. new chains are stored after< / span > < / div >
< div class = "line" > < a id = "l03211" name = "l03211" > < / a > < span class = "lineno" > 3211< / span > < span class = "comment" > // committed state.< / span > < / div >
< div class = "line" > < a id = "l03212" name = "l03212" > < / a > < span class = "lineno" > 3212< / span > < span class = "comment" > // - additional chain ranges are stored after the committed chains< / span > < / div >
< div class = "line" > < a id = "l03213" name = "l03213" > < / a > < span class = "lineno" > 3213< / span > < span class = "comment" > // to represent the new chains resulting from the changes.< / span > < / div >
< div class = "line" > < a id = "l03214" name = "l03214" > < / a > < span class = "lineno" > 3214< / span > < span class = "comment" > // Those chains do not overlap with each other or with unchanged chains.< / span > < / div >
< div class = "line" > < a id = "l03215" name = "l03215" > < / a > < span class = "lineno" > 3215< / span > < span class = "comment" > // An empty sentinel chain is added at the end of additional chains.< / span > < / div >
< div class = "line" > < a id = "l03216" name = "l03216" > < / a > < span class = "lineno" > 3216< / span > < span class = "comment" > // - committed_nodes_ are not modified, and still represent the committed< / span > < / div >
< div class = "line" > < a id = "l03217" name = "l03217" > < / a > < span class = "lineno" > 3217< / span > < span class = "comment" > // paths.< / span > < / div >
< div class = "line" > < a id = "l03218" name = "l03218" > < / a > < span class = "lineno" > 3218< / span > < span class = "comment" > // committed_index_ is not modified either.< / span > < / div >
< div class = "line" > < a id = "l03219" name = "l03219" > < / a > < span class = "lineno" > 3219< / span > std::vector< CommittedNode> committed_nodes_;< / div >
< div class = "line" > < a id = "l03220" name = "l03220" > < / a > < span class = "lineno" > 3220< / span > std::vector< int> committed_index_;< / div >
< div class = "line" > < a id = "l03221" name = "l03221" > < / a > < span class = "lineno" > 3221< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > num_nodes_threshold_;< / div >
< div class = "line" > < a id = "l03222" name = "l03222" > < / a > < span class = "lineno" > 3222< / span > std::vector< ChainBounds> chains_;< / div >
< div class = "line" > < a id = "l03223" name = "l03223" > < / a > < span class = "lineno" > 3223< / span > std::vector< PathBounds> paths_;< / div >
< div class = "line" > < a id = "l03224" name = "l03224" > < / a > < span class = "lineno" > 3224< / span > < / div >
< div class = "line" > < a id = "l03225" name = "l03225" > < / a > < span class = "lineno" > 3225< / span > < span class = "comment" > // Incremental information: indices of nodes whose successor have changed,< / span > < / div >
< div class = "line" > < a id = "l03226" name = "l03226" > < / a > < span class = "lineno" > 3226< / span > < span class = "comment" > // path that have changed nodes.< / span > < / div >
< div class = "line" > < a id = "l03227" name = "l03227" > < / a > < span class = "lineno" > 3227< / span > std::vector< std::pair< int, int> > changed_arcs_;< / div >
< div class = "line" > < a id = "l03228" name = "l03228" > < / a > < span class = "lineno" > 3228< / span > std::vector< int> changed_paths_;< / div >
< div class = "line" > < a id = "l03229" name = "l03229" > < / a > < span class = "lineno" > 3229< / span > std::vector< bool> path_has_changed_;< / div >
< div class = "line" > < a id = "l03230" name = "l03230" > < / a > < span class = "lineno" > 3230< / span > < / div >
< div class = "line" > < a id = "l03231" name = "l03231" > < / a > < span class = "lineno" > 3231< / span > < span class = "comment" > // Temporary structures, since they will be reused heavily,< / span > < / div >
< div class = "line" > < a id = "l03232" name = "l03232" > < / a > < span class = "lineno" > 3232< / span > < span class = "comment" > // those are members in order to be allocated once and for all.< / span > < / div >
< div class = "line" > < a id = "l03233" name = "l03233" > < / a > < span class = "lineno" > 3233< / span > std::vector< TailHeadIndices> tail_head_indices_;< / div >
< div class = "line" > < a id = "l03234" name = "l03234" > < / a > < span class = "lineno" > 3234< / span > std::vector< IndexArc> arcs_by_tail_index_;< / div >
< div class = "line" > < a id = "l03235" name = "l03235" > < / a > < span class = "lineno" > 3235< / span > std::vector< IndexArc> arcs_by_head_index_;< / div >
< div class = "line" > < a id = "l03236" name = "l03236" > < / a > < span class = "lineno" > 3236< / span > std::vector< int> next_arc_;< / div >
< div class = "line" > < a id = "l03237" name = "l03237" > < / a > < span class = "lineno" > 3237< / span > < / div >
< div class = "line" > < a id = "l03238" name = "l03238" > < / a > < span class = "lineno" > 3238< / span > < span class = "comment" > // See IsInvalid() and SetInvalid().< / span > < / div >
< div class = "line" > < a id = "l03239" name = "l03239" > < / a > < span class = "lineno" > 3239< / span > < span class = "keywordtype" > bool< / span > is_invalid_ = < span class = "keyword" > false< / span > ;< / div >
< div class = "line" > < a id = "l03240" name = "l03240" > < / a > < span class = "lineno" > 3240< / span > };< / div >
< div class = "line" > < a id = "l03241" name = "l03241" > < / a > < span class = "lineno" > 3241< / span > < / div >
< div class = "line" > < a id = "l03242" name = "l03242" > < / a > < span class = "lineno" > 3242< / span > < span class = "comment" > // A Chain is a range of committed nodes.< / span > < / div >
< div class = "line" > < a id = "l03243" name = "l03243" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain.html" > 3243< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain.html" > PathState::Chain< / a > {< / div >
< div class = "line" > < a id = "l03244" name = "l03244" > < / a > < span class = "lineno" > 3244< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03245" name = "l03245" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > 3245< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > {< / div >
< div class = "line" > < a id = "l03246" name = "l03246" > < / a > < span class = "lineno" > 3246< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03247" name = "l03247" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > 3247< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > & < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > operator++< / a > () {< / div >
< div class = "line" > < a id = "l03248" name = "l03248" > < / a > < span class = "lineno" > 3248< / span > ++current_node_;< / div >
< div class = "line" > < a id = "l03249" name = "l03249" > < / a > < span class = "lineno" > 3249< / span > < span class = "keywordflow" > return< / span > *< span class = "keyword" > this< / span > ;< / div >
< div class = "line" > < a id = "l03250" name = "l03250" > < / a > < span class = "lineno" > 3250< / span > }< / div >
< div class = "line" > < a id = "l03251" name = "l03251" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#ab4661162459f2cb4e9887fcbc2d38b55" > 3251< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#ab4661162459f2cb4e9887fcbc2d38b55" > operator*< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > current_node_-> node; }< / div >
< div class = "line" > < a id = "l03252" name = "l03252" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > 3252< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > operator!=< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > other)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l03253" name = "l03253" > < / a > < span class = "lineno" > 3253< / span > < span class = "keywordflow" > return< / span > current_node_ != other.current_node_;< / div >
< div class = "line" > < a id = "l03254" name = "l03254" > < / a > < span class = "lineno" > 3254< / span > }< / div >
< div class = "line" > < a id = "l03255" name = "l03255" > < / a > < span class = "lineno" > 3255< / span > < / div >
< div class = "line" > < a id = "l03256" name = "l03256" > < / a > < span class = "lineno" > 3256< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03257" name = "l03257" > < / a > < span class = "lineno" > 3257< / span > < span class = "comment" > // Only a Chain can construct its iterator.< / span > < / div >
< div class = "line" > < a id = "l03258" name = "l03258" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#ae1771dc54b5c19692cb157cdf256dc7e" > 3258< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain.html" > PathState::Chain< / a > ;< / div >
< div class = "line" > < a id = "l03259" name = "l03259" > < / a > < span class = "lineno" > 3259< / span > < span class = "keyword" > explicit< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > (< span class = "keyword" > const< / span > CommittedNode* node) : current_node_(node) {}< / div >
< div class = "line" > < a id = "l03260" name = "l03260" > < / a > < span class = "lineno" > 3260< / span > < span class = "keyword" > const< / span > CommittedNode* current_node_;< / div >
< div class = "line" > < a id = "l03261" name = "l03261" > < / a > < span class = "lineno" > 3261< / span > };< / div >
< div class = "line" > < a id = "l03262" name = "l03262" > < / a > < span class = "lineno" > 3262< / span > < / div >
< div class = "line" > < a id = "l03263" name = "l03263" > < / a > < span class = "lineno" > 3263< / span > < span class = "comment" > // Chains hold CommittedNode* values, a Chain may be invalidated< / span > < / div >
< div class = "line" > < a id = "l03264" name = "l03264" > < / a > < span class = "lineno" > 3264< / span > < span class = "comment" > // if the underlying vector is modified.< / span > < / div >
< div class = "line" > < a id = "l03265" name = "l03265" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain.html#a9854ccf641edeba5925409e68ce44421" > 3265< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain.html#a9854ccf641edeba5925409e68ce44421" > Chain< / a > (< span class = "keyword" > const< / span > CommittedNode* begin_node, < span class = "keyword" > const< / span > CommittedNode* end_node)< / div >
< div class = "line" > < a id = "l03266" name = "l03266" > < / a > < span class = "lineno" > 3266< / span > : begin_(begin_node), end_(end_node) {}< / div >
< div class = "line" > < a id = "l03267" name = "l03267" > < / a > < span class = "lineno" > 3267< / span > < / div >
< div class = "line" > < a id = "l03268" name = "l03268" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain.html#af7b62ca470d8de1c1dde577b04671fa7" > 3268< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain.html#af7b62ca470d8de1c1dde577b04671fa7" > NumNodes< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > end_ - begin_; }< / div >
< div class = "line" > < a id = "l03269" name = "l03269" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain.html#a9606765f46cefe3675b88fb6d30ae74c" > 3269< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain.html#a9606765f46cefe3675b88fb6d30ae74c" > First< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > begin_-> node; }< / div >
< div class = "line" > < a id = "l03270" name = "l03270" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain.html#ad8d07b9af4954b2b23deefb7b8622cde" > 3270< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain.html#ad8d07b9af4954b2b23deefb7b8622cde" > Last< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > (end_ - 1)-> node; }< / div >
< div class = "line" > < a id = "l03271" name = "l03271" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain.html#a09dd208593b9721a30a83ed978ede577" > 3271< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain.html#a09dd208593b9721a30a83ed978ede577" > begin< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > (begin_); }< / div >
< div class = "line" > < a id = "l03272" name = "l03272" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain.html#a62469461ed7c932afba3808f4da0fe3d" > 3272< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain.html#a62469461ed7c932afba3808f4da0fe3d" > end< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > Iterator< / a > (end_); }< / div >
< div class = "line" > < a id = "l03273" name = "l03273" > < / a > < span class = "lineno" > 3273< / span > < / div >
< div class = "line" > < a id = "l03274" name = "l03274" > < / a > < span class = "lineno" > 3274< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03275" name = "l03275" > < / a > < span class = "lineno" > 3275< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > begin_;< / div >
< div class = "line" > < a id = "l03276" name = "l03276" > < / a > < span class = "lineno" > 3276< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > end_;< / div >
< div class = "line" > < a id = "l03277" name = "l03277" > < / a > < span class = "lineno" > 3277< / span > };< / div >
< div class = "line" > < a id = "l03278" name = "l03278" > < / a > < span class = "lineno" > 3278< / span > < / div >
< div class = "line" > < a id = "l03279" name = "l03279" > < / a > < span class = "lineno" > 3279< / span > < span class = "comment" > // A ChainRange is a range of Chains, committed or not.< / span > < / div >
< div class = "line" > < a id = "l03280" name = "l03280" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range.html" > 3280< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range.html" > PathState::ChainRange< / a > {< / div >
< div class = "line" > < a id = "l03281" name = "l03281" > < / a > < span class = "lineno" > 3281< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03282" name = "l03282" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > 3282< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > Iterator< / a > {< / div >
< div class = "line" > < a id = "l03283" name = "l03283" > < / a > < span class = "lineno" > 3283< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03284" name = "l03284" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > 3284< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > Iterator< / a > & < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > operator++< / a > () {< / div >
< div class = "line" > < a id = "l03285" name = "l03285" > < / a > < span class = "lineno" > 3285< / span > ++current_chain_;< / div >
< div class = "line" > < a id = "l03286" name = "l03286" > < / a > < span class = "lineno" > 3286< / span > < span class = "keywordflow" > return< / span > *< span class = "keyword" > this< / span > ;< / div >
< div class = "line" > < a id = "l03287" name = "l03287" > < / a > < span class = "lineno" > 3287< / span > }< / div >
< div class = "line" > < a id = "l03288" name = "l03288" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#aa9851e9b7ba71849f8f83c786346b379" > 3288< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain.html" > Chain< / a > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#aa9851e9b7ba71849f8f83c786346b379" > operator*< / a > ()< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l03289" name = "l03289" > < / a > < span class = "lineno" > 3289< / span > < span class = "keywordflow" > return< / span > {first_node_ + current_chain_-> begin_index,< / div >
< div class = "line" > < a id = "l03290" name = "l03290" > < / a > < span class = "lineno" > 3290< / span > first_node_ + current_chain_-> end_index};< / div >
< div class = "line" > < a id = "l03291" name = "l03291" > < / a > < span class = "lineno" > 3291< / span > }< / div >
< div class = "line" > < a id = "l03292" name = "l03292" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > 3292< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > operator!=< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > Iterator< / a > other)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l03293" name = "l03293" > < / a > < span class = "lineno" > 3293< / span > < span class = "keywordflow" > return< / span > current_chain_ != other.current_chain_;< / div >
< div class = "line" > < a id = "l03294" name = "l03294" > < / a > < span class = "lineno" > 3294< / span > }< / div >
< div class = "line" > < a id = "l03295" name = "l03295" > < / a > < span class = "lineno" > 3295< / span > < / div >
< div class = "line" > < a id = "l03296" name = "l03296" > < / a > < span class = "lineno" > 3296< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03297" name = "l03297" > < / a > < span class = "lineno" > 3297< / span > < span class = "comment" > // Only a ChainRange can construct its Iterator.< / span > < / div >
< div class = "line" > < a id = "l03298" name = "l03298" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#ab380032b13d5d06e904bd53236ae8acc" > 3298< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range.html" > ChainRange< / a > ;< / div >
< div class = "line" > < a id = "l03299" name = "l03299" > < / a > < span class = "lineno" > 3299< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > Iterator< / a > (< span class = "keyword" > const< / span > ChainBounds* chain, < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > first_node)< / div >
< div class = "line" > < a id = "l03300" name = "l03300" > < / a > < span class = "lineno" > 3300< / span > : current_chain_(chain), first_node_(first_node) {}< / div >
< div class = "line" > < a id = "l03301" name = "l03301" > < / a > < span class = "lineno" > 3301< / span > < span class = "keyword" > const< / span > ChainBounds* current_chain_;< / div >
< div class = "line" > < a id = "l03302" name = "l03302" > < / a > < span class = "lineno" > 3302< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > first_node_;< / div >
< div class = "line" > < a id = "l03303" name = "l03303" > < / a > < span class = "lineno" > 3303< / span > };< / div >
< div class = "line" > < a id = "l03304" name = "l03304" > < / a > < span class = "lineno" > 3304< / span > < / div >
< div class = "line" > < a id = "l03305" name = "l03305" > < / a > < span class = "lineno" > 3305< / span > < span class = "comment" > // ChainRanges hold ChainBounds* and CommittedNode*,< / span > < / div >
< div class = "line" > < a id = "l03306" name = "l03306" > < / a > < span class = "lineno" > 3306< / span > < span class = "comment" > // a ChainRange may be invalidated if on of the underlying vector is modified.< / span > < / div >
< div class = "line" > < a id = "l03307" name = "l03307" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a873f14393cdb7e4c35876ed95605ebcb" > 3307< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a873f14393cdb7e4c35876ed95605ebcb" > ChainRange< / a > (< span class = "keyword" > const< / span > ChainBounds* < span class = "keyword" > const< / span > begin_chain,< / div >
< div class = "line" > < a id = "l03308" name = "l03308" > < / a > < span class = "lineno" > 3308< / span > < span class = "keyword" > const< / span > ChainBounds* < span class = "keyword" > const< / span > end_chain,< / div >
< div class = "line" > < a id = "l03309" name = "l03309" > < / a > < span class = "lineno" > 3309< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > first_node)< / div >
< div class = "line" > < a id = "l03310" name = "l03310" > < / a > < span class = "lineno" > 3310< / span > : begin_(begin_chain), end_(end_chain), first_node_(first_node) {}< / div >
< div class = "line" > < a id = "l03311" name = "l03311" > < / a > < span class = "lineno" > 3311< / span > < / div >
< div class = "line" > < a id = "l03312" name = "l03312" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a09dd208593b9721a30a83ed978ede577" > 3312< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > Iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a09dd208593b9721a30a83ed978ede577" > begin< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > {begin_, first_node_}; }< / div >
< div class = "line" > < a id = "l03313" name = "l03313" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a62469461ed7c932afba3808f4da0fe3d" > 3313< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > Iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a62469461ed7c932afba3808f4da0fe3d" > end< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > {end_, first_node_}; }< / div >
< div class = "line" > < a id = "l03314" name = "l03314" > < / a > < span class = "lineno" > 3314< / span > < / div >
< div class = "line" > < a id = "l03315" name = "l03315" > < / a > < span class = "lineno" > 3315< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03316" name = "l03316" > < / a > < span class = "lineno" > 3316< / span > < span class = "keyword" > const< / span > ChainBounds* < span class = "keyword" > const< / span > begin_;< / div >
< div class = "line" > < a id = "l03317" name = "l03317" > < / a > < span class = "lineno" > 3317< / span > < span class = "keyword" > const< / span > ChainBounds* < span class = "keyword" > const< / span > end_;< / div >
< div class = "line" > < a id = "l03318" name = "l03318" > < / a > < span class = "lineno" > 3318< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > first_node_;< / div >
< div class = "line" > < a id = "l03319" name = "l03319" > < / a > < span class = "lineno" > 3319< / span > };< / div >
< div class = "line" > < a id = "l03320" name = "l03320" > < / a > < span class = "lineno" > 3320< / span > < / div >
< div class = "line" > < a id = "l03321" name = "l03321" > < / a > < span class = "lineno" > 3321< / span > < span class = "comment" > // A NodeRange allows to iterate on all nodes of a path,< / span > < / div >
< div class = "line" > < a id = "l03322" name = "l03322" > < / a > < span class = "lineno" > 3322< / span > < span class = "comment" > // by a two-level iteration on ChainBounds* and CommittedNode* of a PathState.< / span > < / div >
< div class = "line" > < a id = "l03323" name = "l03323" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range.html" > 3323< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range.html" > PathState::NodeRange< / a > {< / div >
< div class = "line" > < a id = "l03324" name = "l03324" > < / a > < span class = "lineno" > 3324< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03325" name = "l03325" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > 3325< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > Iterator< / a > {< / div >
< div class = "line" > < a id = "l03326" name = "l03326" > < / a > < span class = "lineno" > 3326< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03327" name = "l03327" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > 3327< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > Iterator< / a > & < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > operator++< / a > () {< / div >
< div class = "line" > < a id = "l03328" name = "l03328" > < / a > < span class = "lineno" > 3328< / span > ++current_node_;< / div >
< div class = "line" > < a id = "l03329" name = "l03329" > < / a > < span class = "lineno" > 3329< / span > < span class = "keywordflow" > if< / span > (current_node_ == end_node_) {< / div >
< div class = "line" > < a id = "l03330" name = "l03330" > < / a > < span class = "lineno" > 3330< / span > ++current_chain_;< / div >
< div class = "line" > < a id = "l03331" name = "l03331" > < / a > < span class = "lineno" > 3331< / span > < span class = "comment" > // Note: dereferencing bounds is valid because there is a sentinel< / span > < / div >
< div class = "line" > < a id = "l03332" name = "l03332" > < / a > < span class = "lineno" > 3332< / span > < span class = "comment" > // value at the end of PathState::chains_ to that intent.< / span > < / div >
< div class = "line" > < a id = "l03333" name = "l03333" > < / a > < span class = "lineno" > 3333< / span > < span class = "keyword" > const< / span > ChainBounds < a class = "code hl_variable" href = "cp__model__solver_8cc.html#a06dad0852d85b0686e01c084207c03a7" > bounds< / a > = *current_chain_;< / div >
< div class = "line" > < a id = "l03334" name = "l03334" > < / a > < span class = "lineno" > 3334< / span > current_node_ = first_node_ + < a class = "code hl_variable" href = "cp__model__solver_8cc.html#a06dad0852d85b0686e01c084207c03a7" > bounds< / a > .begin_index;< / div >
< div class = "line" > < a id = "l03335" name = "l03335" > < / a > < span class = "lineno" > 3335< / span > end_node_ = first_node_ + < a class = "code hl_variable" href = "cp__model__solver_8cc.html#a06dad0852d85b0686e01c084207c03a7" > bounds< / a > .end_index;< / div >
< div class = "line" > < a id = "l03336" name = "l03336" > < / a > < span class = "lineno" > 3336< / span > }< / div >
< div class = "line" > < a id = "l03337" name = "l03337" > < / a > < span class = "lineno" > 3337< / span > < span class = "keywordflow" > return< / span > *< span class = "keyword" > this< / span > ;< / div >
< div class = "line" > < a id = "l03338" name = "l03338" > < / a > < span class = "lineno" > 3338< / span > }< / div >
< div class = "line" > < a id = "l03339" name = "l03339" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#ab4661162459f2cb4e9887fcbc2d38b55" > 3339< / a > < / span > < span class = "keywordtype" > int< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#ab4661162459f2cb4e9887fcbc2d38b55" > operator*< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > current_node_-> node; }< / div >
< div class = "line" > < a id = "l03340" name = "l03340" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > 3340< / a > < / span > < span class = "keywordtype" > bool< / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > operator!=< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > Iterator< / a > other)< span class = "keyword" > const < / span > {< / div >
< div class = "line" > < a id = "l03341" name = "l03341" > < / a > < span class = "lineno" > 3341< / span > < span class = "keywordflow" > return< / span > current_chain_ != other.current_chain_;< / div >
< div class = "line" > < a id = "l03342" name = "l03342" > < / a > < span class = "lineno" > 3342< / span > }< / div >
< div class = "line" > < a id = "l03343" name = "l03343" > < / a > < span class = "lineno" > 3343< / span > < / div >
< div class = "line" > < a id = "l03344" name = "l03344" > < / a > < span class = "lineno" > 3344< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03345" name = "l03345" > < / a > < span class = "lineno" > 3345< / span > < span class = "comment" > // Only a NodeRange can construct its Iterator.< / span > < / div >
< div class = "line" > < a id = "l03346" name = "l03346" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#abaa27da49393ce09b62523c2c5dbdf68" > 3346< / a > < / span > < span class = "keyword" > friend< / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range.html" > NodeRange< / a > ;< / div >
< div class = "line" > < a id = "l03347" name = "l03347" > < / a > < span class = "lineno" > 3347< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > Iterator< / a > (< span class = "keyword" > const< / span > ChainBounds* current_chain,< / div >
< div class = "line" > < a id = "l03348" name = "l03348" > < / a > < span class = "lineno" > 3348< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > first_node)< / div >
< div class = "line" > < a id = "l03349" name = "l03349" > < / a > < span class = "lineno" > 3349< / span > : current_node_(first_node + current_chain-> begin_index),< / div >
< div class = "line" > < a id = "l03350" name = "l03350" > < / a > < span class = "lineno" > 3350< / span > end_node_(first_node + current_chain-> end_index),< / div >
< div class = "line" > < a id = "l03351" name = "l03351" > < / a > < span class = "lineno" > 3351< / span > current_chain_(current_chain),< / div >
< div class = "line" > < a id = "l03352" name = "l03352" > < / a > < span class = "lineno" > 3352< / span > first_node_(first_node) {}< / div >
< div class = "line" > < a id = "l03353" name = "l03353" > < / a > < span class = "lineno" > 3353< / span > < span class = "keyword" > const< / span > CommittedNode* current_node_;< / div >
< div class = "line" > < a id = "l03354" name = "l03354" > < / a > < span class = "lineno" > 3354< / span > < span class = "keyword" > const< / span > CommittedNode* end_node_;< / div >
< div class = "line" > < a id = "l03355" name = "l03355" > < / a > < span class = "lineno" > 3355< / span > < span class = "keyword" > const< / span > ChainBounds* current_chain_;< / div >
< div class = "line" > < a id = "l03356" name = "l03356" > < / a > < span class = "lineno" > 3356< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > first_node_;< / div >
< div class = "line" > < a id = "l03357" name = "l03357" > < / a > < span class = "lineno" > 3357< / span > };< / div >
< div class = "line" > < a id = "l03358" name = "l03358" > < / a > < span class = "lineno" > 3358< / span > < / div >
< div class = "line" > < a id = "l03359" name = "l03359" > < / a > < span class = "lineno" > 3359< / span > < span class = "comment" > // NodeRanges hold ChainBounds* and CommittedNode*,< / span > < / div >
< div class = "line" > < a id = "l03360" name = "l03360" > < / a > < span class = "lineno" > 3360< / span > < span class = "comment" > // a NodeRange may be invalidated if on of the underlying vector is modified.< / span > < / div >
< div class = "line" > < a id = "l03361" name = "l03361" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range.html#a62c92ae5de8cb2b3fa9dfca7bd901511" > 3361< / a > < / span > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_node_range.html#a62c92ae5de8cb2b3fa9dfca7bd901511" > NodeRange< / a > (< span class = "keyword" > const< / span > ChainBounds* begin_chain, < span class = "keyword" > const< / span > ChainBounds* end_chain,< / div >
< div class = "line" > < a id = "l03362" name = "l03362" > < / a > < span class = "lineno" > 3362< / span > < span class = "keyword" > const< / span > CommittedNode* first_node)< / div >
< div class = "line" > < a id = "l03363" name = "l03363" > < / a > < span class = "lineno" > 3363< / span > : begin_chain_(begin_chain),< / div >
< div class = "line" > < a id = "l03364" name = "l03364" > < / a > < span class = "lineno" > 3364< / span > end_chain_(end_chain),< / div >
< div class = "line" > < a id = "l03365" name = "l03365" > < / a > < span class = "lineno" > 3365< / span > first_node_(first_node) {}< / div >
< div class = "line" > < a id = "l03366" name = "l03366" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range.html#a09dd208593b9721a30a83ed978ede577" > 3366< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > Iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_node_range.html#a09dd208593b9721a30a83ed978ede577" > begin< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > {begin_chain_, first_node_}; }< / div >
< div class = "line" > < a id = "l03367" name = "l03367" > < / a > < span class = "lineno" > 3367< / span > < span class = "comment" > // Note: there is a sentinel value at the end of PathState::chains_,< / span > < / div >
< div class = "line" > < a id = "l03368" name = "l03368" > < / a > < span class = "lineno" > 3368< / span > < span class = "comment" > // so dereferencing chain_range_.end()-> begin_ is always valid.< / span > < / div >
< div class = "line" > < a id = "l03369" name = "l03369" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_path_state_1_1_node_range.html#a62469461ed7c932afba3808f4da0fe3d" > 3369< / a > < / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > Iterator< / a > < a class = "code hl_function" href = "classoperations__research_1_1_path_state_1_1_node_range.html#a62469461ed7c932afba3808f4da0fe3d" > end< / a > ()< span class = "keyword" > const < / span > { < span class = "keywordflow" > return< / span > {end_chain_, first_node_}; }< / div >
< div class = "line" > < a id = "l03370" name = "l03370" > < / a > < span class = "lineno" > 3370< / span > < / div >
< div class = "line" > < a id = "l03371" name = "l03371" > < / a > < span class = "lineno" > 3371< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03372" name = "l03372" > < / a > < span class = "lineno" > 3372< / span > < span class = "keyword" > const< / span > ChainBounds* begin_chain_;< / div >
< div class = "line" > < a id = "l03373" name = "l03373" > < / a > < span class = "lineno" > 3373< / span > < span class = "keyword" > const< / span > ChainBounds* end_chain_;< / div >
< div class = "line" > < a id = "l03374" name = "l03374" > < / a > < span class = "lineno" > 3374< / span > < span class = "keyword" > const< / span > CommittedNode* < span class = "keyword" > const< / span > first_node_;< / div >
< div class = "line" > < a id = "l03375" name = "l03375" > < / a > < span class = "lineno" > 3375< / span > };< / div >
< div class = "line" > < a id = "l03376" name = "l03376" > < / a > < span class = "lineno" > 3376< / span > < / div >
< div class = "line" > < a id = "l03377" name = "l03377" > < / a > < span class = "lineno" > 3377< / span > < span class = "comment" > // This checker enforces unary dimension requirements.< / span > < / div >
< div class = "line" > < a id = "l03378" name = "l03378" > < / a > < span class = "lineno" > 3378< / span > < span class = "comment" > // A unary dimension requires that there is some valuation of< / span > < / div >
< div class = "line" > < a id = "l03379" name = "l03379" > < / a > < span class = "lineno" > 3379< / span > < span class = "comment" > // node_capacity and demand such that for all paths,< / span > < / div >
< div class = "line" > < a id = "l03380" name = "l03380" > < / a > < span class = "lineno" > 3380< / span > < span class = "comment" > // if arc A -> B is on a path of path_class p,< / span > < / div >
< div class = "line" > < a id = "l03381" name = "l03381" > < / a > < span class = "lineno" > 3381< / span > < span class = "comment" > // then node_capacity[A] + demand[p][A] = node_capacity[B].< / span > < / div >
< div class = "line" > < a id = "l03382" name = "l03382" > < / a > < span class = "lineno" > 3382< / span > < span class = "comment" > // Moreover, all node_capacities of a path must be inside interval< / span > < / div >
< div class = "line" > < a id = "l03383" name = "l03383" > < / a > < span class = "lineno" > 3383< / span > < span class = "comment" > // path_capacity[path].< / span > < / div >
< div class = "line" > < a id = "l03384" name = "l03384" > < / a > < span class = "lineno" > 3384< / span > < span class = "comment" > // Note that Intervals have two meanings:< / span > < / div >
< div class = "line" > < a id = "l03385" name = "l03385" > < / a > < span class = "lineno" > 3385< / span > < span class = "comment" > // - for demand and node_capacity, those are values allowed for each associated< / span > < / div >
< div class = "line" > < a id = "l03386" name = "l03386" > < / a > < span class = "lineno" > 3386< / span > < span class = "comment" > // decision variable.< / span > < / div >
< div class = "line" > < a id = "l03387" name = "l03387" > < / a > < span class = "lineno" > 3387< / span > < span class = "comment" > // - for path_capacity, those are set of values that node_capacities of the path< / span > < / div >
< div class = "line" > < a id = "l03388" name = "l03388" > < / a > < span class = "lineno" > 3388< / span > < span class = "comment" > // must respect.< / span > < / div >
< div class = "line" > < a id = "l03389" name = "l03389" > < / a > < span class = "lineno" > 3389< / span > < span class = "comment" > // If the path capacity of a path is [kint64min, kint64max],< / span > < / div >
< div class = "line" > < a id = "l03390" name = "l03390" > < / a > < span class = "lineno" > 3390< / span > < span class = "comment" > // then the unary dimension requirements are not enforced on this path.< / span > < / div >
< div class = "line" > < a id = "l03391" name = "l03391" > < / a > < span class = "lineno" > < a class = "line" href = "classoperations__research_1_1_unary_dimension_checker.html" > 3391< / a > < / span > < span class = "keyword" > class < / span > < a class = "code hl_class" href = "classoperations__research_1_1_unary_dimension_checker.html" > UnaryDimensionChecker< / a > {< / div >
< div class = "line" > < a id = "l03392" name = "l03392" > < / a > < span class = "lineno" > 3392< / span > < span class = "keyword" > public< / span > :< / div >
< div class = "line" > < a id = "l03393" name = "l03393" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html" > 3393< / a > < / span > < span class = "keyword" > struct < / span > < a class = "code hl_struct" href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html" > Interval< / a > {< / div >
< div class = "line" > < a id = "l03394" name = "l03394" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html#ad10edae0a852d72fb76afb1c77735045" > 3394< / a > < / span > int64_t < a class = "code hl_variable" href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html#ad10edae0a852d72fb76afb1c77735045" > min< / a > ;< / div >
< div class = "line" > < a id = "l03395" name = "l03395" > < / a > < span class = "lineno" > < a class = "line" href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html#a26e6db9bcc64b584051ecc28171ed11f" > 3395< / a > < / span > int64_t < a class = "code hl_variable" href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html#a26e6db9bcc64b584051ecc28171ed11f" > max< / a > ;< / div >
< div class = "line" > < a id = "l03396" name = "l03396" > < / a > < span class = "lineno" > 3396< / span > };< / div >
< div class = "line" > < a id = "l03397" name = "l03397" > < / a > < span class = "lineno" > 3397< / span > < / div >
< div class = "line" > < a id = "l03398" name = "l03398" > < / a > < span class = "lineno" > 3398< / span > < a class = "code hl_class" href = "classoperations__research_1_1_unary_dimension_checker.html" > UnaryDimensionChecker< / a > (< span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state.html" > PathState< / a > * path_state,< / div >
< div class = "line" > < a id = "l03399" name = "l03399" > < / a > < span class = "lineno" > 3399< / span > std::vector< Interval> path_capacity,< / div >
< div class = "line" > < a id = "l03400" name = "l03400" > < / a > < span class = "lineno" > 3400< / span > std::vector< int> path_class,< / div >
< div class = "line" > < a id = "l03401" name = "l03401" > < / a > < span class = "lineno" > 3401< / span > std::vector< std::vector< Interval> > < a class = "code hl_variable" href = "resource_8cc.html#a29fb0dd9484d890b12b280c41c150e20" > demand< / a > ,< / div >
< div class = "line" > < a id = "l03402" name = "l03402" > < / a > < span class = "lineno" > 3402< / span > std::vector< Interval> node_capacity);< / div >
< div class = "line" > < a id = "l03403" name = "l03403" > < / a > < span class = "lineno" > 3403< / span > < / div >
< div class = "line" > < a id = "l03404" name = "l03404" > < / a > < span class = "lineno" > 3404< / span > < span class = "comment" > // Given the change made in PathState, checks that the unary dimension< / span > < / div >
< div class = "line" > < a id = "l03405" name = "l03405" > < / a > < span class = "lineno" > 3405< / span > < span class = "comment" > // constraint is still feasible.< / span > < / div >
< div class = "line" > < a id = "l03406" name = "l03406" > < / a > < span class = "lineno" > 3406< / span > < span class = "keywordtype" > bool< / span > Check() < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l03407" name = "l03407" > < / a > < span class = "lineno" > 3407< / span > < / div >
< div class = "line" > < a id = "l03408" name = "l03408" > < / a > < span class = "lineno" > 3408< / span > < span class = "comment" > // Commits to the changes made in PathState,< / span > < / div >
< div class = "line" > < a id = "l03409" name = "l03409" > < / a > < span class = "lineno" > 3409< / span > < span class = "comment" > // must be called before PathState::Commit().< / span > < / div >
< div class = "line" > < a id = "l03410" name = "l03410" > < / a > < span class = "lineno" > 3410< / span > < span class = "keywordtype" > void< / span > Commit();< / div >
< div class = "line" > < a id = "l03411" name = "l03411" > < / a > < span class = "lineno" > 3411< / span > < / div >
< div class = "line" > < a id = "l03412" name = "l03412" > < / a > < span class = "lineno" > 3412< / span > < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a id = "l03413" name = "l03413" > < / a > < span class = "lineno" > 3413< / span > < span class = "comment" > // Range min/max query on partial_demand_sums_.< / span > < / div >
< div class = "line" > < a id = "l03414" name = "l03414" > < / a > < span class = "lineno" > 3414< / span > < span class = "comment" > // The first_node and last_node MUST form a subpath in the committed state.< / span > < / div >
< div class = "line" > < a id = "l03415" name = "l03415" > < / a > < span class = "lineno" > 3415< / span > < span class = "comment" > // Nodes first_node and last_node are passed by their index in precomputed< / span > < / div >
< div class = "line" > < a id = "l03416" name = "l03416" > < / a > < span class = "lineno" > 3416< / span > < span class = "comment" > // data, they must be committed in some path, and it has to be the same path.< / span > < / div >
< div class = "line" > < a id = "l03417" name = "l03417" > < / a > < span class = "lineno" > 3417< / span > < span class = "comment" > // See partial_demand_sums_.< / span > < / div >
< div class = "line" > < a id = "l03418" name = "l03418" > < / a > < span class = "lineno" > 3418< / span > < a class = "code hl_struct" href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html" > Interval< / a > GetMinMaxPartialDemandSum(< span class = "keywordtype" > int< / span > first_node_index,< / div >
< div class = "line" > < a id = "l03419" name = "l03419" > < / a > < span class = "lineno" > 3419< / span > < span class = "keywordtype" > int< / span > last_node_index) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l03420" name = "l03420" > < / a > < span class = "lineno" > 3420< / span > < / div >
< div class = "line" > < a id = "l03421" name = "l03421" > < / a > < span class = "lineno" > 3421< / span > < span class = "comment" > // Queries whether all nodes in the committed subpath [first_node, last_node]< / span > < / div >
< div class = "line" > < a id = "l03422" name = "l03422" > < / a > < span class = "lineno" > 3422< / span > < span class = "comment" > // have fixed demands and trivial node_capacity [kint64min, kint64max].< / span > < / div >
< div class = "line" > < a id = "l03423" name = "l03423" > < / a > < span class = "lineno" > 3423< / span > < span class = "comment" > // first_node and last_node MUST form a subpath in the committed state.< / span > < / div >
< div class = "line" > < a id = "l03424" name = "l03424" > < / a > < span class = "lineno" > 3424< / span > < span class = "comment" > // Nodes are passed by their index in precomputed data.< / span > < / div >
< div class = "line" > < a id = "l03425" name = "l03425" > < / a > < span class = "lineno" > 3425< / span > < span class = "keywordtype" > bool< / span > SubpathOnlyHasTrivialNodes(< span class = "keywordtype" > int< / span > first_node_index,< / div >
< div class = "line" > < a id = "l03426" name = "l03426" > < / a > < span class = "lineno" > 3426< / span > < span class = "keywordtype" > int< / span > last_node_index) < span class = "keyword" > const< / span > ;< / div >
< div class = "line" > < a id = "l03427" name = "l03427" > < / a > < span class = "lineno" > 3427< / span > < / div >
< div class = "line" > < a id = "l03428" name = "l03428" > < / a > < span class = "lineno" > 3428< / span > < span class = "comment" > // Commits to the current solution and rebuilds structures from scratch.< / span > < / div >
< div class = "line" > < a id = "l03429" name = "l03429" > < / a > < span class = "lineno" > 3429< / span > < span class = "keywordtype" > void< / span > FullCommit();< / div >
< div class = "line" > < a id = "l03430" name = "l03430" > < / a > < span class = "lineno" > 3430< / span > < span class = "comment" > // Commits to the current solution and only build structures for paths that< / span > < / div >
< div class = "line" > < a id = "l03431" name = "l03431" > < / a > < span class = "lineno" > 3431< / span > < span class = "comment" > // changed, using additional space to do so in a time-memory tradeoff.< / span > < / div >
< div class = "line" > < a id = "l03432" name = "l03432" > < / a > < span class = "lineno" > 3432< / span > < span class = "keywordtype" > void< / span > IncrementalCommit();< / div >
< div class = "line" > < a id = "l03433" name = "l03433" > < / a > < span class = "lineno" > 3433< / span > < span class = "comment" > // Adds sums of given path to the bottom layer of the RMQ structure,< / span > < / div >
< div class = "line" > < a id = "l03434" name = "l03434" > < / a > < span class = "lineno" > 3434< / span > < span class = "comment" > // updates index_ and previous_nontrivial_index_.< / span > < / div >
< div class = "line" > < a id = "l03435" name = "l03435" > < / a > < span class = "lineno" > 3435< / span > < span class = "keywordtype" > void< / span > AppendPathDemandsToSums(< span class = "keywordtype" > int< / span > path);< / div >
< div class = "line" > < a id = "l03436" name = "l03436" > < / a > < span class = "lineno" > 3436< / span > < span class = "comment" > // Updates the RMQ structure from its bottom layer,< / span > < / div >
< div class = "line" > < a id = "l03437" name = "l03437" > < / a > < span class = "lineno" > 3437< / span > < span class = "comment" > // with [begin_index, end_index) the range of the change,< / span > < / div >
< div class = "line" > < a id = "l03438" name = "l03438" > < / a > < span class = "lineno" > 3438< / span > < span class = "comment" > // which must be at the end of the bottom layer.< / span > < / div >
< div class = "line" > < a id = "l03439" name = "l03439" > < / a > < span class = "lineno" > 3439< / span > < span class = "comment" > // Supposes that requests overlapping the range will be inside the range,< / span > < / div >
< div class = "line" > < a id = "l03440" name = "l03440" > < / a > < span class = "lineno" > 3440< / span > < span class = "comment" > // to avoid updating all layers.< / span > < / div >
< div class = "line" > < a id = "l03441" name = "l03441" > < / a > < span class = "lineno" > 3441< / span > < span class = "keywordtype" > void< / span > UpdateRMQStructure(< span class = "keywordtype" > int< / span > begin_index, < span class = "keywordtype" > int< / span > end_index);< / div >
< div class = "line" > < a id = "l03442" name = "l03442" > < / a > < span class = "lineno" > 3442< / span > < / div >
< div class = "line" > < a id = "l03443" name = "l03443" > < / a > < span class = "lineno" > 3443< / span > < span class = "keyword" > const< / span > < a class = "code hl_class" href = "classoperations__research_1_1_path_state.html" > PathState< / a > * < span class = "keyword" > const< / span > path_state_;< / div >
< div class = "line" > < a id = "l03444" name = "l03444" > < / a > < span class = "lineno" > 3444< / span > < span class = "keyword" > const< / span > std::vector< Interval> path_capacity_;< / div >
< div class = "line" > < a id = "l03445" name = "l03445" > < / a > < span class = "lineno" > 3445< / span > < span class = "keyword" > const< / span > std::vector< int> path_class_;< / div >
< div class = "line" > < a id = "l03446" name = "l03446" > < / a > < span class = "lineno" > 3446< / span > < span class = "keyword" > const< / span > std::vector< std::vector< Interval> > demand_;< / div >
< div class = "line" > < a id = "l03447" name = "l03447" > < / a > < span class = "lineno" > 3447< / span > < span class = "keyword" > const< / span > std::vector< Interval> node_capacity_;< / div >
< div class = "line" > < a id = "l03448" name = "l03448" > < / a > < span class = "lineno" > 3448< / span > < / div >
< div class = "line" > < a id = "l03449" name = "l03449" > < / a > < span class = "lineno" > 3449< / span > < span class = "comment" > // Precomputed data.< / span > < / div >
< div class = "line" > < a id = "l03450" name = "l03450" > < / a > < span class = "lineno" > 3450< / span > < span class = "comment" > // Maps nodes to their pre-computed data, except for isolated nodes,< / span > < / div >
< div class = "line" > < a id = "l03451" name = "l03451" > < / a > < span class = "lineno" > 3451< / span > < span class = "comment" > // which do not have precomputed data.< / span > < / div >
< div class = "line" > < a id = "l03452" name = "l03452" > < / a > < span class = "lineno" > 3452< / span > < span class = "comment" > // Only valid for nodes that are in some path in the committed state.< / span > < / div >
< div class = "line" > < a id = "l03453" name = "l03453" > < / a > < span class = "lineno" > 3453< / span > std::vector< int> index_;< / div >
< div class = "line" > < a id = "l03454" name = "l03454" > < / a > < span class = "lineno" > 3454< / span > < span class = "comment" > // Implementation of a < O(n log n), O(1)> range min/max query, n = #nodes.< / span > < / div >
< div class = "line" > < a id = "l03455" name = "l03455" > < / a > < span class = "lineno" > 3455< / span > < span class = "comment" > // partial_demand_sums_rmq_[0][index_[node]] contains the sum of demands< / span > < / div >
< div class = "line" > < a id = "l03456" name = "l03456" > < / a > < span class = "lineno" > 3456< / span > < span class = "comment" > // from the start of the node' s path to the node.< / span > < / div >
< div class = "line" > < a id = "l03457" name = "l03457" > < / a > < span class = "lineno" > 3457< / span > < span class = "comment" > // If node is the start of path, the sum is demand_[path_class_[path]][node],< / span > < / div >
< div class = "line" > < a id = "l03458" name = "l03458" > < / a > < span class = "lineno" > 3458< / span > < span class = "comment" > // moreover partial_demand_sums_rmq_[0][index_[node]-1] is {0, 0}.< / span > < / div >
< div class = "line" > < a id = "l03459" name = "l03459" > < / a > < span class = "lineno" > 3459< / span > < span class = "comment" > // partial_demand_sums_rmq_[layer][index] contains an interval< / span > < / div >
< div class = "line" > < a id = "l03460" name = "l03460" > < / a > < span class = "lineno" > 3460< / span > < span class = "comment" > // [min_value, max_value] such that min_value is< / span > < / div >
< div class = "line" > < a id = "l03461" name = "l03461" > < / a > < span class = "lineno" > 3461< / span > < span class = "comment" > // min(partial_demand_sums_rmq_[0][index+i].min | i in [0, 2^layer)),< / span > < / div >
< div class = "line" > < a id = "l03462" name = "l03462" > < / a > < span class = "lineno" > 3462< / span > < span class = "comment" > // similarly max_value is the maximum of .max on the same range.< / span > < / div >
< div class = "line" > < a id = "l03463" name = "l03463" > < / a > < span class = "lineno" > 3463< / span > std::vector< std::vector< Interval> > partial_demand_sums_rmq_;< / div >
< div class = "line" > < a id = "l03464" name = "l03464" > < / a > < span class = "lineno" > 3464< / span > < span class = "comment" > // The incremental branch of Commit() may waste space in the layers of the< / span > < / div >
< div class = "line" > < a id = "l03465" name = "l03465" > < / a > < span class = "lineno" > 3465< / span > < span class = "comment" > // RMQ structure. This is the upper limit of a layer' s size.< / span > < / div >
< div class = "line" > < a id = "l03466" name = "l03466" > < / a > < span class = "lineno" > 3466< / span > < span class = "keyword" > const< / span > < span class = "keywordtype" > int< / span > maximum_partial_demand_layer_size_;< / div >
< div class = "line" > < a id = "l03467" name = "l03467" > < / a > < span class = "lineno" > 3467< / span > < span class = "comment" > // previous_nontrivial_index_[index_[node]] has the index of the previous< / span > < / div >
< div class = "line" > < a id = "l03468" name = "l03468" > < / a > < span class = "lineno" > 3468< / span > < span class = "comment" > // node on its committed path that has nonfixed demand or nontrivial node< / span > < / div >
< div class = "line" > < a id = "l03469" name = "l03469" > < / a > < span class = "lineno" > 3469< / span > < span class = "comment" > // capacity. This allows for O(1) queries that all nodes on a subpath< / span > < / div >
< div class = "line" > < a id = "l03470" name = "l03470" > < / a > < span class = "lineno" > 3470< / span > < span class = "comment" > // are nonfixed and nontrivial.< / span > < / div >
< div class = "line" > < a id = "l03471" name = "l03471" > < / a > < span class = "lineno" > 3471< / span > std::vector< int> previous_nontrivial_index_;< / div >
< div class = "line" > < a id = "l03472" name = "l03472" > < / a > < span class = "lineno" > 3472< / span > };< / div >
< div class = "line" > < a id = "l03473" name = "l03473" > < / a > < span class = "lineno" > 3473< / span > < / div >
< div class = "line" > < a id = "l03474" name = "l03474" > < / a > < span class = "lineno" > 3474< / span > < span class = "comment" > // Make a filter that takes ownership of a PathState and synchronizes it with< / span > < / div >
< div class = "line" > < a id = "l03475" name = "l03475" > < / a > < span class = "lineno" > 3475< / span > < span class = "comment" > // solver events. The solver represents a graph with array of variables ' nexts' .< / span > < / div >
< div class = "line" > < a id = "l03476" name = "l03476" > < / a > < span class = "lineno" > 3476< / span > < span class = "comment" > // Solver events are embodied by Assignment* deltas, that are translated to node< / span > < / div >
< div class = "line" > < a id = "l03477" name = "l03477" > < / a > < span class = "lineno" > 3477< / span > < span class = "comment" > // changes during Relax(), committed during Synchronize(), and reverted on< / span > < / div >
< div class = "line" > < a id = "l03478" name = "l03478" > < / a > < span class = "lineno" > 3478< / span > < span class = "comment" > // Revert().< / span > < / div >
< div class = "line" > < a id = "l03479" name = "l03479" > < / a > < span class = "lineno" > 3479< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#ae1de0a1f7cf121d53ee230f794ce51f5" > MakePathStateFilter< / a > (< a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * solver,< / div >
< div class = "line" > < a id = "l03480" name = "l03480" > < / a > < span class = "lineno" > 3480< / span > std::unique_ptr< PathState> path_state,< / div >
< div class = "line" > < a id = "l03481" name = "l03481" > < / a > < span class = "lineno" > 3481< / span > < span class = "keyword" > const< / span > std::vector< IntVar*> & nexts);< / div >
< div class = "line" > < a id = "l03482" name = "l03482" > < / a > < span class = "lineno" > 3482< / span > < / div >
< div class = "line" > < a id = "l03483" name = "l03483" > < / a > < span class = "lineno" > 3483< / span > < span class = "comment" > // Make a filter that translates solver events to the input checker' s interface.< / span > < / div >
< div class = "line" > < a id = "l03484" name = "l03484" > < / a > < span class = "lineno" > 3484< / span > < span class = "comment" > // Since UnaryDimensionChecker has a PathState, the filter returned by this< / span > < / div >
< div class = "line" > < a id = "l03485" name = "l03485" > < / a > < span class = "lineno" > 3485< / span > < span class = "comment" > // must be synchronized to the corresponding PathStateFilter:< / span > < / div >
< div class = "line" > < a id = "l03486" name = "l03486" > < / a > < span class = "lineno" > 3486< / span > < span class = "comment" > // - Relax() must be called after the PathStateFilter' s.< / span > < / div >
< div class = "line" > < a id = "l03487" name = "l03487" > < / a > < span class = "lineno" > 3487< / span > < span class = "comment" > // - Accept() must be called after.< / span > < / div >
< div class = "line" > < a id = "l03488" name = "l03488" > < / a > < span class = "lineno" > 3488< / span > < span class = "comment" > // - Synchronize() must be called before.< / span > < / div >
< div class = "line" > < a id = "l03489" name = "l03489" > < / a > < span class = "lineno" > 3489< / span > < span class = "comment" > // - Revert() must be called before.< / span > < / div >
< div class = "line" > < a id = "l03490" name = "l03490" > < / a > < span class = "lineno" > 3490< / span > < a class = "code hl_class" href = "classoperations__research_1_1_local_search_filter.html" > LocalSearchFilter< / a > * < a class = "code hl_function" href = "namespaceoperations__research.html#a2df70eb91e349ca7fe8310de3a9bc9b9" > MakeUnaryDimensionFilter< / a > (< / div >
< div class = "line" > < a id = "l03491" name = "l03491" > < / a > < span class = "lineno" > 3491< / span > < a class = "code hl_class" href = "classoperations__research_1_1_solver.html" > Solver< / a > * solver, std::unique_ptr< UnaryDimensionChecker> checker,< / div >
< div class = "line" > < a id = "l03492" name = "l03492" > < / a > < span class = "lineno" > 3492< / span > < span class = "keyword" > const< / span > std::string& dimension_name);< / div >
< div class = "line" > < a id = "l03493" name = "l03493" > < / a > < span class = "lineno" > 3493< / span > < / div >
< div class = "line" > < a id = "l03494" name = "l03494" > < / a > < span class = "lineno" > 3494< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // !defined(SWIG)< / span > < / div >
< div class = "line" > < a id = "l03495" name = "l03495" > < / a > < span class = "lineno" > 3495< / span > < / div >
< div class = "line" > < a id = "l03496" name = "l03496" > < / a > < span class = "lineno" > 3496< / span > } < span class = "comment" > // namespace operations_research< / span > < / div >
< div class = "line" > < a id = "l03497" name = "l03497" > < / a > < span class = "lineno" > 3497< / span > < / div >
< div class = "line" > < a id = "l03498" name = "l03498" > < / a > < span class = "lineno" > 3498< / span > < span class = "preprocessor" > #endif < / span > < span class = "comment" > // OR_TOOLS_CONSTRAINT_SOLVER_CONSTRAINT_SOLVERI_H_< / span > < / div >
< div class = "ttc" id = "aalldiff__cst_8cc_html_a151248525a9e07eb3e6e60ea1c4995eb" > < div class = "ttname" > < a href = "alldiff__cst_8cc.html#a151248525a9e07eb3e6e60ea1c4995eb" > vars_< / a > < / div > < div class = "ttdeci" > const std::vector< IntVar * > vars_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "alldiff__cst_8cc_source.html#l00044" > alldiff_cst.cc:44< / a > < / div > < / div >
< div class = "ttc" id = "aalldiff__cst_8cc_html_a26e6db9bcc64b584051ecc28171ed11f" > < div class = "ttname" > < a href = "alldiff__cst_8cc.html#a26e6db9bcc64b584051ecc28171ed11f" > max< / a > < / div > < div class = "ttdeci" > int64_t max< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "alldiff__cst_8cc_source.html#l00140" > alldiff_cst.cc:140< / a > < / div > < / div >
< div class = "ttc" id = "aalldiff__cst_8cc_html_ad10edae0a852d72fb76afb1c77735045" > < div class = "ttname" > < a href = "alldiff__cst_8cc.html#ad10edae0a852d72fb76afb1c77735045" > min< / a > < / div > < div class = "ttdeci" > int64_t min< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "alldiff__cst_8cc_source.html#l00139" > alldiff_cst.cc:139< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html" > < div class = "ttname" > < a href = "base_2logging_8h.html" > logging.h< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_a3e1cfef60e774a81f30eaddf26a3a274" > < div class = "ttname" > < a href = "base_2logging_8h.html#a3e1cfef60e774a81f30eaddf26a3a274" > CHECK< / a > < / div > < div class = "ttdeci" > #define CHECK(condition)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00495" > base/logging.h:495< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_a4395e95bab44e222cb2e77251017a0e2" > < div class = "ttname" > < a href = "base_2logging_8h.html#a4395e95bab44e222cb2e77251017a0e2" > DCHECK_LE< / a > < / div > < div class = "ttdeci" > #define DCHECK_LE(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00892" > base/logging.h:892< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_a7c0ce053b28d53aa4eaf3eb7fb71663b" > < div class = "ttname" > < a href = "base_2logging_8h.html#a7c0ce053b28d53aa4eaf3eb7fb71663b" > CHECK_EQ< / a > < / div > < div class = "ttdeci" > #define CHECK_EQ(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00702" > base/logging.h:702< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_a7cc25402ecd7591b4c39934dd656b1f9" > < div class = "ttname" > < a href = "base_2logging_8h.html#a7cc25402ecd7591b4c39934dd656b1f9" > CHECK_GE< / a > < / div > < div class = "ttdeci" > #define CHECK_GE(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00706" > base/logging.h:706< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_a7e03ec13560fa94a8fea569960d7efc6" > < div class = "ttname" > < a href = "base_2logging_8h.html#a7e03ec13560fa94a8fea569960d7efc6" > CHECK_GT< / a > < / div > < div class = "ttdeci" > #define CHECK_GT(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00707" > base/logging.h:707< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_aae2dc65d9ea248d54bf39daa986dd295" > < div class = "ttname" > < a href = "base_2logging_8h.html#aae2dc65d9ea248d54bf39daa986dd295" > DCHECK_GE< / a > < / div > < div class = "ttdeci" > #define DCHECK_GE(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00894" > base/logging.h:894< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_ab25e01a2942b821d66371fc68d53f2eb" > < div class = "ttname" > < a href = "base_2logging_8h.html#ab25e01a2942b821d66371fc68d53f2eb" > CHECK_NE< / a > < / div > < div class = "ttdeci" > #define CHECK_NE(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00703" > base/logging.h:703< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_ab4f56aa24c4c9cddc47a6abd2d747f9a" > < div class = "ttname" > < a href = "base_2logging_8h.html#ab4f56aa24c4c9cddc47a6abd2d747f9a" > DCHECK_GT< / a > < / div > < div class = "ttdeci" > #define DCHECK_GT(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00895" > base/logging.h:895< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_ab62f5ed8f2d48e29802be0cbbcd1359a" > < div class = "ttname" > < a href = "base_2logging_8h.html#ab62f5ed8f2d48e29802be0cbbcd1359a" > DCHECK_LT< / a > < / div > < div class = "ttdeci" > #define DCHECK_LT(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00893" > base/logging.h:893< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_ae17f8119c108cf3070bad3449c7e0006" > < div class = "ttname" > < a href = "base_2logging_8h.html#ae17f8119c108cf3070bad3449c7e0006" > DCHECK< / a > < / div > < div class = "ttdeci" > #define DCHECK(condition)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00889" > base/logging.h:889< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_ae4db23f10f5d4aad6d735f5a74cd6f8c" > < div class = "ttname" > < a href = "base_2logging_8h.html#ae4db23f10f5d4aad6d735f5a74cd6f8c" > CHECK_LE< / a > < / div > < div class = "ttdeci" > #define CHECK_LE(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00704" > base/logging.h:704< / a > < / div > < / div >
< div class = "ttc" id = "abase_2logging_8h_html_ae89df3243bbb8341130c7b3f44145ea0" > < div class = "ttname" > < a href = "base_2logging_8h.html#ae89df3243bbb8341130c7b3f44145ea0" > DCHECK_EQ< / a > < / div > < div class = "ttdeci" > #define DCHECK_EQ(val1, val2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2logging_8h_source.html#l00890" > base/logging.h:890< / a > < / div > < / div >
< div class = "ttc" id = "abase_2sysinfo_8h_html_a6c4b947106f3ec8ba6e4e7ddb92b8a05" > < div class = "ttname" > < a href = "base_2sysinfo_8h.html#a6c4b947106f3ec8ba6e4e7ddb92b8a05" > MemoryUsage< / a > < / div > < div class = "ttdeci" > int64_t MemoryUsage(int unused)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "base_2sysinfo_8h_source.html#l00024" > base/sysinfo.h:24< / a > < / div > < / div >
< div class = "ttc" id = "abitset_8h_html" > < div class = "ttname" > < a href = "bitset_8h.html" > bitset.h< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_argument_holder_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_argument_holder.html" > operations_research::ArgumentHolder< / a > < / div > < div class = "ttdoc" > Argument Holder: useful when visiting a model.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02326" > constraint_solveri.h:2326< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_array_with_offset_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_array_with_offset.html" > operations_research::ArrayWithOffset< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02447" > constraint_solveri.h:2447< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_array_with_offset_html_a77762357fb482084e1500646aba19f02" > < div class = "ttname" > < a href = "classoperations__research_1_1_array_with_offset.html#a77762357fb482084e1500646aba19f02" > operations_research::ArrayWithOffset::Evaluate< / a > < / div > < div class = "ttdeci" > virtual T Evaluate(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02458" > constraint_solveri.h:2458< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_array_with_offset_html_a88e32439ca2aef1df5d8a59d02dc145c" > < div class = "ttname" > < a href = "classoperations__research_1_1_array_with_offset.html#a88e32439ca2aef1df5d8a59d02dc145c" > operations_research::ArrayWithOffset::~ArrayWithOffset< / a > < / div > < div class = "ttdeci" > ~ArrayWithOffset() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02456" > constraint_solveri.h:2456< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_array_with_offset_html_ad071686565d52814817f6d90d320803a" > < div class = "ttname" > < a href = "classoperations__research_1_1_array_with_offset.html#ad071686565d52814817f6d90d320803a" > operations_research::ArrayWithOffset::ArrayWithOffset< / a > < / div > < div class = "ttdeci" > ArrayWithOffset(int64_t index_min, int64_t index_max)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02449" > constraint_solveri.h:2449< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_array_with_offset_html_ad117938b130bcd505b71898bcdef3450" > < div class = "ttname" > < a href = "classoperations__research_1_1_array_with_offset.html#ad117938b130bcd505b71898bcdef3450" > operations_research::ArrayWithOffset::SetValue< / a > < / div > < div class = "ttdeci" > void SetValue(int64_t index, T value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02464" > constraint_solveri.h:2464< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_array_with_offset_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_array_with_offset.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::ArrayWithOffset::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02470" > constraint_solveri.h:2470< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_container_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_container.html" > operations_research::AssignmentContainer< IntVar, IntVarElement > < / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_container_html_a24926108b770033792d015cb86aeffb3" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_container.html#a24926108b770033792d015cb86aeffb3" > operations_research::AssignmentContainer::Size< / a > < / div > < div class = "ttdeci" > int Size() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l05000" > constraint_solver.h:5000< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_container_html_a4beccbd8819d830e06223550b8ca6d10" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_container.html#a4beccbd8819d830e06223550b8ca6d10" > operations_research::AssignmentContainer::Contains< / a > < / div > < div class = "ttdeci" > bool Contains(const V *const var) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04967" > constraint_solver.h:4967< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_container_html_a574bbe757dd231a59843422be3145dee" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_container.html#a574bbe757dd231a59843422be3145dee" > operations_research::AssignmentContainer::Element< / a > < / div > < div class = "ttdeci" > const E & Element(const V *const var) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04984" > constraint_solver.h:4984< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_container_html_a711e8eed87d49e98128460c4aee01d02" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_container.html#a711e8eed87d49e98128460c4aee01d02" > operations_research::AssignmentContainer::MutableElement< / a > < / div > < div class = "ttdeci" > E * MutableElement(const V *const var)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04971" > constraint_solver.h:4971< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_element_html_a9c9dd3575fbfc59e05ae9ed1c05f8896" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_element.html#a9c9dd3575fbfc59e05ae9ed1c05f8896" > operations_research::AssignmentElement::Deactivate< / a > < / div > < div class = "ttdeci" > void Deactivate()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04687" > constraint_solver.h:4687< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_element_html_ae79195ce9bb522329dfaedaba78bd4e2" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_element.html#ae79195ce9bb522329dfaedaba78bd4e2" > operations_research::AssignmentElement::Activated< / a > < / div > < div class = "ttdeci" > bool Activated() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04688" > constraint_solver.h:4688< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_element_html_ae8753efaeea05f65094a4875a694a368" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment_element.html#ae8753efaeea05f65094a4875a694a368" > operations_research::AssignmentElement::Activate< / a > < / div > < div class = "ttdeci" > void Activate()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04686" > constraint_solver.h:4686< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment.html" > operations_research::Assignment< / a > < / div > < div class = "ttdoc" > An Assignment is a variable -> domains mapping, used to report solutions to the user.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l05081" > constraint_solver.h:5081< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_html_a1835a442677d0ac8a0b303c628136964" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment.html#a1835a442677d0ac8a0b303c628136964" > operations_research::Assignment::MutableSequenceVarContainer< / a > < / div > < div class = "ttdeci" > SequenceContainer * MutableSequenceVarContainer()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l05243" > constraint_solver.h:5243< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_html_a24926108b770033792d015cb86aeffb3" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment.html#a24926108b770033792d015cb86aeffb3" > operations_research::Assignment::Size< / a > < / div > < div class = "ttdeci" > int Size() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l05098" > constraint_solver.h:5098< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_html_a856df6a293bedbd12dcf082891f002c4" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment.html#a856df6a293bedbd12dcf082891f002c4" > operations_research::Assignment::SequenceVarContainer< / a > < / div > < div class = "ttdeci" > const SequenceContainer & SequenceVarContainer() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l05240" > constraint_solver.h:5240< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_html_ac76f6d6854dc981871832c7714c4a4bb" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment.html#ac76f6d6854dc981871832c7714c4a4bb" > operations_research::Assignment::MutableIntVarContainer< / a > < / div > < div class = "ttdeci" > IntContainer * MutableIntVarContainer()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l05233" > constraint_solver.h:5233< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_html_aedb0ae1cf8c3e89218604e5c039d6c7b" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment.html#aedb0ae1cf8c3e89218604e5c039d6c7b" > operations_research::Assignment::IntVarContainer< / a > < / div > < div class = "ttdeci" > const IntContainer & IntVarContainer() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l05232" > constraint_solver.h:5232< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_assignment_html_af5fcf5e7a47ae0e325fb1df409ac8e24" > < div class = "ttname" > < a href = "classoperations__research_1_1_assignment.html#af5fcf5e7a47ae0e325fb1df409ac8e24" > operations_research::Assignment::FastAdd< / a > < / div > < div class = "ttdeci" > IntVarElement * FastAdd(IntVar *const var)< / div > < div class = "ttdoc" > Adds without checking if variable has been previously added.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_2assignment_8cc_source.html#l00650" > constraint_solver/assignment.cc:650< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_int_expr_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_int_expr.html" > operations_research::BaseIntExpr< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00101" > constraint_solveri.h:101< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_int_expr_html_a1040963d944bb74b3f2cbfb4f03a89d0" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_int_expr.html#a1040963d944bb74b3f2cbfb4f03a89d0" > operations_research::BaseIntExpr::BaseIntExpr< / a > < / div > < div class = "ttdeci" > BaseIntExpr(Solver *const s)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00103" > constraint_solveri.h:103< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_int_expr_html_a6ba6001437b394e4a55076c4369b8113" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_int_expr.html#a6ba6001437b394e4a55076c4369b8113" > operations_research::BaseIntExpr::CastToVar< / a > < / div > < div class = "ttdeci" > virtual IntVar * CastToVar()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "expressions_8cc_source.html#l07450" > expressions.cc:7450< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_int_expr_html_aabb6b039a96b1f9aaed302ba620c08cd" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_int_expr.html#aabb6b039a96b1f9aaed302ba620c08cd" > operations_research::BaseIntExpr::Var< / a > < / div > < div class = "ttdeci" > IntVar * Var() override< / div > < div class = "ttdoc" > Creates a variable from the expression.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "expressions_8cc_source.html#l07442" > expressions.cc:7442< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_int_expr_html_ad10ba599bb4d5563b023f6d80363e713" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_int_expr.html#ad10ba599bb4d5563b023f6d80363e713" > operations_research::BaseIntExpr::~BaseIntExpr< / a > < / div > < div class = "ttdeci" > ~BaseIntExpr() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00104" > constraint_solveri.h:104< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html" > operations_research::BaseLns< / a > < / div > < div class = "ttdoc" > This is the base class for building an Lns operator.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01260" > constraint_solveri.h:1260< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_a3de0e8f828ff8c805575512db8e89c75" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#a3de0e8f828ff8c805575512db8e89c75" > operations_research::BaseLns::NextFragment< / a > < / div > < div class = "ttdeci" > virtual bool NextFragment()=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_a4b7841840aa1d1db5969b556993c4701" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#a4b7841840aa1d1db5969b556993c4701" > operations_research::BaseLns::~BaseLns< / a > < / div > < div class = "ttdeci" > ~BaseLns() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00104" > local_search.cc:104< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_a4c069642a869d9055609c7eac7078f8c" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#a4c069642a869d9055609c7eac7078f8c" > operations_research::BaseLns::HasFragments< / a > < / div > < div class = "ttdeci" > bool HasFragments() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01268" > constraint_solveri.h:1268< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_a76f3a89c46806c6aa038669246ccb66b" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#a76f3a89c46806c6aa038669246ccb66b" > operations_research::BaseLns::AppendToFragment< / a > < / div > < div class = "ttdeci" > void AppendToFragment(int index)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00121" > local_search.cc:121< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_a840517015168011f69e29024a6427c59" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#a840517015168011f69e29024a6427c59" > operations_research::BaseLns::BaseLns< / a > < / div > < div class = "ttdeci" > BaseLns(const std::vector< IntVar * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00101" > local_search.cc:101< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_a93c1603a882c8cf59cc93822caf83caa" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#a93c1603a882c8cf59cc93822caf83caa" > operations_research::BaseLns::FragmentSize< / a > < / div > < div class = "ttdeci" > int FragmentSize() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00127" > local_search.cc:127< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_ad14cde260686e5b4174e691675df3139" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#ad14cde260686e5b4174e691675df3139" > operations_research::BaseLns::MakeOneNeighbor< / a > < / div > < div class = "ttdeci" > bool MakeOneNeighbor() override< / div > < div class = "ttdoc" > This method should not be overridden. Override NextFragment() instead.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00106" > local_search.cc:106< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_lns_html_adfa0121ae9643b1ebbf015263e75267f" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_lns.html#adfa0121ae9643b1ebbf015263e75267f" > operations_research::BaseLns::InitFragments< / a > < / div > < div class = "ttdeci" > virtual void InitFragments()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00119" > local_search.cc:119< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_base_object_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_base_object.html" > operations_research::BaseObject< / a > < / div > < div class = "ttdoc" > A BaseObject is the root of all reversibly allocated objects.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03169" > constraint_solver.h:3169< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_bitset64_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_bitset64.html" > operations_research::Bitset64< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00414" > bitset.h:414< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_bitset64_html_a1e8761187def0ec75ce81cb07cb7bb62" > < div class = "ttname" > < a href = "classoperations__research_1_1_bitset64.html#a1e8761187def0ec75ce81cb07cb7bb62" > operations_research::Bitset64::SetContentFromBitsetOfSameSize< / a > < / div > < div class = "ttdeci" > void SetContentFromBitsetOfSameSize(const Bitset64< OtherIndexType > & other)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00535" > bitset.h:535< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_bitset64_html_a61e6f65595ec1afb4b7955f370c67c08" > < div class = "ttname" > < a href = "classoperations__research_1_1_bitset64.html#a61e6f65595ec1afb4b7955f370c67c08" > operations_research::Bitset64::Clear< / a > < / div > < div class = "ttdeci" > void Clear(IndexType i)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00457" > bitset.h:457< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_bitset64_html_a76e58f3dd327215d28ea8c48f8c86009" > < div class = "ttname" > < a href = "classoperations__research_1_1_bitset64.html#a76e58f3dd327215d28ea8c48f8c86009" > operations_research::Bitset64::Set< / a > < / div > < div class = "ttdeci" > void Set(IndexType i)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00495" > bitset.h:495< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_bitset64_html_a95a7b1824d872a78f5b53153c8436f36" > < div class = "ttname" > < a href = "classoperations__research_1_1_bitset64.html#a95a7b1824d872a78f5b53153c8436f36" > operations_research::Bitset64::Resize< / a > < / div > < div class = "ttdeci" > void Resize(IndexType size)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00433" > bitset.h:433< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_bitset64_html_ac455173bbee06de96840b6980cb20dff" > < div class = "ttname" > < a href = "classoperations__research_1_1_bitset64.html#ac455173bbee06de96840b6980cb20dff" > operations_research::Bitset64::CopyBucket< / a > < / div > < div class = "ttdeci" > void CopyBucket(const Bitset64< IndexType > & other, IndexType i)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00511" > bitset.h:511< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html" > operations_research::BooleanVar< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01956" > constraint_solveri.h:1956< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a0572abaa4524f2abfa7634123da83584" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a0572abaa4524f2abfa7634123da83584" > operations_research::BooleanVar::VarType< / a > < / div > < div class = "ttdeci" > int VarType() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01985" > constraint_solveri.h:1985< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a26084244a10aa8370e8d8a165fd9c80e" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a26084244a10aa8370e8d8a165fd9c80e" > operations_research::BooleanVar::RestoreValue< / a > < / div > < div class = "ttdeci" > virtual void RestoreValue()=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a303c8b67c301d6d436bd06e50d41cd6b" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a303c8b67c301d6d436bd06e50d41cd6b" > operations_research::BooleanVar::Bound< / a > < / div > < div class = "ttdeci" > bool Bound() const override< / div > < div class = "ttdoc" > Returns true if the min and the max of the expression are equal.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01970" > constraint_solveri.h:1970< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a4aa5eab0485ae0ec6eac0a81e5d5b9bd" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a4aa5eab0485ae0ec6eac0a81e5d5b9bd" > operations_research::BooleanVar::WhenRange< / a > < / div > < div class = "ttdeci" > void WhenRange(Demon *d) override< / div > < div class = "ttdoc" > Attach a demon that will watch the min or the max of the expression.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01978" > constraint_solveri.h:1978< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a5114f46a021e08dd81c2d7462a8bc735" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a5114f46a021e08dd81c2d7462a8bc735" > operations_research::BooleanVar::delayed_bound_demons_< / a > < / div > < div class = "ttdeci" > SimpleRevFIFO< Demon * > delayed_bound_demons_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02000" > constraint_solveri.h:2000< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a57de3380cd407d67b62bfdbc72869994" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a57de3380cd407d67b62bfdbc72869994" > operations_research::BooleanVar::Min< / a > < / div > < div class = "ttdeci" > int64_t Min() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01965" > constraint_solveri.h:1965< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a5d794218448e5119fe2034719dc55c6f" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a5d794218448e5119fe2034719dc55c6f" > operations_research::BooleanVar::WhenDomain< / a > < / div > < div class = "ttdeci" > void WhenDomain(Demon *d) override< / div > < div class = "ttdoc" > This method attaches a demon that will watch any domain modification of the domain of the variable.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01979" > constraint_solveri.h:1979< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_a970f18a42acc024041506587b8f79e74" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#a970f18a42acc024041506587b8f79e74" > operations_research::BooleanVar::kUnboundBooleanVarValue< / a > < / div > < div class = "ttdeci" > static const int kUnboundBooleanVarValue< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01958" > constraint_solveri.h:1958< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_ab692c3573e15cc79cf2dbaffdbc033a4" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#ab692c3573e15cc79cf2dbaffdbc033a4" > operations_research::BooleanVar::Value< / a > < / div > < div class = "ttdeci" > int64_t Value() const override< / div > < div class = "ttdoc" > This method returns the value of the variable.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01971" > constraint_solveri.h:1971< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_abd0cf0dd59c0427b3e6242da7328c409" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#abd0cf0dd59c0427b3e6242da7328c409" > operations_research::BooleanVar::Max< / a > < / div > < div class = "ttdeci" > int64_t Max() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01967" > constraint_solveri.h:1967< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_ac1575c67c67687efdd5159442637e6ff" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#ac1575c67c67687efdd5159442637e6ff" > operations_research::BooleanVar::value_< / a > < / div > < div class = "ttdeci" > int value_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01998" > constraint_solveri.h:1998< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_ad2da2d3058005bae8dcd6bc37fa1244b" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#ad2da2d3058005bae8dcd6bc37fa1244b" > operations_research::BooleanVar::bound_demons_< / a > < / div > < div class = "ttdeci" > SimpleRevFIFO< Demon * > bound_demons_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01999" > constraint_solveri.h:1999< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_ad594d94255d119c43ecdd6f0179b73ae" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#ad594d94255d119c43ecdd6f0179b73ae" > operations_research::BooleanVar::RawValue< / a > < / div > < div class = "ttdeci" > int RawValue() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01995" > constraint_solveri.h:1995< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_adbfe3c73b9cad61f112ccb082b553c51" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#adbfe3c73b9cad61f112ccb082b553c51" > operations_research::BooleanVar::BaseName< / a > < / div > < div class = "ttdeci" > std::string BaseName() const override< / div > < div class = "ttdoc" > Returns a base name for automatic naming.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01993" > constraint_solveri.h:1993< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_aeded50edd859a889ba764147084fc516" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#aeded50edd859a889ba764147084fc516" > operations_research::BooleanVar::BooleanVar< / a > < / div > < div class = "ttdeci" > BooleanVar(Solver *const s, const std::string & name=" " )< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01960" > constraint_solveri.h:1960< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_boolean_var_html_aff6bd70a429314a0d34cfc87cd6adeea" > < div class = "ttname" > < a href = "classoperations__research_1_1_boolean_var.html#aff6bd70a429314a0d34cfc87cd6adeea" > operations_research::BooleanVar::~BooleanVar< / a > < / div > < div class = "ttdeci" > ~BooleanVar() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01963" > constraint_solveri.h:1963< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method0_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method0.html" > operations_research::CallMethod0< / a > < / div > < div class = "ttdoc" > Demon proxy to a method on the constraint with no arguments.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00499" > constraint_solveri.h:499< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method0_html_a27e4f9bb590aef0900a373cfe7f34615" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method0.html#a27e4f9bb590aef0900a373cfe7f34615" > operations_research::CallMethod0::~CallMethod0< / a > < / div > < div class = "ttdeci" > ~CallMethod0() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00504" > constraint_solveri.h:504< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method0_html_a7b6140d03824eabe8579c6f72d8bd725" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method0.html#a7b6140d03824eabe8579c6f72d8bd725" > operations_research::CallMethod0::CallMethod0< / a > < / div > < div class = "ttdeci" > CallMethod0(T *const ct, void(T::*method)(), const std::string & name)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00501" > constraint_solveri.h:501< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method0_html_ac863f0fdd6a476ca003c99f58f14e623" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method0.html#ac863f0fdd6a476ca003c99f58f14e623" > operations_research::CallMethod0::Run< / a > < / div > < div class = "ttdeci" > void Run(Solver *const s) override< / div > < div class = "ttdoc" > This is the main callback of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00506" > constraint_solveri.h:506< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method0_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method0.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::CallMethod0::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00508" > constraint_solveri.h:508< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method1_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method1.html" > operations_research::CallMethod1< / a > < / div > < div class = "ttdoc" > Demon proxy to a method on the constraint with one argument.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00537" > constraint_solveri.h:537< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method1_html_abb048ab554f3f8a361593b483fd4098c" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method1.html#abb048ab554f3f8a361593b483fd4098c" > operations_research::CallMethod1::~CallMethod1< / a > < / div > < div class = "ttdeci" > ~CallMethod1() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00543" > constraint_solveri.h:543< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method1_html_ac863f0fdd6a476ca003c99f58f14e623" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method1.html#ac863f0fdd6a476ca003c99f58f14e623" > operations_research::CallMethod1::Run< / a > < / div > < div class = "ttdeci" > void Run(Solver *const s) override< / div > < div class = "ttdoc" > This is the main callback of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00545" > constraint_solveri.h:545< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method1_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method1.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::CallMethod1::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00547" > constraint_solveri.h:547< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method1_html_aeec7702079973f2d99063b2ed414aba4" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method1.html#aeec7702079973f2d99063b2ed414aba4" > operations_research::CallMethod1::CallMethod1< / a > < / div > < div class = "ttdeci" > CallMethod1(T *const ct, void(T::*method)(P), const std::string & name, P param1)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00539" > constraint_solveri.h:539< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method2_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method2.html" > operations_research::CallMethod2< / a > < / div > < div class = "ttdoc" > Demon proxy to a method on the constraint with two arguments.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00567" > constraint_solveri.h:567< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method2_html_a86921989576185a2ad25d64983e120a0" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method2.html#a86921989576185a2ad25d64983e120a0" > operations_research::CallMethod2::CallMethod2< / a > < / div > < div class = "ttdeci" > CallMethod2(T *const ct, void(T::*method)(P, Q), const std::string & name, P param1, Q param2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00569" > constraint_solveri.h:569< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method2_html_ac2fbc05e88a31bf2a1770247af178418" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method2.html#ac2fbc05e88a31bf2a1770247af178418" > operations_research::CallMethod2::~CallMethod2< / a > < / div > < div class = "ttdeci" > ~CallMethod2() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00577" > constraint_solveri.h:577< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method2_html_ac863f0fdd6a476ca003c99f58f14e623" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method2.html#ac863f0fdd6a476ca003c99f58f14e623" > operations_research::CallMethod2::Run< / a > < / div > < div class = "ttdeci" > void Run(Solver *const s) override< / div > < div class = "ttdoc" > This is the main callback of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00579" > constraint_solveri.h:579< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method2_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method2.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::CallMethod2::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00583" > constraint_solveri.h:583< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method3_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method3.html" > operations_research::CallMethod3< / a > < / div > < div class = "ttdoc" > Demon proxy to a method on the constraint with three arguments.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00607" > constraint_solveri.h:607< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method3_html_a7d00aec69640287b4cab7b6006796450" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method3.html#a7d00aec69640287b4cab7b6006796450" > operations_research::CallMethod3::~CallMethod3< / a > < / div > < div class = "ttdeci" > ~CallMethod3() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00618" > constraint_solveri.h:618< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method3_html_a7faffef6c714afe185ea30a930bb6ff6" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method3.html#a7faffef6c714afe185ea30a930bb6ff6" > operations_research::CallMethod3::CallMethod3< / a > < / div > < div class = "ttdeci" > CallMethod3(T *const ct, void(T::*method)(P, Q, R), const std::string & name, P param1, Q param2, R param3)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00609" > constraint_solveri.h:609< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method3_html_ac863f0fdd6a476ca003c99f58f14e623" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method3.html#ac863f0fdd6a476ca003c99f58f14e623" > operations_research::CallMethod3::Run< / a > < / div > < div class = "ttdeci" > void Run(Solver *const s) override< / div > < div class = "ttdoc" > This is the main callback of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00620" > constraint_solveri.h:620< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_call_method3_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_call_method3.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::CallMethod3::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00624" > constraint_solveri.h:624< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_change_value_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_change_value.html" > operations_research::ChangeValue< / a > < / div > < div class = "ttdoc" > Defines operators which change the value of variables; each neighbor corresponds to one modified vari...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01284" > constraint_solveri.h:1284< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_change_value_html_a24154d3958d686ddef877d6511dbf002" > < div class = "ttname" > < a href = "classoperations__research_1_1_change_value.html#a24154d3958d686ddef877d6511dbf002" > operations_research::ChangeValue::ChangeValue< / a > < / div > < div class = "ttdeci" > ChangeValue(const std::vector< IntVar * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00295" > local_search.cc:295< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_change_value_html_a3a6b7683af0d21eadc801e49dcafb240" > < div class = "ttname" > < a href = "classoperations__research_1_1_change_value.html#a3a6b7683af0d21eadc801e49dcafb240" > operations_research::ChangeValue::ModifyValue< / a > < / div > < div class = "ttdeci" > virtual int64_t ModifyValue(int64_t index, int64_t value)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_change_value_html_a65938f69ea3057a0c2cada291b8c6bce" > < div class = "ttname" > < a href = "classoperations__research_1_1_change_value.html#a65938f69ea3057a0c2cada291b8c6bce" > operations_research::ChangeValue::~ChangeValue< / a > < / div > < div class = "ttdeci" > ~ChangeValue() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00298" > local_search.cc:298< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_change_value_html_ad14cde260686e5b4174e691675df3139" > < div class = "ttname" > < a href = "classoperations__research_1_1_change_value.html#ad14cde260686e5b4174e691675df3139" > operations_research::ChangeValue::MakeOneNeighbor< / a > < / div > < div class = "ttdeci" > bool MakeOneNeighbor() override< / div > < div class = "ttdoc" > This method should not be overridden. Override ModifyValue() instead.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00300" > local_search.cc:300< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_constraint_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_constraint.html" > operations_research::Constraint< / a > < / div > < div class = "ttdoc" > A constraint is the main modeling object.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03626" > constraint_solver.h:3626< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_decision_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_decision.html" > operations_research::Decision< / a > < / div > < div class = "ttdoc" > A Decision represents a choice point in the search tree.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03245" > constraint_solver.h:3245< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_decision_visitor_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_decision_visitor.html" > operations_research::DecisionVisitor< / a > < / div > < div class = "ttdoc" > A DecisionVisitor is used to inspect a decision.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03266" > constraint_solver.h:3266< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method0_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method0.html" > operations_research::DelayedCallMethod0< / a > < / div > < div class = "ttdoc" > Low-priority demon proxy to a method on the constraint with no arguments.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00657" > constraint_solveri.h:657< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method0_html_a0a34701cff1b1ac2fabd11e27c7cebc9" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method0.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > operations_research::DelayedCallMethod0::priority< / a > < / div > < div class = "ttdeci" > Solver::DemonPriority priority() const override< / div > < div class = "ttdoc" > This method returns the priority of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00666" > constraint_solveri.h:666< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method0_html_abd9bafdfee91dc487e75378f8c6cbaa7" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method0.html#abd9bafdfee91dc487e75378f8c6cbaa7" > operations_research::DelayedCallMethod0::~DelayedCallMethod0< / a > < / div > < div class = "ttdeci" > ~DelayedCallMethod0() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00662" > constraint_solveri.h:662< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method0_html_ac863f0fdd6a476ca003c99f58f14e623" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method0.html#ac863f0fdd6a476ca003c99f58f14e623" > operations_research::DelayedCallMethod0::Run< / a > < / div > < div class = "ttdeci" > void Run(Solver *const s) override< / div > < div class = "ttdoc" > This is the main callback of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00664" > constraint_solveri.h:664< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method0_html_aec224aa9286a227b83c6867011006249" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method0.html#aec224aa9286a227b83c6867011006249" > operations_research::DelayedCallMethod0::DelayedCallMethod0< / a > < / div > < div class = "ttdeci" > DelayedCallMethod0(T *const ct, void(T::*method)(), const std::string & name)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00659" > constraint_solveri.h:659< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method0_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method0.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::DelayedCallMethod0::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00670" > constraint_solveri.h:670< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method1_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method1.html" > operations_research::DelayedCallMethod1< / a > < / div > < div class = "ttdoc" > Low-priority demon proxy to a method on the constraint with one argument.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00690" > constraint_solveri.h:690< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method1_html_a0a34701cff1b1ac2fabd11e27c7cebc9" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method1.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > operations_research::DelayedCallMethod1::priority< / a > < / div > < div class = "ttdeci" > Solver::DemonPriority priority() const override< / div > < div class = "ttdoc" > This method returns the priority of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00700" > constraint_solveri.h:700< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method1_html_a977ffeeceec82ed0c880ae3249caebeb" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method1.html#a977ffeeceec82ed0c880ae3249caebeb" > operations_research::DelayedCallMethod1::DelayedCallMethod1< / a > < / div > < div class = "ttdeci" > DelayedCallMethod1(T *const ct, void(T::*method)(P), const std::string & name, P param1)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00692" > constraint_solveri.h:692< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method1_html_ac863f0fdd6a476ca003c99f58f14e623" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method1.html#ac863f0fdd6a476ca003c99f58f14e623" > operations_research::DelayedCallMethod1::Run< / a > < / div > < div class = "ttdeci" > void Run(Solver *const s) override< / div > < div class = "ttdoc" > This is the main callback of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00698" > constraint_solveri.h:698< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method1_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method1.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::DelayedCallMethod1::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00704" > constraint_solveri.h:704< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method1_html_afa281aea428f9c42e09515bda6a918e5" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method1.html#afa281aea428f9c42e09515bda6a918e5" > operations_research::DelayedCallMethod1::~DelayedCallMethod1< / a > < / div > < div class = "ttdeci" > ~DelayedCallMethod1() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00696" > constraint_solveri.h:696< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method2_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method2.html" > operations_research::DelayedCallMethod2< / a > < / div > < div class = "ttdoc" > Low-priority demon proxy to a method on the constraint with two arguments.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00726" > constraint_solveri.h:726< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method2_html_a0a34701cff1b1ac2fabd11e27c7cebc9" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method2.html#a0a34701cff1b1ac2fabd11e27c7cebc9" > operations_research::DelayedCallMethod2::priority< / a > < / div > < div class = "ttdeci" > Solver::DemonPriority priority() const override< / div > < div class = "ttdoc" > This method returns the priority of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00742" > constraint_solveri.h:742< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method2_html_a48ef3b8afff6d3904fcbe52d8c65ccb8" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method2.html#a48ef3b8afff6d3904fcbe52d8c65ccb8" > operations_research::DelayedCallMethod2::~DelayedCallMethod2< / a > < / div > < div class = "ttdeci" > ~DelayedCallMethod2() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00736" > constraint_solveri.h:736< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method2_html_a49265dec10e3d62758187d11a022df4c" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method2.html#a49265dec10e3d62758187d11a022df4c" > operations_research::DelayedCallMethod2::DelayedCallMethod2< / a > < / div > < div class = "ttdeci" > DelayedCallMethod2(T *const ct, void(T::*method)(P, Q), const std::string & name, P param1, Q param2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00728" > constraint_solveri.h:728< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method2_html_ac863f0fdd6a476ca003c99f58f14e623" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method2.html#ac863f0fdd6a476ca003c99f58f14e623" > operations_research::DelayedCallMethod2::Run< / a > < / div > < div class = "ttdeci" > void Run(Solver *const s) override< / div > < div class = "ttdoc" > This is the main callback of the demon.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00738" > constraint_solveri.h:738< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_delayed_call_method2_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_delayed_call_method2.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::DelayedCallMethod2::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00746" > constraint_solveri.h:746< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_demon_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_demon.html" > operations_research::Demon< / a > < / div > < div class = "ttdoc" > A Demon is the base element of a propagation queue.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03342" > constraint_solver.h:3342< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_expr_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_expr.html" > operations_research::IntExpr< / a > < / div > < div class = "ttdoc" > The class IntExpr is the base of all integer expressions in constraint programming.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03878" > constraint_solver.h:3878< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_expr_html_ac84c250d67f30c89e845cd460eeaaad8" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_expr.html#ac84c250d67f30c89e845cd460eeaaad8" > operations_research::IntExpr::Max< / a > < / div > < div class = "ttdeci" > virtual int64_t Max() const =0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_tuple_set_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_tuple_set.html" > operations_research::IntTupleSet< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "tuple__set_8h_source.html#l00049" > tuple_set.h:49< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_element_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_element.html" > operations_research::IntVarElement< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04694" > constraint_solver.h:4694< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_element_html_a15828fe5ecfdada586a63d916b7b7354" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_element.html#a15828fe5ecfdada586a63d916b7b7354" > operations_research::IntVarElement::Value< / a > < / div > < div class = "ttdeci" > int64_t Value() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04718" > constraint_solver.h:4718< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_element_html_ac1b2a58bfded95799de1fd7958bdb2a3" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_element.html#ac1b2a58bfded95799de1fd7958bdb2a3" > operations_research::IntVarElement::SetValue< / a > < / div > < div class = "ttdeci" > void SetValue(int64_t v)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04728" > constraint_solver.h:4728< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_element_html_ad197164b669d8b5d35fc497754791e39" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_element.html#ad197164b669d8b5d35fc497754791e39" > operations_research::IntVarElement::Var< / a > < / div > < div class = "ttdeci" > IntVar * Var() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04701" > constraint_solver.h:4701< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var.html" > operations_research::IntVar< / a > < / div > < div class = "ttdoc" > The class IntVar is a subset of IntExpr.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04040" > constraint_solver.h:4040< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_iterator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_iterator.html" > operations_research::IntVarIterator< / a > < / div > < div class = "ttdoc" > The class Iterator has two direct subclasses.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03956" > constraint_solver.h:3956< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_filter_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_filter.html" > operations_research::IntVarLocalSearchFilter< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01822" > constraint_solveri.h:1822< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_filter_html_a0aee6f5d9448e52ed735f92e581f2a3f" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_filter.html#a0aee6f5d9448e52ed735f92e581f2a3f" > operations_research::IntVarLocalSearchFilter::OnSynchronize< / a > < / div > < div class = "ttdeci" > virtual void OnSynchronize(const Assignment *delta)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01851" > constraint_solveri.h:1851< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_filter_html_a24926108b770033792d015cb86aeffb3" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_filter.html#a24926108b770033792d015cb86aeffb3" > operations_research::IntVarLocalSearchFilter::Size< / a > < / div > < div class = "ttdeci" > int Size() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01842" > constraint_solveri.h:1842< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_filter_html_a6de77240042f2131a749284738dacf39" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_filter.html#a6de77240042f2131a749284738dacf39" > operations_research::IntVarLocalSearchFilter::Var< / a > < / div > < div class = "ttdeci" > IntVar * Var(int index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01843" > constraint_solveri.h:1843< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_filter_html_a8aee4c2eced4f3924981864dffcb9f4b" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_filter.html#a8aee4c2eced4f3924981864dffcb9f4b" > operations_research::IntVarLocalSearchFilter::FindIndex< / a > < / div > < div class = "ttdeci" > bool FindIndex(IntVar *const var, int64_t *index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01831" > constraint_solveri.h:1831< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_filter_html_a98462960b58fdbd903804b5fe18c0be0" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_filter.html#a98462960b58fdbd903804b5fe18c0be0" > operations_research::IntVarLocalSearchFilter::Value< / a > < / div > < div class = "ttdeci" > int64_t Value(int index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01844" > constraint_solveri.h:1844< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_filter_html_af295b14439014798b1fd34faffd3b5e7" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_filter.html#af295b14439014798b1fd34faffd3b5e7" > operations_research::IntVarLocalSearchFilter::IsVarSynced< / a > < / div > < div class = "ttdeci" > bool IsVarSynced(int index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01848" > constraint_solveri.h:1848< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html" > operations_research::IntVarLocalSearchHandler< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00940" > constraint_solveri.h:940< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html_a8fb0bba143ab22bee32e6bf4bd886d53" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html#a8fb0bba143ab22bee32e6bf4bd886d53" > operations_research::IntVarLocalSearchHandler::ValueFromAssignment< / a > < / div > < div class = "ttdeci" > bool ValueFromAssignment(const Assignment & assignment, IntVar *var, int64_t index, int64_t *value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01086" > constraint_solveri.h:1086< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html_a97b236691225d7209706cf03fc455dc9" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9" > operations_research::IntVarLocalSearchHandler::OnAddVars< / a > < / div > < div class = "ttdeci" > void OnAddVars()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00972" > constraint_solveri.h:972< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html_aa13961bacce6e6f3501e633462882070" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html#aa13961bacce6e6f3501e633462882070" > operations_research::IntVarLocalSearchHandler::IntVarLocalSearchHandler< / a > < / div > < div class = "ttdeci" > IntVarLocalSearchHandler()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00942" > constraint_solveri.h:942< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html_ac2e895b6e77d8a09a52210eca1de3ee6" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html#ac2e895b6e77d8a09a52210eca1de3ee6" > operations_research::IntVarLocalSearchHandler::IntVarLocalSearchHandler< / a > < / div > < div class = "ttdeci" > IntVarLocalSearchHandler(const IntVarLocalSearchHandler & other)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00943" > constraint_solveri.h:943< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html_ad20b69bddb1430dd0e5fbd5c92d339a0" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html#ad20b69bddb1430dd0e5fbd5c92d339a0" > operations_research::IntVarLocalSearchHandler::IntVarLocalSearchHandler< / a > < / div > < div class = "ttdeci" > IntVarLocalSearchHandler(IntVarLocalSearchOperator *op)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00945" > constraint_solveri.h:945< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html_ad4c241e89e13509622503f2763ed7295" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html#ad4c241e89e13509622503f2763ed7295" > operations_research::IntVarLocalSearchHandler::OnRevertChanges< / a > < / div > < div class = "ttdeci" > void OnRevertChanges(int64_t index, int64_t value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01103" > constraint_solveri.h:1103< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_handler_html_ad76f3e78581c81805db48d86bbfbc51d" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_handler.html#ad76f3e78581c81805db48d86bbfbc51d" > operations_research::IntVarLocalSearchHandler::AddToAssignment< / a > < / div > < div class = "ttdeci" > void AddToAssignment(IntVar *var, int64_t value, bool active, std::vector< int > *assignment_indices, int64_t index, Assignment *assignment) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00946" > constraint_solveri.h:946< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html" > operations_research::IntVarLocalSearchOperator< / a > < / div > < div class = "ttdoc" > Specialization of LocalSearchOperator built from an array of IntVars which specifies the scope of the...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01021" > constraint_solveri.h:1022< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_a0e580afd2c00b163cbb019ca661470f5" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#a0e580afd2c00b163cbb019ca661470f5" > operations_research::IntVarLocalSearchOperator::OldInverseValue< / a > < / div > < div class = "ttdeci" > int64_t OldInverseValue(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01068" > constraint_solveri.h:1068< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_a2d3012edb1ac1465f54c9c0c16187e69" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#a2d3012edb1ac1465f54c9c0c16187e69" > operations_research::IntVarLocalSearchOperator::InverseValue< / a > < / div > < div class = "ttdeci" > int64_t InverseValue(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01066" > constraint_solveri.h:1066< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_a3441b36fa04791719efbfae2faca30a0" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#a3441b36fa04791719efbfae2faca30a0" > operations_research::IntVarLocalSearchOperator::IntVarLocalSearchHandler< / a > < / div > < div class = "ttdeci" > friend class IntVarLocalSearchHandler< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01053" > constraint_solveri.h:1053< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_a557f96c9f1f5883f616350bde6cc2e2a" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#a557f96c9f1f5883f616350bde6cc2e2a" > operations_research::IntVarLocalSearchOperator::SetOldInverseValue< / a > < / div > < div class = "ttdeci" > void SetOldInverseValue(int64_t index, int64_t value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01076" > constraint_solveri.h:1076< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_a6c3af3418997de51df855f6321d299f1" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#a6c3af3418997de51df855f6321d299f1" > operations_research::IntVarLocalSearchOperator::~IntVarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > ~IntVarLocalSearchOperator() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01043" > constraint_solveri.h:1043< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_a79ba95b5c45a4b1ce761cfac942c7e3b" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#a79ba95b5c45a4b1ce761cfac942c7e3b" > operations_research::IntVarLocalSearchOperator::SetInverseValue< / a > < / div > < div class = "ttdeci" > void SetInverseValue(int64_t index, int64_t value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01072" > constraint_solveri.h:1072< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_aa9d1112ec8418e1679ae4785c3862ffd" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#aa9d1112ec8418e1679ae4785c3862ffd" > operations_research::IntVarLocalSearchOperator::IntVarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > IntVarLocalSearchOperator()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01024" > constraint_solveri.h:1024< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_ac8d84ceae8536513503a3132372cca0f" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#ac8d84ceae8536513503a3132372cca0f" > operations_research::IntVarLocalSearchOperator::IntVarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > IntVarLocalSearchOperator(const std::vector< IntVar * > & vars, bool keep_inverse_values=false)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01028" > constraint_solveri.h:1028< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_int_var_local_search_operator_html_ad1a398f4067998f7fad447447051dbcf" > < div class = "ttname" > < a href = "classoperations__research_1_1_int_var_local_search_operator.html#ad1a398f4067998f7fad447447051dbcf" > operations_research::IntVarLocalSearchOperator::IsInverseValue< / a > < / div > < div class = "ttdeci" > bool IsInverseValue(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01061" > constraint_solveri.h:1061< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_interval_var_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_interval_var.html" > operations_research::IntervalVar< / a > < / div > < div class = "ttdoc" > Interval variables are often used in scheduling.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04437" > constraint_solver.h:4437< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html" > operations_research::LocalSearchFilter< / a > < / div > < div class = "ttdoc" > Local Search Filters are used for fast neighbor pruning.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01730" > constraint_solveri.h:1730< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_a014f20f582a46468dff392fcf77aa55c" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#a014f20f582a46468dff392fcf77aa55c" > operations_research::LocalSearchFilter::Synchronize< / a > < / div > < div class = "ttdeci" > virtual void Synchronize(const Assignment *assignment, const Assignment *delta)=0< / div > < div class = "ttdoc" > Synchronizes the filter with the current solution, delta being the difference with the solution passe...< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_a4551beb12e80737f9c1d110cefa2f342" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#a4551beb12e80737f9c1d110cefa2f342" > operations_research::LocalSearchFilter::GetAcceptedObjectiveValue< / a > < / div > < div class = "ttdeci" > virtual int64_t GetAcceptedObjectiveValue() const< / div > < div class = "ttdoc" > Objective value from the last time Accept() was called and returned true.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01768" > constraint_solveri.h:1768< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_a4c4ba0ffe635d14b93794268bd8e5995" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#a4c4ba0ffe635d14b93794268bd8e5995" > operations_research::LocalSearchFilter::Reset< / a > < / div > < div class = "ttdeci" > virtual void Reset()< / div > < div class = "ttdoc" > Sets the filter to empty solution.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01762" > constraint_solveri.h:1762< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_a683280a81651f9073086324eb6d0cee9" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#a683280a81651f9073086324eb6d0cee9" > operations_research::LocalSearchFilter::Relax< / a > < / div > < div class = "ttdeci" > virtual void Relax(const Assignment *delta, const Assignment *deltadelta)< / div > < div class = "ttdoc" > Lets the filter know what delta and deltadelta will be passed in the next Accept().< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01734" > constraint_solveri.h:1734< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_a9f206932241656bf51d072480284ec9a" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#a9f206932241656bf51d072480284ec9a" > operations_research::LocalSearchFilter::Accept< / a > < / div > < div class = "ttdeci" > virtual bool Accept(const Assignment *delta, const Assignment *deltadelta, int64_t objective_min, int64_t objective_max)=0< / div > < div class = "ttdoc" > Accepts a " delta" given the assignment with which the filter has been synchronized; the delta holds t...< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_aa21d5f9b4adc94167e3a466095d82fd5" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#aa21d5f9b4adc94167e3a466095d82fd5" > operations_research::LocalSearchFilter::IsIncremental< / a > < / div > < div class = "ttdeci" > virtual bool IsIncremental() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01749" > constraint_solveri.h:1749< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_abbc1e9f86296b06847f28247b420c376" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#abbc1e9f86296b06847f28247b420c376" > operations_research::LocalSearchFilter::GetSynchronizedObjectiveValue< / a > < / div > < div class = "ttdeci" > virtual int64_t GetSynchronizedObjectiveValue() const< / div > < div class = "ttdoc" > Objective value from last time Synchronize() was called.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01765" > constraint_solveri.h:1765< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_abd469dc354c620c06a2f7b45df1abc39" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#abd469dc354c620c06a2f7b45df1abc39" > operations_research::LocalSearchFilter::Revert< / a > < / div > < div class = "ttdeci" > virtual void Revert()< / div > < div class = "ttdoc" > Cancels the changes made by the last Relax()/Accept() calls.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01759" > constraint_solveri.h:1759< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_html_abfb57ca737847644064b3accdddbc8ba" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter.html#abfb57ca737847644064b3accdddbc8ba" > operations_research::LocalSearchFilter::Commit< / a > < / div > < div class = "ttdeci" > virtual void Commit(const Assignment *delta, const Assignment *deltadelta)< / div > < div class = "ttdoc" > Dual of Relax(), lets the filter know that the delta was accepted.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01736" > constraint_solveri.h:1736< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_manager_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter_manager.html" > operations_research::LocalSearchFilterManager< / a > < / div > < div class = "ttdoc" > Filter manager: when a move is made, filters are executed to decide whether the solution is feasible ...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01774" > constraint_solveri.h:1774< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_manager_html_a16e0093badb54c2c26a272d6f245155e" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter_manager.html#a16e0093badb54c2c26a272d6f245155e" > operations_research::LocalSearchFilterManager::GetAcceptedObjectiveValue< / a > < / div > < div class = "ttdeci" > int64_t GetAcceptedObjectiveValue() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01806" > constraint_solveri.h:1806< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_manager_html_a1d06d57955f55158e291e83a99d4361b" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter_manager.html#a1d06d57955f55158e291e83a99d4361b" > operations_research::LocalSearchFilterManager::GetSynchronizedObjectiveValue< / a > < / div > < div class = "ttdeci" > int64_t GetSynchronizedObjectiveValue() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01805" > constraint_solveri.h:1805< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_manager_html_a448820cc5c3ca1a3f6ef0357404d9ecc" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter_manager.html#a448820cc5c3ca1a3f6ef0357404d9ecc" > operations_research::LocalSearchFilterManager::FilterEventType< / a > < / div > < div class = "ttdeci" > FilterEventType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01778" > constraint_solveri.h:1778< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_filter_manager_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_filter_manager.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::LocalSearchFilterManager::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01784" > constraint_solveri.h:1784< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html" > operations_research::LocalSearchMonitor< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01929" > constraint_solveri.h:1929< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_a0ee5f26ca61781ca148050d4c849a59a" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#a0ee5f26ca61781ca148050d4c849a59a" > operations_research::LocalSearchMonitor::EndMakeNextNeighbor< / a > < / div > < div class = "ttdeci" > virtual void EndMakeNextNeighbor(const LocalSearchOperator *op, bool neighbor_found, const Assignment *delta, const Assignment *deltadelta)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_a16b6aa7d88fa401005be90a804a7ab10" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#a16b6aa7d88fa401005be90a804a7ab10" > operations_research::LocalSearchMonitor::EndAcceptNeighbor< / a > < / div > < div class = "ttdeci" > virtual void EndAcceptNeighbor(const LocalSearchOperator *op, bool neighbor_found)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_a19a62cbe5ebefaa2729f76d22b7d809f" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#a19a62cbe5ebefaa2729f76d22b7d809f" > operations_research::LocalSearchMonitor::EndOperatorStart< / a > < / div > < div class = "ttdeci" > virtual void EndOperatorStart()=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_a1b4ca6b8001752831ccac4e35478456c" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#a1b4ca6b8001752831ccac4e35478456c" > operations_research::LocalSearchMonitor::BeginMakeNextNeighbor< / a > < / div > < div class = "ttdeci" > virtual void BeginMakeNextNeighbor(const LocalSearchOperator *op)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_a35b82cf962b8485dfef3772acac93985" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#a35b82cf962b8485dfef3772acac93985" > operations_research::LocalSearchMonitor::BeginOperatorStart< / a > < / div > < div class = "ttdeci" > virtual void BeginOperatorStart()=0< / div > < div class = "ttdoc" > Local search operator events.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_a70a6f04e20d3aca67f5463c3b12498dc" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#a70a6f04e20d3aca67f5463c3b12498dc" > operations_research::LocalSearchMonitor::EndFiltering< / a > < / div > < div class = "ttdeci" > virtual void EndFiltering(const LocalSearchFilter *filter, bool reject)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_a9bff5a3752886dfc07cdb1a013703229" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#a9bff5a3752886dfc07cdb1a013703229" > operations_research::LocalSearchMonitor::BeginFilterNeighbor< / a > < / div > < div class = "ttdeci" > virtual void BeginFilterNeighbor(const LocalSearchOperator *op)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_aa4c2b5fb22216b02024b4e6f42603483" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#aa4c2b5fb22216b02024b4e6f42603483" > operations_research::LocalSearchMonitor::BeginAcceptNeighbor< / a > < / div > < div class = "ttdeci" > virtual void BeginAcceptNeighbor(const LocalSearchOperator *op)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_aa80c2b78ad60b5811b9fdeb8fab32c71" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#aa80c2b78ad60b5811b9fdeb8fab32c71" > operations_research::LocalSearchMonitor::BeginFiltering< / a > < / div > < div class = "ttdeci" > virtual void BeginFiltering(const LocalSearchFilter *filter)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_acf88f5c01754112f318c5e3e09e3df28" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#acf88f5c01754112f318c5e3e09e3df28" > operations_research::LocalSearchMonitor::EndFilterNeighbor< / a > < / div > < div class = "ttdeci" > virtual void EndFilterNeighbor(const LocalSearchOperator *op, bool neighbor_found)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_monitor_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_monitor.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::LocalSearchMonitor::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01934" > constraint_solveri.h:1934< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html" > operations_research::LocalSearchOperator< / a > < / div > < div class = "ttdoc" > The base class for all local search operators.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00792" > constraint_solveri.h:792< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_a1b0063f805d92ed061848616d08f4664" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#a1b0063f805d92ed061848616d08f4664" > operations_research::LocalSearchOperator::HasFragments< / a > < / div > < div class = "ttdeci" > virtual bool HasFragments() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00802" > constraint_solveri.h:802< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_a1e1cf9d9c4228f22482c4ee6c58951a8" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#a1e1cf9d9c4228f22482c4ee6c58951a8" > operations_research::LocalSearchOperator::HoldsDelta< / a > < / div > < div class = "ttdeci" > virtual bool HoldsDelta() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00803" > constraint_solveri.h:803< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_a4c4ba0ffe635d14b93794268bd8e5995" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#a4c4ba0ffe635d14b93794268bd8e5995" > operations_research::LocalSearchOperator::Reset< / a > < / div > < div class = "ttdeci" > virtual void Reset()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00798" > constraint_solveri.h:798< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_a6d9702ba9fe50096dded07c0c2836c32" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#a6d9702ba9fe50096dded07c0c2836c32" > operations_research::LocalSearchOperator::Self< / a > < / div > < div class = "ttdeci" > virtual const LocalSearchOperator * Self() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00800" > constraint_solveri.h:800< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_a9bd1712271364632b22009ef10eb2172" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#a9bd1712271364632b22009ef10eb2172" > operations_research::LocalSearchOperator::MakeNextNeighbor< / a > < / div > < div class = "ttdeci" > virtual bool MakeNextNeighbor(Assignment *delta, Assignment *deltadelta)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_aabe1b807361b63e2f00ba8256542a818" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#aabe1b807361b63e2f00ba8256542a818" > operations_research::LocalSearchOperator::LocalSearchOperator< / a > < / div > < div class = "ttdeci" > LocalSearchOperator()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00794" > constraint_solveri.h:794< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_ae8505ab0739cf0b585de5844f7a6703c" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#ae8505ab0739cf0b585de5844f7a6703c" > operations_research::LocalSearchOperator::Start< / a > < / div > < div class = "ttdeci" > virtual void Start(const Assignment *assignment)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_operator_html_af48018bea65b9825579c53e834c8131c" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_operator.html#af48018bea65b9825579c53e834c8131c" > operations_research::LocalSearchOperator::~LocalSearchOperator< / a > < / div > < div class = "ttdeci" > ~LocalSearchOperator() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00795" > constraint_solveri.h:795< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_state_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_state.html" > operations_research::LocalSearchState< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01657" > constraint_solveri.h:1657< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_state_html_a1e53a18fec3e806c796aecc60bb1cefe" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_state.html#a1e53a18fec3e806c796aecc60bb1cefe" > operations_research::LocalSearchState::StateIsValid< / a > < / div > < div class = "ttdeci" > bool StateIsValid() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01662" > constraint_solveri.h:1662< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_variable_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_variable.html" > operations_research::LocalSearchVariable< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01690" > constraint_solveri.h:1690< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_variable_html_a4114530e159c28c6b4b445f3e47bbc25" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_variable.html#a4114530e159c28c6b4b445f3e47bbc25" > operations_research::LocalSearchVariable::SetMax< / a > < / div > < div class = "ttdeci" > bool SetMax(int64_t new_max)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01697" > constraint_solveri.h:1697< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_variable_html_a5cf7db3228f904353803dec1e14c2ae8" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_variable.html#a5cf7db3228f904353803dec1e14c2ae8" > operations_research::LocalSearchVariable::SetMin< / a > < / div > < div class = "ttdeci" > bool SetMin(int64_t new_min)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01694" > constraint_solveri.h:1694< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_variable_html_a8cf21a67f7d81a800ff912239bb2db64" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_variable.html#a8cf21a67f7d81a800ff912239bb2db64" > operations_research::LocalSearchVariable::Min< / a > < / div > < div class = "ttdeci" > int64_t Min() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01692" > constraint_solveri.h:1692< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_variable_html_aa74ea8cd1b0767659f704b482d07c103" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_variable.html#aa74ea8cd1b0767659f704b482d07c103" > operations_research::LocalSearchVariable::Max< / a > < / div > < div class = "ttdeci" > int64_t Max() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01693" > constraint_solveri.h:1693< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_local_search_variable_html_ae52e3ea7ba54fa164737b531605b3802" > < div class = "ttname" > < a href = "classoperations__research_1_1_local_search_variable.html#ae52e3ea7ba54fa164737b531605b3802" > operations_research::LocalSearchVariable::Relax< / a > < / div > < div class = "ttdeci" > void Relax()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01700" > constraint_solveri.h:1700< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html" > operations_research::ModelCache< / a > < / div > < div class = "ttdoc" > Implements a complete cache for model elements: expressions and constraints.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02088" > constraint_solveri.h:2088< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a00f5a81a82268287b31f1e79baba7f40" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a00f5a81a82268287b31f1e79baba7f40" > operations_research::ModelCache::FindVarArrayExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindVarArrayExpression(const std::vector< IntVar * > & vars, VarArrayExpressionType type) const =0< / div > < div class = "ttdoc" > Var Array Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a01c14d87a775f0ef2aba3df7e5aaa327" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a01c14d87a775f0ef2aba3df7e5aaa327" > operations_research::ModelCache::FindVarArrayConstantArrayExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindVarArrayConstantArrayExpression(const std::vector< IntVar * > & vars, const std::vector< int64_t > & values, VarArrayConstantArrayExpressionType type) const =0< / div > < div class = "ttdoc" > Var Array Constant Array Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a0398df73722b0a777674f8300b61e640" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640" > operations_research::ModelCache::VoidConstraintType< / a > < / div > < div class = "ttdeci" > VoidConstraintType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02090" > constraint_solveri.h:2090< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a0398df73722b0a777674f8300b61e640a11c6746b747caede5558051e9be71506" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640a11c6746b747caede5558051e9be71506" > operations_research::ModelCache::VOID_CONSTRAINT_MAX< / a > < / div > < div class = "ttdeci" > @ VOID_CONSTRAINT_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02093" > constraint_solveri.h:2093< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a0398df73722b0a777674f8300b61e640abb2b7e9646abdb972fafbe90bf19a5ec" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a0398df73722b0a777674f8300b61e640abb2b7e9646abdb972fafbe90bf19a5ec" > operations_research::ModelCache::VOID_TRUE_CONSTRAINT< / a > < / div > < div class = "ttdeci" > @ VOID_TRUE_CONSTRAINT< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02092" > constraint_solveri.h:2092< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a19776f5960140d46380ae9837cf9e6dc" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dc" > operations_research::ModelCache::ExprExpressionType< / a > < / div > < div class = "ttdeci" > ExprExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02119" > constraint_solveri.h:2119< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a19776f5960140d46380ae9837cf9e6dca37081d4ec3d290e733b8346bed09bd2f" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dca37081d4ec3d290e733b8346bed09bd2f" > operations_research::ModelCache::EXPR_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02123" > constraint_solveri.h:2123< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a19776f5960140d46380ae9837cf9e6dca938ad10f0b6ca42fa856e245042ac6df" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dca938ad10f0b6ca42fa856e245042ac6df" > operations_research::ModelCache::EXPR_ABS< / a > < / div > < div class = "ttdeci" > @ EXPR_ABS< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02121" > constraint_solveri.h:2121< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a19776f5960140d46380ae9837cf9e6dcaf0a641235b7399f2cda0137af80db8e0" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a19776f5960140d46380ae9837cf9e6dcaf0a641235b7399f2cda0137af80db8e0" > operations_research::ModelCache::EXPR_SQUARE< / a > < / div > < div class = "ttdeci" > @ EXPR_SQUARE< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02122" > constraint_solveri.h:2122< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1dff0028513c78c3b5366883840268fb" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1dff0028513c78c3b5366883840268fb" > operations_research::ModelCache::FindExprConstantExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindExprConstantExpression(IntExpr *const expr, int64_t value, ExprConstantExpressionType type) const =0< / div > < div class = "ttdoc" > Expr Constant Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082c" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082c" > operations_research::ModelCache::ExprConstantExpressionType< / a > < / div > < div class = "ttdeci" > ExprConstantExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02145" > constraint_solveri.h:2145< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca2624a11505d47fde01544da38ecbefce" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca2624a11505d47fde01544da38ecbefce" > operations_research::ModelCache::EXPR_CONSTANT_PROD< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_PROD< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02148" > constraint_solveri.h:2148< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca2f62b258d5a827bd63f993103ec0bef2" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca2f62b258d5a827bd63f993103ec0bef2" > operations_research::ModelCache::EXPR_CONSTANT_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02156" > constraint_solveri.h:2156< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca32fea4f03bc3f8c30beed8277ad16a5a" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca32fea4f03bc3f8c30beed8277ad16a5a" > operations_research::ModelCache::EXPR_CONSTANT_IS_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_IS_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02152" > constraint_solveri.h:2152< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca4c21878ef6b2e734c684a61d084b0d9e" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca4c21878ef6b2e734c684a61d084b0d9e" > operations_research::ModelCache::EXPR_CONSTANT_IS_GREATER_OR_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_IS_GREATER_OR_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02154" > constraint_solveri.h:2154< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca50c27197e27e7022f450aada9888a9d1" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca50c27197e27e7022f450aada9888a9d1" > operations_research::ModelCache::EXPR_CONSTANT_MAX< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02149" > constraint_solveri.h:2149< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca584d2f751a1fdf032c86f07bcf4e24fe" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca584d2f751a1fdf032c86f07bcf4e24fe" > operations_research::ModelCache::EXPR_CONSTANT_IS_NOT_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_IS_NOT_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02153" > constraint_solveri.h:2153< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca67ead3f8c6b5a40d1a2c3ef5fb63b906" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca67ead3f8c6b5a40d1a2c3ef5fb63b906" > operations_research::ModelCache::EXPR_CONSTANT_IS_LESS_OR_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_IS_LESS_OR_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02155" > constraint_solveri.h:2155< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082ca7e3958cb3825bdf7a05631d79debb738" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082ca7e3958cb3825bdf7a05631d79debb738" > operations_research::ModelCache::EXPR_CONSTANT_MIN< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_MIN< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02150" > constraint_solveri.h:2150< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082caa6a4fb0890d2f491ba7fa43bc1c9688b" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082caa6a4fb0890d2f491ba7fa43bc1c9688b" > operations_research::ModelCache::EXPR_CONSTANT_SUM< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_SUM< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02151" > constraint_solveri.h:2151< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a1fad820e7860f0b9f121927d4075082cae140fdbd76e5afbe2595bd13678ba960" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a1fad820e7860f0b9f121927d4075082cae140fdbd76e5afbe2595bd13678ba960" > operations_research::ModelCache::EXPR_CONSTANT_DIVIDE< / a > < / div > < div class = "ttdeci" > @ EXPR_CONSTANT_DIVIDE< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02147" > constraint_solveri.h:2147< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a27c24b745d9df6cbe39bf2cee6da940e" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a27c24b745d9df6cbe39bf2cee6da940e" > operations_research::ModelCache::InsertExprExprConstantExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertExprExprConstantExpression(IntExpr *const expression, IntExpr *const var1, IntExpr *const var2, int64_t constant, ExprExprConstantExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a2927789ebec43905a29b90c96ab5b562" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562" > operations_research::ModelCache::VarConstantConstraintType< / a > < / div > < div class = "ttdeci" > VarConstantConstraintType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02096" > constraint_solveri.h:2096< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a2927789ebec43905a29b90c96ab5b562a718e173e0eeb62d78a44b80843fcd211" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562a718e173e0eeb62d78a44b80843fcd211" > operations_research::ModelCache::VAR_CONSTANT_GREATER_OR_EQUAL< / a > < / div > < div class = "ttdeci" > @ VAR_CONSTANT_GREATER_OR_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02098" > constraint_solveri.h:2098< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a2927789ebec43905a29b90c96ab5b562a979b0779f36a80f62ac877520de47099" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562a979b0779f36a80f62ac877520de47099" > operations_research::ModelCache::VAR_CONSTANT_NON_EQUALITY< / a > < / div > < div class = "ttdeci" > @ VAR_CONSTANT_NON_EQUALITY< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02100" > constraint_solveri.h:2100< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a2927789ebec43905a29b90c96ab5b562aaa84708a3b17d21e2b5d8b7ad6e57ca8" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562aaa84708a3b17d21e2b5d8b7ad6e57ca8" > operations_research::ModelCache::VAR_CONSTANT_CONSTRAINT_MAX< / a > < / div > < div class = "ttdeci" > @ VAR_CONSTANT_CONSTRAINT_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02101" > constraint_solveri.h:2101< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a2927789ebec43905a29b90c96ab5b562ac853b00c21d70db5e1f18dadc77fa083" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a2927789ebec43905a29b90c96ab5b562ac853b00c21d70db5e1f18dadc77fa083" > operations_research::ModelCache::VAR_CONSTANT_LESS_OR_EQUAL< / a > < / div > < div class = "ttdeci" > @ VAR_CONSTANT_LESS_OR_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02099" > constraint_solveri.h:2099< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a459f96d54b9552f069ec2a94ba57a2f7" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a459f96d54b9552f069ec2a94ba57a2f7" > operations_research::ModelCache::FindExprExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindExprExpression(IntExpr *const expr, ExprExpressionType type) const =0< / div > < div class = "ttdoc" > Expr Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a4690cb8d12088e1ff5072444d4731ef8" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a4690cb8d12088e1ff5072444d4731ef8" > operations_research::ModelCache::FindVarConstantConstantExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindVarConstantConstantExpression(IntVar *const var, int64_t value1, int64_t value2, VarConstantConstantExpressionType type) const =0< / div > < div class = "ttdoc" > Var Constant Constant Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a532b0bec45373fd3f093e2212d51cd6f" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a532b0bec45373fd3f093e2212d51cd6f" > operations_research::ModelCache::InsertExprExprExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertExprExprExpression(IntExpr *const expression, IntExpr *const var1, IntExpr *const var2, ExprExprExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a542da5fee28c0183c3c90fc89f5c34f7" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a542da5fee28c0183c3c90fc89f5c34f7" > operations_research::ModelCache::InsertVarConstantArrayExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertVarConstantArrayExpression(IntExpr *const expression, IntVar *const var, const std::vector< int64_t > & values, VarConstantArrayExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a59c559422eae2739af255adb6c14cddb" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddb" > operations_research::ModelCache::VarArrayConstantArrayExpressionType< / a > < / div > < div class = "ttdeci" > VarArrayConstantArrayExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02168" > constraint_solveri.h:2168< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a59c559422eae2739af255adb6c14cddba8d7d34d71353796802c476ea764ec7c7" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a59c559422eae2739af255adb6c14cddba8d7d34d71353796802c476ea764ec7c7" > operations_research::ModelCache::VAR_ARRAY_CONSTANT_ARRAY_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ VAR_ARRAY_CONSTANT_ARRAY_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02170" > constraint_solveri.h:2170< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a5c7515c6c31a40392df8e3628d6f5973" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a5c7515c6c31a40392df8e3628d6f5973" > operations_research::ModelCache::FindExprExprConstantExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindExprExprConstantExpression(IntExpr *const var1, IntExpr *const var2, int64_t constant, ExprExprConstantExpressionType type) const =0< / div > < div class = "ttdoc" > Expr Expr Constant Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a5e0c2033f8d819c623e8324bfda2d24d" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24d" > operations_research::ModelCache::VarConstantConstantExpressionType< / a > < / div > < div class = "ttdeci" > VarConstantConstantExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02158" > constraint_solveri.h:2158< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a5e0c2033f8d819c623e8324bfda2d24dabef48216e9d32c891d017570c9e638bc" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a5e0c2033f8d819c623e8324bfda2d24dabef48216e9d32c891d017570c9e638bc" > operations_research::ModelCache::VAR_CONSTANT_CONSTANT_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ VAR_CONSTANT_CONSTANT_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02160" > constraint_solveri.h:2160< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a62cdf71c82db7a35316a145167e8864f" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864f" > operations_research::ModelCache::VarConstantConstantConstraintType< / a > < / div > < div class = "ttdeci" > VarConstantConstantConstraintType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02104" > constraint_solveri.h:2104< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a62cdf71c82db7a35316a145167e8864fa9f313cf455d543ccd36ee2c8bbbb6610" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a62cdf71c82db7a35316a145167e8864fa9f313cf455d543ccd36ee2c8bbbb6610" > operations_research::ModelCache::VAR_CONSTANT_CONSTANT_CONSTRAINT_MAX< / a > < / div > < div class = "ttdeci" > @ VAR_CONSTANT_CONSTANT_CONSTRAINT_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02106" > constraint_solveri.h:2106< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a78f9c320fcfdc3be91db4de41d891deb" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a78f9c320fcfdc3be91db4de41d891deb" > operations_research::ModelCache::InsertVoidConstraint< / a > < / div > < div class = "ttdeci" > virtual void InsertVoidConstraint(Constraint *const ct, VoidConstraintType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a7ac55432b322c146a2526fc19847214c" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a7ac55432b322c146a2526fc19847214c" > operations_research::ModelCache::FindVarConstantConstraint< / a > < / div > < div class = "ttdeci" > virtual Constraint * FindVarConstantConstraint(IntVar *const var, int64_t value, VarConstantConstraintType type) const =0< / div > < div class = "ttdoc" > Var Constant Constraints.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afe" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afe" > operations_research::ModelCache::ExprExprExpressionType< / a > < / div > < div class = "ttdeci" > ExprExprExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02126" > constraint_solveri.h:2126< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea03e855b4a1f2095482a88ac03388d5c3" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea03e855b4a1f2095482a88ac03388d5c3" > operations_research::ModelCache::EXPR_EXPR_IS_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_IS_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02135" > constraint_solveri.h:2135< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea2a6687577892c792edccf2585adfaa3a" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea2a6687577892c792edccf2585adfaa3a" > operations_research::ModelCache::EXPR_EXPR_SUM< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_SUM< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02132" > constraint_solveri.h:2132< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea373e953d3799bdcdc112f9b0887ac0df" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea373e953d3799bdcdc112f9b0887ac0df" > operations_research::ModelCache::EXPR_EXPR_MAX< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02130" > constraint_solveri.h:2130< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea3784ad09f2939fec4b5125c3e3a7ee0a" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea3784ad09f2939fec4b5125c3e3a7ee0a" > operations_research::ModelCache::EXPR_EXPR_PROD< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_PROD< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02128" > constraint_solveri.h:2128< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea4e88d525cd2a35b11b8a16175f6197ab" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea4e88d525cd2a35b11b8a16175f6197ab" > operations_research::ModelCache::EXPR_EXPR_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02137" > constraint_solveri.h:2137< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea73e135b9ac9d3286a0656ef84aa77ca6" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea73e135b9ac9d3286a0656ef84aa77ca6" > operations_research::ModelCache::EXPR_EXPR_IS_LESS< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_IS_LESS< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02133" > constraint_solveri.h:2133< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea7cdf2f8fb26d167603e160773a680805" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea7cdf2f8fb26d167603e160773a680805" > operations_research::ModelCache::EXPR_EXPR_DIV< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_DIV< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02129" > constraint_solveri.h:2129< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afea822c97af1334ca445a0fd46dfd16c40b" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afea822c97af1334ca445a0fd46dfd16c40b" > operations_research::ModelCache::EXPR_EXPR_IS_LESS_OR_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_IS_LESS_OR_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02134" > constraint_solveri.h:2134< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afeaa2b501c71087e59e0dea1906ffaabe63" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afeaa2b501c71087e59e0dea1906ffaabe63" > operations_research::ModelCache::EXPR_EXPR_IS_NOT_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_IS_NOT_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02136" > constraint_solveri.h:2136< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a822c2c0e59065b2fe0968370c8e26afeac6a4d05776624b8784e951aa964d00c5" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a822c2c0e59065b2fe0968370c8e26afeac6a4d05776624b8784e951aa964d00c5" > operations_research::ModelCache::EXPR_EXPR_MIN< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_MIN< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02131" > constraint_solveri.h:2131< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a89d5f8fc282ff8c48a02102a8a5e4bbb" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbb" > operations_research::ModelCache::ExprExprConstraintType< / a > < / div > < div class = "ttdeci" > ExprExprConstraintType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02109" > constraint_solveri.h:2109< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a89d5f8fc282ff8c48a02102a8a5e4bbba00529f006ffc58e55baff50d140fe076" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba00529f006ffc58e55baff50d140fe076" > operations_research::ModelCache::EXPR_EXPR_GREATER< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_GREATER< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02111" > constraint_solveri.h:2111< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a89d5f8fc282ff8c48a02102a8a5e4bbba11b9278b1a71f063cc20e8bb79846b68" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba11b9278b1a71f063cc20e8bb79846b68" > operations_research::ModelCache::EXPR_EXPR_LESS< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_LESS< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02113" > constraint_solveri.h:2113< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a89d5f8fc282ff8c48a02102a8a5e4bbba73108bc15aaa22c430bba712b73ce920" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba73108bc15aaa22c430bba712b73ce920" > operations_research::ModelCache::EXPR_EXPR_NON_EQUALITY< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_NON_EQUALITY< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02115" > constraint_solveri.h:2115< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a89d5f8fc282ff8c48a02102a8a5e4bbba7719059f68742eeec43445553767ad62" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba7719059f68742eeec43445553767ad62" > operations_research::ModelCache::EXPR_EXPR_GREATER_OR_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_GREATER_OR_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02112" > constraint_solveri.h:2112< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a89d5f8fc282ff8c48a02102a8a5e4bbba8af11a728083c50e0be546619201563b" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbba8af11a728083c50e0be546619201563b" > operations_research::ModelCache::EXPR_EXPR_CONSTRAINT_MAX< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_CONSTRAINT_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02116" > constraint_solveri.h:2116< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a89d5f8fc282ff8c48a02102a8a5e4bbbaa7718fa06e32e05554d8e0a760e9172b" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a89d5f8fc282ff8c48a02102a8a5e4bbbaa7718fa06e32e05554d8e0a760e9172b" > operations_research::ModelCache::EXPR_EXPR_LESS_OR_EQUAL< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_LESS_OR_EQUAL< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02114" > constraint_solveri.h:2114< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_a8bf2a7f861f717c6c6276601d6edc84d" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#a8bf2a7f861f717c6c6276601d6edc84d" > operations_research::ModelCache::InsertVarArrayExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertVarArrayExpression(IntExpr *const expression, const std::vector< IntVar * > & vars, VarArrayExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_aa0dbbbfb2ee092c737b17711afa1fe39" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#aa0dbbbfb2ee092c737b17711afa1fe39" > operations_research::ModelCache::FindVoidConstraint< / a > < / div > < div class = "ttdeci" > virtual Constraint * FindVoidConstraint(VoidConstraintType type) const =0< / div > < div class = "ttdoc" > Void constraints.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_aa3a08b9166c1042ad3308823e385ecc3" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#aa3a08b9166c1042ad3308823e385ecc3" > operations_research::ModelCache::FindVarConstantArrayExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindVarConstantArrayExpression(IntVar *const var, const std::vector< int64_t > & values, VarConstantArrayExpressionType type) const =0< / div > < div class = "ttdoc" > Var Constant Array Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_aa5b31c976cc6734003d9950e731dfed3" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#aa5b31c976cc6734003d9950e731dfed3" > operations_research::ModelCache::Clear< / a > < / div > < div class = "ttdeci" > virtual void Clear()=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_aac046a1be1d3ab24e9ff08b9a74bf9c0" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#aac046a1be1d3ab24e9ff08b9a74bf9c0" > operations_research::ModelCache::InsertVarArrayConstantExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertVarArrayConstantExpression(IntExpr *const expression, const std::vector< IntVar * > & var, int64_t value, VarArrayConstantExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ab10f10ec98142e6fa7b0da4046473e44" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44" > operations_research::ModelCache::ExprExprConstantExpressionType< / a > < / div > < div class = "ttdeci" > ExprExprConstantExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02140" > constraint_solveri.h:2140< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ab10f10ec98142e6fa7b0da4046473e44aa77defdbb56236e669f88a18c563aede" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ab10f10ec98142e6fa7b0da4046473e44aa77defdbb56236e669f88a18c563aede" > operations_research::ModelCache::EXPR_EXPR_CONSTANT_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ EXPR_EXPR_CONSTANT_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02142" > constraint_solveri.h:2142< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ab20ce6f268765de9c767948b6a81bfdb" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ab20ce6f268765de9c767948b6a81bfdb" > operations_research::ModelCache::InsertVarConstantConstraint< / a > < / div > < div class = "ttdeci" > virtual void InsertVarConstantConstraint(Constraint *const ct, IntVar *const var, int64_t value, VarConstantConstraintType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ac0ce0f2a0be24edf0baaa41c7e6cbcec" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ac0ce0f2a0be24edf0baaa41c7e6cbcec" > operations_research::ModelCache::FindVarArrayConstantExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindVarArrayConstantExpression(const std::vector< IntVar * > & vars, int64_t value, VarArrayConstantExpressionType type) const =0< / div > < div class = "ttdoc" > Var Array Constant Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_acc6275c15f9a3e9fda8dbf1238f185c9" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#acc6275c15f9a3e9fda8dbf1238f185c9" > operations_research::ModelCache::FindVarConstantConstantConstraint< / a > < / div > < div class = "ttdeci" > virtual Constraint * FindVarConstantConstantConstraint(IntVar *const var, int64_t value1, int64_t value2, VarConstantConstantConstraintType type) const =0< / div > < div class = "ttdoc" > Var Constant Constant Constraints.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_accb0b4e01f39be7d7d482c4a3797476c" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476c" > operations_research::ModelCache::VarArrayConstantExpressionType< / a > < / div > < div class = "ttdeci" > VarArrayConstantExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02180" > constraint_solveri.h:2180< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_accb0b4e01f39be7d7d482c4a3797476ca3ddf574d0de0e5df225a62bc50f2c89f" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#accb0b4e01f39be7d7d482c4a3797476ca3ddf574d0de0e5df225a62bc50f2c89f" > operations_research::ModelCache::VAR_ARRAY_CONSTANT_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ VAR_ARRAY_CONSTANT_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02182" > constraint_solveri.h:2182< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_acd23094bd0807a2bb20162c9ddd96df3" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#acd23094bd0807a2bb20162c9ddd96df3" > operations_research::ModelCache::InsertVarArrayConstantArrayExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertVarArrayConstantArrayExpression(IntExpr *const expression, const std::vector< IntVar * > & var, const std::vector< int64_t > & values, VarArrayConstantArrayExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ad747141d2d707390ff0120482628ef5d" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ad747141d2d707390ff0120482628ef5d" > operations_research::ModelCache::InsertExprConstantExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertExprConstantExpression(IntExpr *const expression, IntExpr *const var, int64_t value, ExprConstantExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ad923ebf6ee257bfa55c4fc34b7b5503b" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503b" > operations_research::ModelCache::VarArrayExpressionType< / a > < / div > < div class = "ttdeci" > VarArrayExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02173" > constraint_solveri.h:2173< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ad923ebf6ee257bfa55c4fc34b7b5503ba072f2b932666e9bb3957e50c6ca29130" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503ba072f2b932666e9bb3957e50c6ca29130" > operations_research::ModelCache::VAR_ARRAY_SUM< / a > < / div > < div class = "ttdeci" > @ VAR_ARRAY_SUM< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02176" > constraint_solveri.h:2176< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ad923ebf6ee257bfa55c4fc34b7b5503ba1ed5c1716b347c08d66af5527123f54e" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503ba1ed5c1716b347c08d66af5527123f54e" > operations_research::ModelCache::VAR_ARRAY_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ VAR_ARRAY_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02177" > constraint_solveri.h:2177< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ad923ebf6ee257bfa55c4fc34b7b5503bab312b39538d98fba96259aad40621005" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ad923ebf6ee257bfa55c4fc34b7b5503bab312b39538d98fba96259aad40621005" > operations_research::ModelCache::VAR_ARRAY_MIN< / a > < / div > < div class = "ttdeci" > @ VAR_ARRAY_MIN< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02175" > constraint_solveri.h:2175< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_ada843938cf8a6c4cd6e8fd5422b14407" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#ada843938cf8a6c4cd6e8fd5422b14407" > operations_research::ModelCache::FindExprExprExpression< / a > < / div > < div class = "ttdeci" > virtual IntExpr * FindExprExprExpression(IntExpr *const var1, IntExpr *const var2, ExprExprExpressionType type) const =0< / div > < div class = "ttdoc" > Expr Expr Expressions.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_adaf171eb8640c2bbcb290b4ec6fff3c4" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#adaf171eb8640c2bbcb290b4ec6fff3c4" > operations_research::ModelCache::InsertVarConstantConstantExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertVarConstantConstantExpression(IntExpr *const expression, IntVar *const var, int64_t value1, int64_t value2, VarConstantConstantExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_addef6c5b905f14668a4a19a3b6cf1ecc" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1ecc" > operations_research::ModelCache::VarConstantArrayExpressionType< / a > < / div > < div class = "ttdeci" > VarConstantArrayExpressionType< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02163" > constraint_solveri.h:2163< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_addef6c5b905f14668a4a19a3b6cf1eccadab845ec7630675dc953378647cf35c4" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#addef6c5b905f14668a4a19a3b6cf1eccadab845ec7630675dc953378647cf35c4" > operations_research::ModelCache::VAR_CONSTANT_ARRAY_EXPRESSION_MAX< / a > < / div > < div class = "ttdeci" > @ VAR_CONSTANT_ARRAY_EXPRESSION_MAX< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02165" > constraint_solveri.h:2165< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_aeeb50bfeff8b6ae139c76a4ec83a6ae7" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#aeeb50bfeff8b6ae139c76a4ec83a6ae7" > operations_research::ModelCache::InsertVarConstantConstantConstraint< / a > < / div > < div class = "ttdeci" > virtual void InsertVarConstantConstantConstraint(Constraint *const ct, IntVar *const var, int64_t value1, int64_t value2, VarConstantConstantConstraintType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_aefb96e82103aca70d898b19fb5556048" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#aefb96e82103aca70d898b19fb5556048" > operations_research::ModelCache::FindExprExprConstraint< / a > < / div > < div class = "ttdeci" > virtual Constraint * FindExprExprConstraint(IntExpr *const expr1, IntExpr *const expr2, ExprExprConstraintType type) const =0< / div > < div class = "ttdoc" > Expr Expr Constraints.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_afc8017fcd99c86bb7ae2015a208ff800" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#afc8017fcd99c86bb7ae2015a208ff800" > operations_research::ModelCache::InsertExprExpression< / a > < / div > < div class = "ttdeci" > virtual void InsertExprExpression(IntExpr *const expression, IntExpr *const expr, ExprExpressionType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_cache_html_afebe362561fbf18889fd8a1b29be1032" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_cache.html#afebe362561fbf18889fd8a1b29be1032" > operations_research::ModelCache::InsertExprExprConstraint< / a > < / div > < div class = "ttdeci" > virtual void InsertExprExprConstraint(Constraint *const ct, IntExpr *const expr1, IntExpr *const expr2, ExprExprConstraintType type)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_parser_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_parser.html" > operations_research::ModelParser< / a > < / div > < div class = "ttdoc" > Model Parser.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02385" > constraint_solveri.h:2385< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_model_visitor_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_model_visitor.html" > operations_research::ModelVisitor< / a > < / div > < div class = "ttdoc" > Model visitor.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03375" > constraint_solver.h:3375< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_numerical_rev_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_numerical_rev.html" > operations_research::NumericalRev< int > < / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_numerical_rev_html_a83c8a2812799fd87becd114374fb1d36" > < div class = "ttname" > < a href = "classoperations__research_1_1_numerical_rev.html#a83c8a2812799fd87becd114374fb1d36" > operations_research::NumericalRev::Decr< / a > < / div > < div class = "ttdeci" > void Decr(Solver *const s)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03810" > constraint_solver.h:3810< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_numerical_rev_html_ac8beef1ef5cd6ce8bdfb3f48016ff72b" > < div class = "ttname" > < a href = "classoperations__research_1_1_numerical_rev.html#ac8beef1ef5cd6ce8bdfb3f48016ff72b" > operations_research::NumericalRev::Incr< / a > < / div > < div class = "ttdeci" > void Incr(Solver *const s)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03808" > constraint_solver.h:3808< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_optimize_var_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_optimize_var.html" > operations_research::OptimizeVar< / a > < / div > < div class = "ttdoc" > This class encapsulates an objective.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04247" > constraint_solver.h:4247< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html" > operations_research::PathOperator< / a > < / div > < div class = "ttdoc" > Base class of the local search operators dedicated to path modifications (a path is a set of nodes li...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01313" > constraint_solveri.h:1313< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a027b0d17fd972bee95a8023e7d4f81c9" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a027b0d17fd972bee95a8023e7d4f81c9" > operations_research::PathOperator::StartNode< / a > < / div > < div class = "ttdeci" > int64_t StartNode(int i) const< / div > < div class = "ttdoc" > Returns the start node of the ith base node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01412" > constraint_solveri.h:1412< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a03283bdc4a6447ff4882cb1e42662b00" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a03283bdc4a6447ff4882cb1e42662b00" > operations_research::PathOperator::IsInactive< / a > < / div > < div class = "ttdeci" > bool IsInactive(int64_t node) const< / div > < div class = "ttdoc" > Returns true if node is inactive.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01504" > constraint_solveri.h:1504< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a066baaebb360523ba186215d7ec90365" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a066baaebb360523ba186215d7ec90365" > operations_research::PathOperator::OldPrev< / a > < / div > < div class = "ttdeci" > int64_t OldPrev(int64_t node) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01459" > constraint_solveri.h:1459< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a0d3deb689556a77ed6f99860918d7f21" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a0d3deb689556a77ed6f99860918d7f21" > operations_research::PathOperator::ConsiderAlternatives< / a > < / div > < div class = "ttdeci" > virtual bool ConsiderAlternatives(int64_t base_index) const< / div > < div class = "ttdoc" > Indicates if alternatives should be considered when iterating over base nodes.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01452" > constraint_solveri.h:1452< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a10ae14d6daad9088377260420952f814" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a10ae14d6daad9088377260420952f814" > operations_research::PathOperator::MakeNeighbor< / a > < / div > < div class = "ttdeci" > virtual bool MakeNeighbor()=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a11b8ad366b686132736854e7029e7bff" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a11b8ad366b686132736854e7029e7bff" > operations_research::PathOperator::PathClass< / a > < / div > < div class = "ttdeci" > int PathClass(int i) const< / div > < div class = "ttdoc" > Returns the class of the path of the ith base node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01416" > constraint_solveri.h:1416< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a1223e0b8dbca7cd9c296fc4de65080b2" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a1223e0b8dbca7cd9c296fc4de65080b2" > operations_research::PathOperator::OnNodeInitialization< / a > < / div > < div class = "ttdeci" > virtual void OnNodeInitialization()< / div > < div class = "ttdoc" > Called by OnStart() after initializing node information.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01383" > constraint_solveri.h:1383< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a126d8d622ba60f333308fd98bcf8ed2b" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a126d8d622ba60f333308fd98bcf8ed2b" > operations_research::PathOperator::OnSamePathAsPreviousBase< / a > < / div > < div class = "ttdeci" > virtual bool OnSamePathAsPreviousBase(int64_t base_index)< / div > < div class = "ttdoc" > Returns true if a base node has to be on the same path as the " previous" base node (base node of inde...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01436" > constraint_solveri.h:1436< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a15b6b1076d1c5441a135aaf2f458c9e6" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a15b6b1076d1c5441a135aaf2f458c9e6" > operations_research::PathOperator::OldPath< / a > < / div > < div class = "ttdeci" > int64_t OldPath(int64_t node) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01464" > constraint_solveri.h:1464< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a17bdf687f4bf47cb68ea163f28876608" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a17bdf687f4bf47cb68ea163f28876608" > operations_research::PathOperator::IsPathStart< / a > < / div > < div class = "ttdeci" > bool IsPathStart(int64_t node) const< / div > < div class = "ttdoc" > Returns true if node is the first node on the path.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01501" > constraint_solveri.h:1501< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a17be752616a53fcfe8d4b04babfe1632" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a17be752616a53fcfe8d4b04babfe1632" > operations_research::PathOperator::GetActiveAlternativeNode< / a > < / div > < div class = "ttdeci" > int64_t GetActiveAlternativeNode(int node) const< / div > < div class = "ttdoc" > Returns the active node in the alternative set of the given node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01549" > constraint_solveri.h:1549< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a208d45797eebd7cad439cc43b049103d" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a208d45797eebd7cad439cc43b049103d" > operations_research::PathOperator::number_of_nexts< / a > < / div > < div class = "ttdeci" > int number_of_nexts() const< / div > < div class = "ttdoc" > Number of next variables.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01375" > constraint_solveri.h:1375< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a23099e8dbce0e76642d5a904c5f910ce" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a23099e8dbce0e76642d5a904c5f910ce" > operations_research::PathOperator::AddAlternativeSet< / a > < / div > < div class = "ttdeci" > int AddAlternativeSet(const std::vector< int64_t > & alternative_set)< / div > < div class = "ttdoc" > Handling node alternatives.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01519" > constraint_solveri.h:1519< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a3493d43792939bc2a16ec5b53361095d" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a3493d43792939bc2a16ec5b53361095d" > operations_research::PathOperator::path_starts< / a > < / div > < div class = "ttdeci" > const std::vector< int64_t > & path_starts() const< / div > < div class = "ttdoc" > Returns the vector of path start nodes.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01414" > constraint_solveri.h:1414< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a38b76e1e3a147226d4981b05e4ec2c55" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a38b76e1e3a147226d4981b05e4ec2c55" > operations_research::PathOperator::RestartAtPathStartOnSynchronize< / a > < / div > < div class = "ttdeci" > virtual bool RestartAtPathStartOnSynchronize()< / div > < div class = "ttdoc" > When the operator is being synchronized with a new solution (when Start() is called),...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01429" > constraint_solveri.h:1429< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a4f36c21ecd69ac0eda49cd44375e88b4" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a4f36c21ecd69ac0eda49cd44375e88b4" > operations_research::PathOperator::IsPathEnd< / a > < / div > < div class = "ttdeci" > bool IsPathEnd(int64_t node) const< / div > < div class = "ttdoc" > Returns true if node is the last node on the path; defined by the fact that node is outside the range...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01498" > constraint_solveri.h:1498< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a5bc40a93b9ba709cfb3ca78cea7435e1" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a5bc40a93b9ba709cfb3ca78cea7435e1" > operations_research::PathOperator::BaseSiblingAlternative< / a > < / div > < div class = "ttdeci" > int BaseSiblingAlternative(int i) const< / div > < div class = "ttdoc" > Returns the alternative for the sibling of the ith base node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01398" > constraint_solveri.h:1398< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a5f9e1016a5bb6a7d5cded8599a50fce1" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a5f9e1016a5bb6a7d5cded8599a50fce1" > operations_research::PathOperator::Next< / a > < / div > < div class = "ttdeci" > int64_t Next(int64_t node) const< / div > < div class = "ttdoc" > Returns the node after node in the current delta.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01356" > constraint_solveri.h:1356< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a625a8523af421e43b7ac500b934e7dbd" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a625a8523af421e43b7ac500b934e7dbd" > operations_research::PathOperator::MoveChain< / a > < / div > < div class = "ttdeci" > bool MoveChain(int64_t before_chain, int64_t chain_end, int64_t destination)< / div > < div class = "ttdoc" > Moves the chain starting after the node before_chain and ending at the node chain_end after the node ...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00412" > local_search.cc:412< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a683f9daa3c8c8d6695ed277a470942f5" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a683f9daa3c8c8d6695ed277a470942f5" > operations_research::PathOperator::MakeActive< / a > < / div > < div class = "ttdeci" > bool MakeActive(int64_t node, int64_t destination)< / div > < div class = "ttdoc" > Insert the inactive node after destination.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00458" > local_search.cc:458< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a71db241bc64be612a4080eb897d97d1b" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a71db241bc64be612a4080eb897d97d1b" > operations_research::PathOperator::~PathOperator< / a > < / div > < div class = "ttdeci" > ~PathOperator() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01348" > constraint_solveri.h:1348< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a752100eca408efb4a9392f16f21f9cf7" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a752100eca408efb4a9392f16f21f9cf7" > operations_research::PathOperator::BaseAlternative< / a > < / div > < div class = "ttdeci" > int BaseAlternative(int i) const< / div > < div class = "ttdoc" > Returns the alternative for the ith base node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01388" > constraint_solveri.h:1388< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a753f1802e83fb21039b87a64a1769983" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a753f1802e83fb21039b87a64a1769983" > operations_research::PathOperator::ReverseChain< / a > < / div > < div class = "ttdeci" > bool ReverseChain(int64_t before_chain, int64_t after_chain, int64_t *chain_last)< / div > < div class = "ttdoc" > Reverses the chain starting after before_chain and ending before after_chain.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00435" > local_search.cc:435< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a932ef778eaff30030509ce65ce40ca38" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a932ef778eaff30030509ce65ce40ca38" > operations_research::PathOperator::start_to_path_< / a > < / div > < div class = "ttdeci" > std::vector< int64_t > start_to_path_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01576" > constraint_solveri.h:1576< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a968f3a82c5dbaba4f0725200b00ee97f" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a968f3a82c5dbaba4f0725200b00ee97f" > operations_research::PathOperator::SetNext< / a > < / div > < div class = "ttdeci" > void SetNext(int64_t from, int64_t to, int64_t path)< / div > < div class = "ttdoc" > Sets 'to' to be the node after 'from' on the given path.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01486" > constraint_solveri.h:1486< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a97cd8657e86644c1fb1b3b9f12ddc596" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a97cd8657e86644c1fb1b3b9f12ddc596" > operations_research::PathOperator::AddPairAlternativeSets< / a > < / div > < div class = "ttdeci" > void AddPairAlternativeSets(const std::vector< std::pair< std::vector< int64_t > , std::vector< int64_t > > > & pair_alternative_sets)< / div > < div class = "ttdoc" > Adds all sets of node alternatives of a vector of alternative pairs.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01532" > constraint_solveri.h:1532< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_a9f9007781da398bc03b61ab99864295c" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#a9f9007781da398bc03b61ab99864295c" > operations_research::PathOperator::BaseSiblingAlternativeNode< / a > < / div > < div class = "ttdeci" > int64_t BaseSiblingAlternativeNode(int i) const< / div > < div class = "ttdoc" > Returns the alternative node for the sibling of the ith base node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01402" > constraint_solveri.h:1402< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aa14dad2d86c18296f9a5227b87d5caad" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aa14dad2d86c18296f9a5227b87d5caad" > operations_research::PathOperator::Prev< / a > < / div > < div class = "ttdeci" > int64_t Prev(int64_t node) const< / div > < div class = "ttdoc" > Returns the node before node in the current delta.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01362" > constraint_solveri.h:1362< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aa2ea96360ac4370b31fc72090b55e7cc" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aa2ea96360ac4370b31fc72090b55e7cc" > operations_research::PathOperator::GetActiveAlternativeSibling< / a > < / div > < div class = "ttdeci" > int64_t GetActiveAlternativeSibling(int node) const< / div > < div class = "ttdoc" > Returns the active node in the alternative set of the sibling of the given node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01560" > constraint_solveri.h:1560< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aa5e00890b9ba3ed95dfba829e51f6be4" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aa5e00890b9ba3ed95dfba829e51f6be4" > operations_research::PathOperator::OldNext< / a > < / div > < div class = "ttdeci" > int64_t OldNext(int64_t node) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01454" > constraint_solveri.h:1454< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aa8d4a4b8ea73184cedcc0be51f6a3921" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aa8d4a4b8ea73184cedcc0be51f6a3921" > operations_research::PathOperator::SkipUnchanged< / a > < / div > < div class = "ttdeci" > bool SkipUnchanged(int index) const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00400" > local_search.cc:400< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aad7695e494039d607c26afb6acd0644a" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aad7695e494039d607c26afb6acd0644a" > operations_research::PathOperator::number_of_nexts_< / a > < / div > < div class = "ttdeci" > const int number_of_nexts_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01572" > constraint_solveri.h:1572< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ab5ccf1d0572985fd266702a181b9cf8d" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ab5ccf1d0572985fd266702a181b9cf8d" > operations_research::PathOperator::SwapActiveAndInactive< / a > < / div > < div class = "ttdeci" > bool SwapActiveAndInactive(int64_t active, int64_t inactive)< / div > < div class = "ttdoc" > Replaces active by inactive in the current path, making active inactive.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00485" > local_search.cc:485< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ab661b8d8259dac8444804d91809fbb0a" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ab661b8d8259dac8444804d91809fbb0a" > operations_research::PathOperator::ResetPosition< / a > < / div > < div class = "ttdeci" > void ResetPosition()< / div > < div class = "ttdoc" > Reset the position of the operator to its position when Start() was last called; this can be used to ...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01514" > constraint_solveri.h:1514< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ab720cd311ecdce747e444192edd3ea78" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ab720cd311ecdce747e444192edd3ea78" > operations_research::PathOperator::GetBaseNodeRestartPosition< / a > < / div > < div class = "ttdeci" > virtual int64_t GetBaseNodeRestartPosition(int base_index)< / div > < div class = "ttdoc" > Returns the index of the node to which the base node of index base_index must be set to when it reach...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01442" > constraint_solveri.h:1442< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ab8846cc7a17291cb0dffd4c0fc4933ea" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ab8846cc7a17291cb0dffd4c0fc4933ea" > operations_research::PathOperator::BaseNode< / a > < / div > < div class = "ttdeci" > int64_t BaseNode(int i) const< / div > < div class = "ttdoc" > Returns the ith base node of the operator.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01386" > constraint_solveri.h:1386< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ab940d0f5833faec22565abde5acf43a5" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ab940d0f5833faec22565abde5acf43a5" > operations_research::PathOperator::PathOperator< / a > < / div > < div class = "ttdeci" > PathOperator(const std::vector< IntVar * > & next_vars, const std::vector< IntVar * > & path_vars, int number_of_base_nodes, bool skip_locally_optimal_paths, bool accept_path_end_base, std::function< int(int64_t)> start_empty_path_class)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01340" > constraint_solveri.h:1340< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ac4e410910ad9361ed46221ecc6f0aa9b" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ac4e410910ad9361ed46221ecc6f0aa9b" > operations_research::PathOperator::next_base_to_increment_< / a > < / div > < div class = "ttdeci" > int next_base_to_increment_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01574" > constraint_solveri.h:1574< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ac94bcebc6d1699e2292cf5fb56970a80" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ac94bcebc6d1699e2292cf5fb56970a80" > operations_research::PathOperator::BaseAlternativeNode< / a > < / div > < div class = "ttdeci" > int64_t BaseAlternativeNode(int i) const< / div > < div class = "ttdoc" > Returns the alternative node for the ith base node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01390" > constraint_solveri.h:1390< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ac9d41c75de01039a11af9b5d3cecc37f" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ac9d41c75de01039a11af9b5d3cecc37f" > operations_research::PathOperator::GetSiblingAlternativeIndex< / a > < / div > < div class = "ttdeci" > int GetSiblingAlternativeIndex(int node) const< / div > < div class = "ttdoc" > Returns the index of the alternative set of the sibling of node.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01553" > constraint_solveri.h:1553< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ad14cde260686e5b4174e691675df3139" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ad14cde260686e5b4174e691675df3139" > operations_research::PathOperator::MakeOneNeighbor< / a > < / div > < div class = "ttdeci" > bool MakeOneNeighbor() override< / div > < div class = "ttdoc" > This method should not be overridden. Override MakeNeighbor() instead.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00388" > local_search.cc:388< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_adf2175ee598b241dcc5459573ebdc886" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#adf2175ee598b241dcc5459573ebdc886" > operations_research::PathOperator::Path< / a > < / div > < div class = "ttdeci" > int64_t Path(int64_t node) const< / div > < div class = "ttdoc" > Returns the index of the path to which node belongs in the current delta.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01370" > constraint_solveri.h:1370< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ae1c162cfc11069e25becbd53cdce7def" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ae1c162cfc11069e25becbd53cdce7def" > operations_research::PathOperator::InitPosition< / a > < / div > < div class = "ttdeci" > virtual bool InitPosition() const< / div > < div class = "ttdoc" > Returns true if the operator needs to restart its initial position at each call to Start()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01510" > constraint_solveri.h:1510< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_ae56132578e8bc7a7eca4af4fd24fa966" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#ae56132578e8bc7a7eca4af4fd24fa966" > operations_research::PathOperator::ignore_path_vars_< / a > < / div > < div class = "ttdeci" > const bool ignore_path_vars_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01573" > constraint_solveri.h:1573< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aea9787c24ee8fe0e3fa88451ddadeb54" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aea9787c24ee8fe0e3fa88451ddadeb54" > operations_research::PathOperator::PathOperator< / a > < / div > < div class = "ttdeci" > PathOperator(const std::vector< IntVar * > & next_vars, const std::vector< IntVar * > & path_vars, IterationParameters iteration_parameters)< / div > < div class = "ttdoc" > Builds an instance of PathOperator from next and path variables.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00345" > local_search.cc:345< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aec4cb9ff1023933f7c5570a65a7208e7" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aec4cb9ff1023933f7c5570a65a7208e7" > operations_research::PathOperator::SetNextBaseToIncrement< / a > < / div > < div class = "ttdeci" > virtual void SetNextBaseToIncrement(int64_t base_index)< / div > < div class = "ttdoc" > Set the next base to increment on next iteration.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01447" > constraint_solveri.h:1447< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_af82f4acaed7bb39d568e689a9caa63d5" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#af82f4acaed7bb39d568e689a9caa63d5" > operations_research::PathOperator::Reset< / a > < / div > < div class = "ttdeci" > void Reset() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00379" > local_search.cc:379< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_operator_html_aff25e92fae946063c5a4a786e58e37a2" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_operator.html#aff25e92fae946063c5a4a786e58e37a2" > operations_research::PathOperator::MakeChainInactive< / a > < / div > < div class = "ttdeci" > bool MakeChainInactive(int64_t before_chain, int64_t chain_end)< / div > < div class = "ttdoc" > Makes the nodes on the chain starting after before_chain and ending at chain_end inactive.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l00468" > local_search.cc:468< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_1_1_iterator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html" > operations_research::PathState::Chain::Iterator< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03245" > constraint_solveri.h:3245< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_1_1_iterator_html_a95e4d634c5081ed23423184460d36034" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > operations_research::PathState::Chain::Iterator::operator!=< / a > < / div > < div class = "ttdeci" > bool operator!=(Iterator other) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03252" > constraint_solveri.h:3252< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_1_1_iterator_html_ab4661162459f2cb4e9887fcbc2d38b55" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#ab4661162459f2cb4e9887fcbc2d38b55" > operations_research::PathState::Chain::Iterator::operator*< / a > < / div > < div class = "ttdeci" > int operator*() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03251" > constraint_solveri.h:3251< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_1_1_iterator_html_ae1f21c74128a5ef5d1b9de72ceb09be8" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > operations_research::PathState::Chain::Iterator::operator++< / a > < / div > < div class = "ttdeci" > Iterator & operator++()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03247" > constraint_solveri.h:3247< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain.html" > operations_research::PathState::Chain< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03243" > constraint_solveri.h:3243< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_html_a09dd208593b9721a30a83ed978ede577" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain.html#a09dd208593b9721a30a83ed978ede577" > operations_research::PathState::Chain::begin< / a > < / div > < div class = "ttdeci" > Iterator begin() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03271" > constraint_solveri.h:3271< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_html_a62469461ed7c932afba3808f4da0fe3d" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain.html#a62469461ed7c932afba3808f4da0fe3d" > operations_research::PathState::Chain::end< / a > < / div > < div class = "ttdeci" > Iterator end() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03272" > constraint_solveri.h:3272< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_html_a9606765f46cefe3675b88fb6d30ae74c" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain.html#a9606765f46cefe3675b88fb6d30ae74c" > operations_research::PathState::Chain::First< / a > < / div > < div class = "ttdeci" > int First() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03269" > constraint_solveri.h:3269< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_html_a9854ccf641edeba5925409e68ce44421" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain.html#a9854ccf641edeba5925409e68ce44421" > operations_research::PathState::Chain::Chain< / a > < / div > < div class = "ttdeci" > Chain(const CommittedNode *begin_node, const CommittedNode *end_node)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03265" > constraint_solveri.h:3265< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_html_ad8d07b9af4954b2b23deefb7b8622cde" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain.html#ad8d07b9af4954b2b23deefb7b8622cde" > operations_research::PathState::Chain::Last< / a > < / div > < div class = "ttdeci" > int Last() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03270" > constraint_solveri.h:3270< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_html_af7b62ca470d8de1c1dde577b04671fa7" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain.html#af7b62ca470d8de1c1dde577b04671fa7" > operations_research::PathState::Chain::NumNodes< / a > < / div > < div class = "ttdeci" > int NumNodes() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03268" > constraint_solveri.h:3268< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html" > operations_research::PathState::ChainRange::Iterator< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03282" > constraint_solveri.h:3282< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator_html_a95e4d634c5081ed23423184460d36034" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > operations_research::PathState::ChainRange::Iterator::operator!=< / a > < / div > < div class = "ttdeci" > bool operator!=(Iterator other) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03292" > constraint_solveri.h:3292< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator_html_aa9851e9b7ba71849f8f83c786346b379" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#aa9851e9b7ba71849f8f83c786346b379" > operations_research::PathState::ChainRange::Iterator::operator*< / a > < / div > < div class = "ttdeci" > Chain operator*() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03288" > constraint_solveri.h:3288< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator_html_ae1f21c74128a5ef5d1b9de72ceb09be8" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > operations_research::PathState::ChainRange::Iterator::operator++< / a > < / div > < div class = "ttdeci" > Iterator & operator++()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03284" > constraint_solveri.h:3284< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range.html" > operations_research::PathState::ChainRange< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03280" > constraint_solveri.h:3280< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_html_a09dd208593b9721a30a83ed978ede577" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a09dd208593b9721a30a83ed978ede577" > operations_research::PathState::ChainRange::begin< / a > < / div > < div class = "ttdeci" > Iterator begin() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03312" > constraint_solveri.h:3312< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_html_a62469461ed7c932afba3808f4da0fe3d" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a62469461ed7c932afba3808f4da0fe3d" > operations_research::PathState::ChainRange::end< / a > < / div > < div class = "ttdeci" > Iterator end() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03313" > constraint_solveri.h:3313< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_chain_range_html_a873f14393cdb7e4c35876ed95605ebcb" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_chain_range.html#a873f14393cdb7e4c35876ed95605ebcb" > operations_research::PathState::ChainRange::ChainRange< / a > < / div > < div class = "ttdeci" > ChainRange(const ChainBounds *const begin_chain, const ChainBounds *const end_chain, const CommittedNode *const first_node)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03307" > constraint_solveri.h:3307< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_1_1_iterator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html" > operations_research::PathState::NodeRange::Iterator< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03325" > constraint_solveri.h:3325< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_1_1_iterator_html_a95e4d634c5081ed23423184460d36034" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#a95e4d634c5081ed23423184460d36034" > operations_research::PathState::NodeRange::Iterator::operator!=< / a > < / div > < div class = "ttdeci" > bool operator!=(Iterator other) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03340" > constraint_solveri.h:3340< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_1_1_iterator_html_ab4661162459f2cb4e9887fcbc2d38b55" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#ab4661162459f2cb4e9887fcbc2d38b55" > operations_research::PathState::NodeRange::Iterator::operator*< / a > < / div > < div class = "ttdeci" > int operator*() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03339" > constraint_solveri.h:3339< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_1_1_iterator_html_ae1f21c74128a5ef5d1b9de72ceb09be8" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range_1_1_iterator.html#ae1f21c74128a5ef5d1b9de72ceb09be8" > operations_research::PathState::NodeRange::Iterator::operator++< / a > < / div > < div class = "ttdeci" > Iterator & operator++()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03327" > constraint_solveri.h:3327< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range.html" > operations_research::PathState::NodeRange< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03323" > constraint_solveri.h:3323< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_html_a09dd208593b9721a30a83ed978ede577" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range.html#a09dd208593b9721a30a83ed978ede577" > operations_research::PathState::NodeRange::begin< / a > < / div > < div class = "ttdeci" > Iterator begin() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03366" > constraint_solveri.h:3366< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_html_a62469461ed7c932afba3808f4da0fe3d" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range.html#a62469461ed7c932afba3808f4da0fe3d" > operations_research::PathState::NodeRange::end< / a > < / div > < div class = "ttdeci" > Iterator end() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03369" > constraint_solveri.h:3369< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_1_1_node_range_html_a62c92ae5de8cb2b3fa9dfca7bd901511" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state_1_1_node_range.html#a62c92ae5de8cb2b3fa9dfca7bd901511" > operations_research::PathState::NodeRange::NodeRange< / a > < / div > < div class = "ttdeci" > NodeRange(const ChainBounds *begin_chain, const ChainBounds *end_chain, const CommittedNode *first_node)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03361" > constraint_solveri.h:3361< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html" > operations_research::PathState< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03061" > constraint_solveri.h:3061< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_a0d16eaa2f4cc0dbde0c88126021ec34e" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#a0d16eaa2f4cc0dbde0c88126021ec34e" > operations_research::PathState::NumPaths< / a > < / div > < div class = "ttdeci" > int NumPaths() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03085" > constraint_solveri.h:3085< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_a5385bb1f08b7a7dedd4caa863f3b09b1" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#a5385bb1f08b7a7dedd4caa863f3b09b1" > operations_research::PathState::ChangedPaths< / a > < / div > < div class = "ttdeci" > const std::vector< int > & ChangedPaths() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03104" > constraint_solveri.h:3104< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_a6c1f27c9de7ff98356fa712e4b796a1a" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#a6c1f27c9de7ff98356fa712e4b796a1a" > operations_research::PathState::IsInvalid< / a > < / div > < div class = "ttdeci" > bool IsInvalid() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03130" > constraint_solveri.h:3130< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_a937b365701ebfe974cd5cb1353261f09" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#a937b365701ebfe974cd5cb1353261f09" > operations_research::PathState::Path< / a > < / div > < div class = "ttdeci" > int Path(int node) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03094" > constraint_solveri.h:3094< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_abfff11e6152645afbde1b85c50734c72" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#abfff11e6152645afbde1b85c50734c72" > operations_research::PathState::ChangedArcs< / a > < / div > < div class = "ttdeci" > const std::vector< std::pair< int, int > > & ChangedArcs() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03099" > constraint_solveri.h:3099< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_ac1f21be35df1e57b870e96fcacf5cf5c" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#ac1f21be35df1e57b870e96fcacf5cf5c" > operations_research::PathState::End< / a > < / div > < div class = "ttdeci" > int End(int path) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03089" > constraint_solveri.h:3089< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_add5aaa3d107c19f881053c3a398df594" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#add5aaa3d107c19f881053c3a398df594" > operations_research::PathState::Start< / a > < / div > < div class = "ttdeci" > int Start(int path) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03087" > constraint_solveri.h:3087< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_af6d5206c3dd14d6b3ad08f0109cedf1e" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#af6d5206c3dd14d6b3ad08f0109cedf1e" > operations_research::PathState::ChangeNext< / a > < / div > < div class = "ttdeci" > void ChangeNext(int node, int new_next)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03114" > constraint_solveri.h:3114< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_af7b62ca470d8de1c1dde577b04671fa7" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#af7b62ca470d8de1c1dde577b04671fa7" > operations_research::PathState::NumNodes< / a > < / div > < div class = "ttdeci" > int NumNodes() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03083" > constraint_solveri.h:3083< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_path_state_html_afed50c82e72ac41a3653683cb17cdfbc" > < div class = "ttname" > < a href = "classoperations__research_1_1_path_state.html#afed50c82e72ac41a3653683cb17cdfbc" > operations_research::PathState::SetInvalid< / a > < / div > < div class = "ttdeci" > void SetInvalid()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03129" > constraint_solveri.h:3129< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html" > operations_research::PropagationMonitor< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01862" > constraint_solveri.h:1862< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a028fe39cb7a6538b681f8187ec8b2fd5" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a028fe39cb7a6538b681f8187ec8b2fd5" > operations_research::PropagationMonitor::SetValues< / a > < / div > < div class = "ttdeci" > virtual void SetValues(IntVar *const var, const std::vector< int64_t > & values)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a0a9f2aafe6e0af0bd3b2b0bdbfefc43a" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a0a9f2aafe6e0af0bd3b2b0bdbfefc43a" > operations_research::PropagationMonitor::SetDurationMax< / a > < / div > < div class = "ttdeci" > virtual void SetDurationMax(IntervalVar *const var, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a0de3d793976b21f8b85ba61c49fe3aaa" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a0de3d793976b21f8b85ba61c49fe3aaa" > operations_research::PropagationMonitor::SetDurationRange< / a > < / div > < div class = "ttdeci" > virtual void SetDurationRange(IntervalVar *const var, int64_t new_min, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a126966f09d093bc9f6c9410c7bc5a2ef" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a126966f09d093bc9f6c9410c7bc5a2ef" > operations_research::PropagationMonitor::SetMax< / a > < / div > < div class = "ttdeci" > virtual void SetMax(IntExpr *const expr, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a133d6644c8ea52f45e657b4c268e0cbf" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a133d6644c8ea52f45e657b4c268e0cbf" > operations_research::PropagationMonitor::RankLast< / a > < / div > < div class = "ttdeci" > virtual void RankLast(SequenceVar *const var, int index)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a2ba65f329138882aa7a56a8815fe2238" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a2ba65f329138882aa7a56a8815fe2238" > operations_research::PropagationMonitor::EndConstraintInitialPropagation< / a > < / div > < div class = "ttdeci" > virtual void EndConstraintInitialPropagation(Constraint *const constraint)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a30937901ac46d02c3cd57f46fcacd679" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a30937901ac46d02c3cd57f46fcacd679" > operations_research::PropagationMonitor::SetMin< / a > < / div > < div class = "ttdeci" > virtual void SetMin(IntVar *const var, int64_t new_min)=0< / div > < div class = "ttdoc" > IntVar modifiers.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a358d0dc8739be3a69b8d04b20ceeca1b" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a358d0dc8739be3a69b8d04b20ceeca1b" > operations_research::PropagationMonitor::RemoveValue< / a > < / div > < div class = "ttdeci" > virtual void RemoveValue(IntVar *const var, int64_t value)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a4df31041e5a5d2b96b4fd1e2fc7c78fe" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a4df31041e5a5d2b96b4fd1e2fc7c78fe" > operations_research::PropagationMonitor::SetValue< / a > < / div > < div class = "ttdeci" > virtual void SetValue(IntVar *const var, int64_t value)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a51c254362c423d05c445ac0b601f9d0f" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a51c254362c423d05c445ac0b601f9d0f" > operations_research::PropagationMonitor::SetDurationMin< / a > < / div > < div class = "ttdeci" > virtual void SetDurationMin(IntervalVar *const var, int64_t new_min)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a55f9231fa7bc1e162027f315756b9f0a" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a55f9231fa7bc1e162027f315756b9f0a" > operations_research::PropagationMonitor::SetStartMin< / a > < / div > < div class = "ttdeci" > virtual void SetStartMin(IntervalVar *const var, int64_t new_min)=0< / div > < div class = "ttdoc" > IntervalVar modifiers.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a6467f671a40283eed2a71c51741d93b8" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a6467f671a40283eed2a71c51741d93b8" > operations_research::PropagationMonitor::RankNotLast< / a > < / div > < div class = "ttdeci" > virtual void RankNotLast(SequenceVar *const var, int index)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a670d62cb4741bc10b2332a8a67fd3f5a" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a670d62cb4741bc10b2332a8a67fd3f5a" > operations_research::PropagationMonitor::RankNotFirst< / a > < / div > < div class = "ttdeci" > virtual void RankNotFirst(SequenceVar *const var, int index)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a6e0692306656dae6639fbc6dd001400d" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a6e0692306656dae6639fbc6dd001400d" > operations_research::PropagationMonitor::BeginDemonRun< / a > < / div > < div class = "ttdeci" > virtual void BeginDemonRun(Demon *const demon)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a6e498828df2385b763f45248375f8572" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a6e498828df2385b763f45248375f8572" > operations_research::PropagationMonitor::SetRange< / a > < / div > < div class = "ttdeci" > virtual void SetRange(IntExpr *const expr, int64_t new_min, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a6e8312c7b6a02f813e345b99f98a8458" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a6e8312c7b6a02f813e345b99f98a8458" > operations_research::PropagationMonitor::RankSequence< / a > < / div > < div class = "ttdeci" > virtual void RankSequence(SequenceVar *const var, const std::vector< int > & rank_first, const std::vector< int > & rank_last, const std::vector< int > & unperformed)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a6ed2b01b16e2d2d536bfc0492ca49baf" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a6ed2b01b16e2d2d536bfc0492ca49baf" > operations_research::PropagationMonitor::SetEndRange< / a > < / div > < div class = "ttdeci" > virtual void SetEndRange(IntervalVar *const var, int64_t new_min, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a6f0bc0c96e5fbf376db91e36d430d77a" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a6f0bc0c96e5fbf376db91e36d430d77a" > operations_research::PropagationMonitor::SetEndMax< / a > < / div > < div class = "ttdeci" > virtual void SetEndMax(IntervalVar *const var, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a70c1ff674f3da38bc07626c496f34af9" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a70c1ff674f3da38bc07626c496f34af9" > operations_research::PropagationMonitor::PushContext< / a > < / div > < div class = "ttdeci" > virtual void PushContext(const std::string & context)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a770ac0e58ac711e3866c3731d9417bd8" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a770ac0e58ac711e3866c3731d9417bd8" > operations_research::PropagationMonitor::RemoveInterval< / a > < / div > < div class = "ttdeci" > virtual void RemoveInterval(IntVar *const var, int64_t imin, int64_t imax)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a7cc3aa8de622c637dccc3133dbb9fbde" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a7cc3aa8de622c637dccc3133dbb9fbde" > operations_research::PropagationMonitor::SetEndMin< / a > < / div > < div class = "ttdeci" > virtual void SetEndMin(IntervalVar *const var, int64_t new_min)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a8f8d2ca3d9f0e871b9770007e7389d3e" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a8f8d2ca3d9f0e871b9770007e7389d3e" > operations_research::PropagationMonitor::BeginNestedConstraintInitialPropagation< / a > < / div > < div class = "ttdeci" > virtual void BeginNestedConstraintInitialPropagation(Constraint *const parent, Constraint *const nested)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a999c625dc76dfd7f967b8975ae965df8" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a999c625dc76dfd7f967b8975ae965df8" > operations_research::PropagationMonitor::EndNestedConstraintInitialPropagation< / a > < / div > < div class = "ttdeci" > virtual void EndNestedConstraintInitialPropagation(Constraint *const parent, Constraint *const nested)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_a9d744483fcd1aad50383d420b23ca06a" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#a9d744483fcd1aad50383d420b23ca06a" > operations_research::PropagationMonitor::SetMax< / a > < / div > < div class = "ttdeci" > virtual void SetMax(IntVar *const var, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_aa3e9be9f07862e3f2704cb028866ab81" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#aa3e9be9f07862e3f2704cb028866ab81" > operations_research::PropagationMonitor::SetPerformed< / a > < / div > < div class = "ttdeci" > virtual void SetPerformed(IntervalVar *const var, bool value)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_aa77ef61dbcadb2bd07159e46dd7555a6" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#aa77ef61dbcadb2bd07159e46dd7555a6" > operations_research::PropagationMonitor::StartProcessingIntegerVariable< / a > < / div > < div class = "ttdeci" > virtual void StartProcessingIntegerVariable(IntVar *const var)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_ab52ff1d356b9ca17d86884720fd9f08f" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#ab52ff1d356b9ca17d86884720fd9f08f" > operations_research::PropagationMonitor::BeginConstraintInitialPropagation< / a > < / div > < div class = "ttdeci" > virtual void BeginConstraintInitialPropagation(Constraint *const constraint)=0< / div > < div class = "ttdoc" > Propagation events.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_abe2ccd8eca4ac4de1206e8321ebc28d0" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#abe2ccd8eca4ac4de1206e8321ebc28d0" > operations_research::PropagationMonitor::SetRange< / a > < / div > < div class = "ttdeci" > virtual void SetRange(IntVar *const var, int64_t new_min, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_ac0cf596f1ae7609f165ca4c866c02774" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#ac0cf596f1ae7609f165ca4c866c02774" > operations_research::PropagationMonitor::SetMin< / a > < / div > < div class = "ttdeci" > virtual void SetMin(IntExpr *const expr, int64_t new_min)=0< / div > < div class = "ttdoc" > IntExpr modifiers.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_ac7773149191696aae6b16b9c9f6c1614" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#ac7773149191696aae6b16b9c9f6c1614" > operations_research::PropagationMonitor::SetStartMax< / a > < / div > < div class = "ttdeci" > virtual void SetStartMax(IntervalVar *const var, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_acd79a3f4a6c95f0acecac5bc8420bd37" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#acd79a3f4a6c95f0acecac5bc8420bd37" > operations_research::PropagationMonitor::EndDemonRun< / a > < / div > < div class = "ttdeci" > virtual void EndDemonRun(Demon *const demon)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_aced81fe18add9aa052c40a148b6bb79d" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#aced81fe18add9aa052c40a148b6bb79d" > operations_research::PropagationMonitor::RegisterDemon< / a > < / div > < div class = "ttdeci" > virtual void RegisterDemon(Demon *const demon)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_ad8c078366ae8c668ccaa369f2f539a08" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#ad8c078366ae8c668ccaa369f2f539a08" > operations_research::PropagationMonitor::EndProcessingIntegerVariable< / a > < / div > < div class = "ttdeci" > virtual void EndProcessingIntegerVariable(IntVar *const var)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_ad8c2cfa3b6981f66705a3309edc2521c" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#ad8c2cfa3b6981f66705a3309edc2521c" > operations_research::PropagationMonitor::PopContext< / a > < / div > < div class = "ttdeci" > virtual void PopContext()=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_ae946f821b8a6287c182392564eae0eba" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#ae946f821b8a6287c182392564eae0eba" > operations_research::PropagationMonitor::RemoveValues< / a > < / div > < div class = "ttdeci" > virtual void RemoveValues(IntVar *const var, const std::vector< int64_t > & values)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_aed804747c45a7e1caf81461f9e45dd91" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#aed804747c45a7e1caf81461f9e45dd91" > operations_research::PropagationMonitor::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01866" > constraint_solveri.h:1866< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_aeda01d1493f781ab4e4c4ef463026c59" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#aeda01d1493f781ab4e4c4ef463026c59" > operations_research::PropagationMonitor::SetStartRange< / a > < / div > < div class = "ttdeci" > virtual void SetStartRange(IntervalVar *const var, int64_t new_min, int64_t new_max)=0< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_propagation_monitor_html_af5aaffbf16ee150934ca1d7feddffdf7" > < div class = "ttname" > < a href = "classoperations__research_1_1_propagation_monitor.html#af5aaffbf16ee150934ca1d7feddffdf7" > operations_research::PropagationMonitor::RankFirst< / a > < / div > < div class = "ttdeci" > virtual void RankFirst(SequenceVar *const var, int index)=0< / div > < div class = "ttdoc" > SequenceVar modifiers.< / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_array_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_array.html" > operations_research::RevArray< uint64_t > < / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_matrix_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_matrix.html" > operations_research::RevBitMatrix< / a > < / div > < div class = "ttdoc" > Matrix version of the RevBitSet class.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00457" > constraint_solveri.h:457< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_matrix_html_a0bbb89e6f783ea950b5bd38049428b4c" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_matrix.html#a0bbb89e6f783ea950b5bd38049428b4c" > operations_research::RevBitMatrix::SetToZero< / a > < / div > < div class = "ttdeci" > void SetToZero(Solver *const solver, int64_t row, int64_t column)< / div > < div class = "ttdoc" > Erases the 'column' bit in the 'row' row.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00178" > utilities.cc:178< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_matrix_html_a1c9efd24f68d098eedb9c6ae3fdd25c4" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_matrix.html#a1c9efd24f68d098eedb9c6ae3fdd25c4" > operations_research::RevBitMatrix::~RevBitMatrix< / a > < / div > < div class = "ttdeci" > ~RevBitMatrix()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00168" > utilities.cc:168< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_matrix_html_a35395dc664c7939e68c29390a8591e1c" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_matrix.html#a35395dc664c7939e68c29390a8591e1c" > operations_research::RevBitMatrix::IsSet< / a > < / div > < div class = "ttdeci" > bool IsSet(int64_t row, int64_t column) const< / div > < div class = "ttdoc" > Returns whether the 'column' bit in the 'row' row is set.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00467" > constraint_solveri.h:467< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_matrix_html_ab1f7d7749ed4799119614efc507ebc64" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_matrix.html#ab1f7d7749ed4799119614efc507ebc64" > operations_research::RevBitMatrix::SetToOne< / a > < / div > < div class = "ttdeci" > void SetToOne(Solver *const solver, int64_t row, int64_t column)< / div > < div class = "ttdoc" > Sets the 'column' bit in the 'row' row.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00170" > utilities.cc:170< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_matrix_html_ac4f70832be8ef45fb84c8170f17cc187" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_matrix.html#ac4f70832be8ef45fb84c8170f17cc187" > operations_research::RevBitMatrix::ClearAll< / a > < / div > < div class = "ttdeci" > void ClearAll(Solver *const solver)< / div > < div class = "ttdoc" > Cleans all bits.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00220" > utilities.cc:220< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_matrix_html_ac5c126872434730d4dde8a14a83b142b" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_matrix.html#ac5c126872434730d4dde8a14a83b142b" > operations_research::RevBitMatrix::GetFirstBit< / a > < / div > < div class = "ttdeci" > int64_t GetFirstBit(int row, int start) const< / div > < div class = "ttdoc" > Returns the first bit in the row 'row' which position is > = 'start'.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00204" > utilities.cc:204< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html" > operations_research::RevBitSet< / a > < / div > < div class = "ttdoc" > This class represents a reversible bitset.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00422" > constraint_solveri.h:422< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_a06d0831df3626060e4b9b80c7f96c682" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#a06d0831df3626060e4b9b80c7f96c682" > operations_research::RevBitSet::SetToOne< / a > < / div > < div class = "ttdeci" > void SetToOne(Solver *const solver, int64_t index)< / div > < div class = "ttdoc" > Sets the 'index' bit.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00084" > utilities.cc:84< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_a1031675c710b49107c846359dd825dfb" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#a1031675c710b49107c846359dd825dfb" > operations_research::RevBitSet::RevBitSet< / a > < / div > < div class = "ttdeci" > RevBitSet(int64_t size)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00061" > utilities.cc:61< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_a16202f709ab06d78dcae8db3ff21fd9c" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#a16202f709ab06d78dcae8db3ff21fd9c" > operations_research::RevBitSet::IsCardinalityOne< / a > < / div > < div class = "ttdeci" > bool IsCardinalityOne() const< / div > < div class = "ttdoc" > Does it contains only one bit set?< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00129" > utilities.cc:129< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_a4a36258ad75b9ddbb095da574c172b1b" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#a4a36258ad75b9ddbb095da574c172b1b" > operations_research::RevBitSet::SetToZero< / a > < / div > < div class = "ttdeci" > void SetToZero(Solver *const solver, int64_t index)< / div > < div class = "ttdoc" > Erases the 'index' bit.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00095" > utilities.cc:95< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_a50b7e2f9702d2416550ce54327b73a9c" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#a50b7e2f9702d2416550ce54327b73a9c" > operations_research::RevBitSet::Cardinality< / a > < / div > < div class = "ttdeci" > int64_t Cardinality() const< / div > < div class = "ttdoc" > Returns the number of bits set to one.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00112" > utilities.cc:112< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_a68ac6adba6fc78b4499583900c4a2648" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#a68ac6adba6fc78b4499583900c4a2648" > operations_research::RevBitSet::GetFirstBit< / a > < / div > < div class = "ttdeci" > int64_t GetFirstBit(int start) const< / div > < div class = "ttdoc" > Gets the index of the first bit set starting from start.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00147" > utilities.cc:147< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_a98b1ea1fa2f50e5d846e0e1b425db458" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#a98b1ea1fa2f50e5d846e0e1b425db458" > operations_research::RevBitSet::IsSet< / a > < / div > < div class = "ttdeci" > bool IsSet(int64_t index) const< / div > < div class = "ttdoc" > Returns whether the 'index' bit is set.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00106" > utilities.cc:106< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_ac4f70832be8ef45fb84c8170f17cc187" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#ac4f70832be8ef45fb84c8170f17cc187" > operations_research::RevBitSet::ClearAll< / a > < / div > < div class = "ttdeci" > void ClearAll(Solver *const solver)< / div > < div class = "ttdoc" > Cleans all bits.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00151" > utilities.cc:151< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_ac9da3e5301f8c4c0ed8a261d0a0b2cbd" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#ac9da3e5301f8c4c0ed8a261d0a0b2cbd" > operations_research::RevBitSet::RevBitMatrix< / a > < / div > < div class = "ttdeci" > friend class RevBitMatrix< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00445" > constraint_solveri.h:445< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_ad175c4019a4a927bec26eb8cd819d81e" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#ad175c4019a4a927bec26eb8cd819d81e" > operations_research::RevBitSet::IsCardinalityZero< / a > < / div > < div class = "ttdeci" > bool IsCardinalityZero() const< / div > < div class = "ttdoc" > Is bitset null?< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00120" > utilities.cc:120< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_bit_set_html_add39d7a314f959b1de71df09c5e862bb" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_bit_set.html#add39d7a314f959b1de71df09c5e862bb" > operations_research::RevBitSet::~RevBitSet< / a > < / div > < div class = "ttdeci" > ~RevBitSet()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00071" > utilities.cc:71< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_growing_array_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_growing_array.html" > operations_research::RevGrowingArray< / a > < / div > < div class = "ttdoc" > This class is a reversible growing array.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02484" > constraint_solveri.h:2484< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_growing_array_html_a4ead353fd8ad8d4432366add9247f991" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_growing_array.html#a4ead353fd8ad8d4432366add9247f991" > operations_research::RevGrowingArray::RevInsert< / a > < / div > < div class = "ttdeci" > void RevInsert(Solver *const solver, int64_t index, T value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02507" > constraint_solveri.h:2507< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_growing_array_html_a71a4ac053fc13b4bfa675ceff2fab024" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_growing_array.html#a71a4ac053fc13b4bfa675ceff2fab024" > operations_research::RevGrowingArray::At< / a > < / div > < div class = "ttdeci" > T At(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02497" > constraint_solveri.h:2497< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_growing_array_html_ab75ed69877226a6c1c51af3babe02b94" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_growing_array.html#ab75ed69877226a6c1c51af3babe02b94" > operations_research::RevGrowingArray::~RevGrowingArray< / a > < / div > < div class = "ttdeci" > ~RevGrowingArray()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02491" > constraint_solveri.h:2491< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_growing_array_html_ae30876de177c25a1bb60638d216e7026" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_growing_array.html#ae30876de177c25a1bb60638d216e7026" > operations_research::RevGrowingArray::RevGrowingArray< / a > < / div > < div class = "ttdeci" > RevGrowingArray(int64_t block_size)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02486" > constraint_solveri.h:2486< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev.html" > operations_research::Rev< uint64_t > < / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_html_a95da6a138a3b56de0cf0c3c4ba7c4688" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev.html#a95da6a138a3b56de0cf0c3c4ba7c4688" > operations_research::Rev::SetValue< / a > < / div > < div class = "ttdeci" > void SetValue(Solver *const s, const T & val)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03783" > constraint_solver.h:3783< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_html_ac1647d6fcecffc2d2e773545ee0a4f2d" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev.html#ac1647d6fcecffc2d2e773545ee0a4f2d" > operations_research::Rev::Value< / a > < / div > < div class = "ttdeci" > const T & Value() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03781" > constraint_solver.h:3781< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_immutable_multi_map_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_immutable_multi_map.html" > operations_research::RevImmutableMultiMap< / a > < / div > < div class = "ttdoc" > Reversible Immutable MultiMap class.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00275" > constraint_solveri.h:275< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_immutable_multi_map_html_a0b5c13dc004b78fa86ae2a2e76f25f99" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_immutable_multi_map.html#a0b5c13dc004b78fa86ae2a2e76f25f99" > operations_research::RevImmutableMultiMap::Insert< / a > < / div > < div class = "ttdeci" > void Insert(const K & key, const V & value)< / div > < div class = "ttdoc" > Inserts (key, value) in the multi-map.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00318" > constraint_solveri.h:318< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_immutable_multi_map_html_a3c7e62a9a396c5d8fd2b85b762c2a850" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_immutable_multi_map.html#a3c7e62a9a396c5d8fd2b85b762c2a850" > operations_research::RevImmutableMultiMap::RevImmutableMultiMap< / a > < / div > < div class = "ttdeci" > RevImmutableMultiMap(Solver *const solver, int initial_size)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00277" > constraint_solveri.h:277< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_immutable_multi_map_html_a5f616bf78c26f40857a7d6514b0d40a5" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_immutable_multi_map.html#a5f616bf78c26f40857a7d6514b0d40a5" > operations_research::RevImmutableMultiMap::FindWithDefault< / a > < / div > < div class = "ttdeci" > const V & FindWithDefault(const K & key, const V & default_value) const< / div > < div class = "ttdoc" > Returns one value attached to 'key', or 'default_value' if 'key' is not in the multi-map.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00305" > constraint_solveri.h:305< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_immutable_multi_map_html_a6053bb9c0d664074153ddfd9c7cd2598" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_immutable_multi_map.html#a6053bb9c0d664074153ddfd9c7cd2598" > operations_research::RevImmutableMultiMap::~RevImmutableMultiMap< / a > < / div > < div class = "ttdeci" > ~RevImmutableMultiMap()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00285" > constraint_solveri.h:285< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_immutable_multi_map_html_a8f6b848968f58150836b9fba3dea4aef" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_immutable_multi_map.html#a8f6b848968f58150836b9fba3dea4aef" > operations_research::RevImmutableMultiMap::ContainsKey< / a > < / div > < div class = "ttdeci" > bool ContainsKey(const K & key) const< / div > < div class = "ttdoc" > Returns true if the multi-map contains at least one instance of 'key'.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00290" > constraint_solveri.h:290< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_immutable_multi_map_html_ab273f390966237d6f5cdb9c45f5361d6" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_immutable_multi_map.html#ab273f390966237d6f5cdb9c45f5361d6" > operations_research::RevImmutableMultiMap::num_items< / a > < / div > < div class = "ttdeci" > int num_items() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00287" > constraint_solveri.h:287< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html" > operations_research::RevIntSet< / a > < / div > < div class = "ttdoc" > This is a special class to represent a 'residual' set of T.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02567" > constraint_solveri.h:2567< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a09b435e833bb97525ef2e54735f632ea" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a09b435e833bb97525ef2e54735f632ea" > operations_research::RevIntSet::Insert< / a > < / div > < div class = "ttdeci" > void Insert(Solver *const solver, const T & elt)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02617" > constraint_solveri.h:2617< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a23bf807dec205b7965271a2980ba7aa1" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a23bf807dec205b7965271a2980ba7aa1" > operations_research::RevIntSet::RevIntSet< / a > < / div > < div class = "ttdeci" > RevIntSet(int capacity)< / div > < div class = "ttdoc" > Capacity is the fixed size of the set (it cannot grow).< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02572" > constraint_solveri.h:2572< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a24926108b770033792d015cb86aeffb3" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a24926108b770033792d015cb86aeffb3" > operations_research::RevIntSet::Size< / a > < / div > < div class = "ttdeci" > int Size() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02601" > constraint_solveri.h:2601< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a29305669b60ca1680752e2fc3592ba99" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a29305669b60ca1680752e2fc3592ba99" > operations_research::RevIntSet::begin< / a > < / div > < div class = "ttdeci" > const_iterator begin() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02640" > constraint_solveri.h:2640< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a2fc97dce62b7053449cc868607540dba" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a2fc97dce62b7053449cc868607540dba" > operations_research::RevIntSet::const_iterator< / a > < / div > < div class = "ttdeci" > const T * const_iterator< / div > < div class = "ttdoc" > Iterators on the indices.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02639" > constraint_solveri.h:2639< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a34d8dff251306e611f6393c007372233" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a34d8dff251306e611f6393c007372233" > operations_research::RevIntSet::RemovedElement< / a > < / div > < div class = "ttdeci" > T RemovedElement(int i) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02611" > constraint_solveri.h:2611< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a6b01bbd962186b2a530cb1ab6855b833" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a6b01bbd962186b2a530cb1ab6855b833" > operations_research::RevIntSet::Element< / a > < / div > < div class = "ttdeci" > T Element(int i) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02605" > constraint_solveri.h:2605< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a843688384c304891f0a00b0336ac9823" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a843688384c304891f0a00b0336ac9823" > operations_research::RevIntSet::~RevIntSet< / a > < / div > < div class = "ttdeci" > ~RevIntSet()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02595" > constraint_solveri.h:2595< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_a9dc6b5dd524a344be68d49dfe713445b" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#a9dc6b5dd524a344be68d49dfe713445b" > operations_research::RevIntSet::RevIntSet< / a > < / div > < div class = "ttdeci" > RevIntSet(int capacity, int *shared_positions, int shared_positions_size)< / div > < div class = "ttdoc" > Capacity is the fixed size of the set (it cannot grow).< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02584" > constraint_solveri.h:2584< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_ab57ce8f50aeb2f7e4171b04ca42fd447" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#ab57ce8f50aeb2f7e4171b04ca42fd447" > operations_research::RevIntSet::Restore< / a > < / div > < div class = "ttdeci" > void Restore(Solver *const solver, const T & value_index)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02631" > constraint_solveri.h:2631< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_accf9a4bd0c34d4a5f6a7dab66ea10cdc" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#accf9a4bd0c34d4a5f6a7dab66ea10cdc" > operations_research::RevIntSet::end< / a > < / div > < div class = "ttdeci" > const_iterator end() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02641" > constraint_solveri.h:2641< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_ace705075d1b47c62aa622a912c14626c" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#ace705075d1b47c62aa622a912c14626c" > operations_research::RevIntSet::Remove< / a > < / div > < div class = "ttdeci" > void Remove(Solver *const solver, const T & value_index)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02626" > constraint_solveri.h:2626< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_ae37167b9b5134bd482bc4e21d77b3f4b" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#ae37167b9b5134bd482bc4e21d77b3f4b" > operations_research::RevIntSet::Capacity< / a > < / div > < div class = "ttdeci" > int Capacity() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02603" > constraint_solveri.h:2603< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_int_set_html_ae44fff9ea13a57991eb263fc98f526ab" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_int_set.html#ae44fff9ea13a57991eb263fc98f526ab" > operations_research::RevIntSet::Clear< / a > < / div > < div class = "ttdeci" > void Clear(Solver *const solver)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02636" > constraint_solveri.h:2636< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html" > operations_research::RevPartialSequence< / a > < / div > < div class = "ttdoc" > --— RevPartialSequence --—< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02679" > constraint_solveri.h:2679< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a24926108b770033792d015cb86aeffb3" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a24926108b770033792d015cb86aeffb3" > operations_research::RevPartialSequence::Size< / a > < / div > < div class = "ttdeci" > int Size() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02711" > constraint_solveri.h:2711< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a26a014b275560d5f40a7fed763efc5b3" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a26a014b275560d5f40a7fed763efc5b3" > operations_research::RevPartialSequence::NumLastRanked< / a > < / div > < div class = "ttdeci" > int NumLastRanked() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02709" > constraint_solveri.h:2709< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a388bf17b12a3231df6f1c5c2ce2aba7d" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a388bf17b12a3231df6f1c5c2ce2aba7d" > operations_research::RevPartialSequence::RevPartialSequence< / a > < / div > < div class = "ttdeci" > RevPartialSequence(int size)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02693" > constraint_solveri.h:2693< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a4bb9c257807ee5c22729df7e1b008571" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a4bb9c257807ee5c22729df7e1b008571" > operations_research::RevPartialSequence::NumFirstRanked< / a > < / div > < div class = "ttdeci" > int NumFirstRanked() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02707" > constraint_solveri.h:2707< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a7515e88d1faa654d75c89b0abdc67133" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a7515e88d1faa654d75c89b0abdc67133" > operations_research::RevPartialSequence::IsRanked< / a > < / div > < div class = "ttdeci" > bool IsRanked(int elt) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02733" > constraint_solveri.h:2733< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a764be64f3029f8b8e23511061d8de355" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a764be64f3029f8b8e23511061d8de355" > operations_research::RevPartialSequence::DebugString< / a > < / div > < div class = "ttdeci" > std::string DebugString() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02739" > constraint_solveri.h:2739< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a7a0cad593e63d53f505bb7da17fcd1d4" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a7a0cad593e63d53f505bb7da17fcd1d4" > operations_research::RevPartialSequence::RankLast< / a > < / div > < div class = "ttdeci" > void RankLast(Solver *const solver, int elt)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02727" > constraint_solveri.h:2727< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_a952da5a13f656543b8fc2dd0ada0ca3f" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#a952da5a13f656543b8fc2dd0ada0ca3f" > operations_research::RevPartialSequence::~RevPartialSequence< / a > < / div > < div class = "ttdeci" > ~RevPartialSequence()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02705" > constraint_solveri.h:2705< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_aa40539cbc926aa90df91fcb10f8ada39" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#aa40539cbc926aa90df91fcb10f8ada39" > operations_research::RevPartialSequence::operator[]< / a > < / div > < div class = "ttdeci" > const int & operator[](int index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02714" > constraint_solveri.h:2714< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_aae1ff1f02500de1b7cf8042c10a5a36d" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#aae1ff1f02500de1b7cf8042c10a5a36d" > operations_research::RevPartialSequence::RankFirst< / a > < / div > < div class = "ttdeci" > void RankFirst(Solver *const solver, int elt)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02721" > constraint_solveri.h:2721< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_partial_sequence_html_ae94f333127d093281b44be431c78162c" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_partial_sequence.html#ae94f333127d093281b44be431c78162c" > operations_research::RevPartialSequence::RevPartialSequence< / a > < / div > < div class = "ttdeci" > RevPartialSequence(const std::vector< int > & items)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02681" > constraint_solveri.h:2681< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_switch_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_switch.html" > operations_research::RevSwitch< / a > < / div > < div class = "ttdoc" > A reversible switch that can switch once from false to true.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00383" > constraint_solveri.h:383< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_switch_html_a52e986be86c35c4a5fd860e4e9c0f855" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_switch.html#a52e986be86c35c4a5fd860e4e9c0f855" > operations_research::RevSwitch::RevSwitch< / a > < / div > < div class = "ttdeci" > RevSwitch()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00385" > constraint_solveri.h:385< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_switch_html_aba56f30d7550dc96d418c689e3ea41f0" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_switch.html#aba56f30d7550dc96d418c689e3ea41f0" > operations_research::RevSwitch::Switch< / a > < / div > < div class = "ttdeci" > void Switch(Solver *const solver)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00389" > constraint_solveri.h:389< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_rev_switch_html_acd90006e99a15f7e9df2aee5cf46549c" > < div class = "ttname" > < a href = "classoperations__research_1_1_rev_switch.html#acd90006e99a15f7e9df2aee5cf46549c" > operations_research::RevSwitch::Switched< / a > < / div > < div class = "ttdeci" > bool Switched() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00387" > constraint_solveri.h:387< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_search_log_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_search_log.html" > operations_research::SearchLog< / a > < / div > < div class = "ttdoc" > The base class of all search logs that periodically outputs information when the search is running.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02038" > constraint_solveri.h:2038< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_search_monitor_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_search_monitor.html" > operations_research::SearchMonitor< / a > < / div > < div class = "ttdoc" > A search monitor is a simple set of callbacks to monitor all search events.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l03677" > constraint_solver.h:3677< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_element_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_element.html" > operations_research::SequenceVarElement< / a > < / div > < div class = "ttdoc" > The SequenceVarElement stores a partial representation of ranked interval variables in the underlying...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04858" > constraint_solver.h:4858< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_element_html_a448be08e73b90cd86345acc79613a051" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_element.html#a448be08e73b90cd86345acc79613a051" > operations_research::SequenceVarElement::SetBackwardSequence< / a > < / div > < div class = "ttdeci" > void SetBackwardSequence(const std::vector< int > & backward_sequence)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_2assignment_8cc_source.html#l00375" > constraint_solver/assignment.cc:375< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_element_html_a91d3f0252bfbe5a661ad3e0cea3c9c5a" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_element.html#a91d3f0252bfbe5a661ad3e0cea3c9c5a" > operations_research::SequenceVarElement::ForwardSequence< / a > < / div > < div class = "ttdeci" > const std::vector< int > & ForwardSequence() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_2assignment_8cc_source.html#l00349" > constraint_solver/assignment.cc:349< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_element_html_abd09fe08f368306c986382df61a20c73" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_element.html#abd09fe08f368306c986382df61a20c73" > operations_research::SequenceVarElement::SetForwardSequence< / a > < / div > < div class = "ttdeci" > void SetForwardSequence(const std::vector< int > & forward_sequence)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_2assignment_8cc_source.html#l00370" > constraint_solver/assignment.cc:370< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_element_html_ae8c75124aa71f4cb2761b58e08e9e4b1" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_element.html#ae8c75124aa71f4cb2761b58e08e9e4b1" > operations_research::SequenceVarElement::Var< / a > < / div > < div class = "ttdeci" > SequenceVar * Var() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04865" > constraint_solver.h:4865< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var.html" > operations_research::SequenceVar< / a > < / div > < div class = "ttdoc" > A sequence variable is a variable whose domain is a set of possible orderings of the interval variabl...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l04591" > constraint_solver.h:4591< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html" > operations_research::SequenceVarLocalSearchHandler< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01113" > constraint_solveri.h:1113< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html_a125b2232e57570b4d8112618e632853c" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a125b2232e57570b4d8112618e632853c" > operations_research::SequenceVarLocalSearchHandler::OnRevertChanges< / a > < / div > < div class = "ttdeci" > void OnRevertChanges(int64_t index, const std::vector< int > & value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01224" > constraint_solveri.h:1224< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html_a1a3c9d037de3120761d419606d4d3583" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a1a3c9d037de3120761d419606d4d3583" > operations_research::SequenceVarLocalSearchHandler::ValueFromAssignment< / a > < / div > < div class = "ttdeci" > bool ValueFromAssignment(const Assignment & assignment, SequenceVar *var, int64_t index, std::vector< int > *value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01206" > constraint_solveri.h:1206< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html_a25604d83014cbeac92c0ca5d21e9f621" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a25604d83014cbeac92c0ca5d21e9f621" > operations_research::SequenceVarLocalSearchHandler::SequenceVarLocalSearchHandler< / a > < / div > < div class = "ttdeci" > SequenceVarLocalSearchHandler(const SequenceVarLocalSearchHandler & other)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01116" > constraint_solveri.h:1116< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html_a313406fc0b0f1f176d75edbde9899961" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a313406fc0b0f1f176d75edbde9899961" > operations_research::SequenceVarLocalSearchHandler::SequenceVarLocalSearchHandler< / a > < / div > < div class = "ttdeci" > SequenceVarLocalSearchHandler()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01115" > constraint_solveri.h:1115< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html_a4314d5003c94cf5333271a1f2703b7ed" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a4314d5003c94cf5333271a1f2703b7ed" > operations_research::SequenceVarLocalSearchHandler::SequenceVarLocalSearchHandler< / a > < / div > < div class = "ttdeci" > SequenceVarLocalSearchHandler(SequenceVarLocalSearchOperator *op)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01118" > constraint_solveri.h:1118< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html_a4c02c35b283b85deb0cac7fd2317f3de" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a4c02c35b283b85deb0cac7fd2317f3de" > operations_research::SequenceVarLocalSearchHandler::AddToAssignment< / a > < / div > < div class = "ttdeci" > void AddToAssignment(SequenceVar *var, const std::vector< int > & value, bool active, std::vector< int > *assignment_indices, int64_t index, Assignment *assignment) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01180" > constraint_solveri.h:1180< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_handler_html_a97b236691225d7209706cf03fc455dc9" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_handler.html#a97b236691225d7209706cf03fc455dc9" > operations_research::SequenceVarLocalSearchHandler::OnAddVars< / a > < / div > < div class = "ttdeci" > void OnAddVars()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01229" > constraint_solveri.h:1229< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html" > operations_research::SequenceVarLocalSearchOperator< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01150" > constraint_solveri.h:1151< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_a182179d1af399fa1d3c3d79f0b78af29" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a182179d1af399fa1d3c3d79f0b78af29" > operations_research::SequenceVarLocalSearchOperator::SetBackwardSequence< / a > < / div > < div class = "ttdeci" > void SetBackwardSequence(int64_t index, const std::vector< int > & value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01169" > constraint_solveri.h:1169< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_a32d7461a11748f6614455083c485e7b7" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a32d7461a11748f6614455083c485e7b7" > operations_research::SequenceVarLocalSearchOperator::SetForwardSequence< / a > < / div > < div class = "ttdeci" > void SetForwardSequence(int64_t index, const std::vector< int > & value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01166" > constraint_solveri.h:1166< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_a35c529adfbac348d61a48ecd7e06b64d" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a35c529adfbac348d61a48ecd7e06b64d" > operations_research::SequenceVarLocalSearchOperator::~SequenceVarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > ~SequenceVarLocalSearchOperator() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01159" > constraint_solveri.h:1159< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_a689e9e8dc0eb8ae867dbfbaa9d1e5c2e" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a689e9e8dc0eb8ae867dbfbaa9d1e5c2e" > operations_research::SequenceVarLocalSearchOperator::Sequence< / a > < / div > < div class = "ttdeci" > const std::vector< int > & Sequence(int64_t index) const< / div > < div class = "ttdoc" > Returns the value in the current assignment of the variable of given index.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01162" > constraint_solveri.h:1162< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_a9288959c9052582be99babec1f808b6f" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#a9288959c9052582be99babec1f808b6f" > operations_research::SequenceVarLocalSearchOperator::backward_values_< / a > < / div > < div class = "ttdeci" > std::vector< std::vector< int > > backward_values_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01177" > constraint_solveri.h:1177< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_aa6aa43258bb7c95fb77f569227aee75c" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#aa6aa43258bb7c95fb77f569227aee75c" > operations_research::SequenceVarLocalSearchOperator::SequenceVarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > SequenceVarLocalSearchOperator(const std::vector< SequenceVar * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01154" > constraint_solveri.h:1154< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_af83d0756e698f74667dea1571a2d0f5c" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#af83d0756e698f74667dea1571a2d0f5c" > operations_research::SequenceVarLocalSearchOperator::OldSequence< / a > < / div > < div class = "ttdeci" > const std::vector< int > & OldSequence(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01163" > constraint_solveri.h:1163< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sequence_var_local_search_operator_html_afd2da9c60c12a80c7963535f02e68f7b" > < div class = "ttname" > < a href = "classoperations__research_1_1_sequence_var_local_search_operator.html#afd2da9c60c12a80c7963535f02e68f7b" > operations_research::SequenceVarLocalSearchOperator::SequenceVarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > SequenceVarLocalSearchOperator()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01153" > constraint_solveri.h:1153< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html" > operations_research::SimpleRevFIFO::Iterator< / a > < / div > < div class = "ttdoc" > This iterator is not stable with respect to deletion.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00148" > constraint_solveri.h:148< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator_html_a00f008b80917746917b874d00abd02a9" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a00f008b80917746917b874d00abd02a9" > operations_research::SimpleRevFIFO::Iterator::operator++< / a > < / div > < div class = "ttdeci" > void operator++()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00154" > constraint_solveri.h:154< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator_html_a03cb7eaa663dc83af68bc28a596d09e6" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a03cb7eaa663dc83af68bc28a596d09e6" > operations_research::SimpleRevFIFO::Iterator::ok< / a > < / div > < div class = "ttdeci" > bool ok() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00152" > constraint_solveri.h:152< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator_html_a4f623cf5dc191f1dc0257dc5701228a3" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a4f623cf5dc191f1dc0257dc5701228a3" > operations_research::SimpleRevFIFO::Iterator::operator*< / a > < / div > < div class = "ttdeci" > T operator*() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00153" > constraint_solveri.h:153< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator_html_a5d5b15d8c55444f6730c4b54e8365e34" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o_1_1_iterator.html#a5d5b15d8c55444f6730c4b54e8365e34" > operations_research::SimpleRevFIFO::Iterator::Iterator< / a > < / div > < div class = "ttdeci" > Iterator(const SimpleRevFIFO< T > *l)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00150" > constraint_solveri.h:150< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html" > operations_research::SimpleRevFIFO< / a > < / div > < div class = "ttdoc" > This class represent a reversible FIFO structure.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00137" > constraint_solveri.h:137< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html_a0903aed95afe1d5c18a6a85a57fbcf1c" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a0903aed95afe1d5c18a6a85a57fbcf1c" > operations_research::SimpleRevFIFO::MutableLast< / a > < / div > < div class = "ttdeci" > T * MutableLast()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00193" > constraint_solveri.h:193< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html_a374c7d46981794e6b107b12a0f3b4dea" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a374c7d46981794e6b107b12a0f3b4dea" > operations_research::SimpleRevFIFO::SetLastValue< / a > < / div > < div class = "ttdeci" > void SetLastValue(const T & v)< / div > < div class = "ttdoc" > Sets the last value in the FIFO.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00202" > constraint_solveri.h:202< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html_a8e1916ec93af03f2667921b00287c6c2" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#a8e1916ec93af03f2667921b00287c6c2" > operations_research::SimpleRevFIFO::Last< / a > < / div > < div class = "ttdeci" > const T * Last() const< / div > < div class = "ttdoc" > Returns the last item of the FIFO.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00189" > constraint_solveri.h:189< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html_aa2770463f2ad695d4d3b18e7cada907f" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#aa2770463f2ad695d4d3b18e7cada907f" > operations_research::SimpleRevFIFO::LastValue< / a > < / div > < div class = "ttdeci" > const T & LastValue() const< / div > < div class = "ttdoc" > Returns the last value in the FIFO.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00196" > constraint_solveri.h:196< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html_abc8f4bc09139f8f3951cc8280823a0f3" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#abc8f4bc09139f8f3951cc8280823a0f3" > operations_research::SimpleRevFIFO::PushIfNotTop< / a > < / div > < div class = "ttdeci" > void PushIfNotTop(Solver *const s, T val)< / div > < div class = "ttdoc" > Pushes the var on top if is not a duplicate of the current top object.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00182" > constraint_solveri.h:182< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html_ac75dccd75215a324b2add603b8631ed5" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#ac75dccd75215a324b2add603b8631ed5" > operations_research::SimpleRevFIFO::Push< / a > < / div > < div class = "ttdeci" > void Push(Solver *const s, T val)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00169" > constraint_solveri.h:169< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_simple_rev_f_i_f_o_html_adae7d9827dba5077a4e09158d8dbabcc" > < div class = "ttname" > < a href = "classoperations__research_1_1_simple_rev_f_i_f_o.html#adae7d9827dba5077a4e09158d8dbabcc" > operations_research::SimpleRevFIFO::SimpleRevFIFO< / a > < / div > < div class = "ttdeci" > SimpleRevFIFO()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00167" > constraint_solveri.h:167< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html" > operations_research::SmallRevBitSet< / a > < / div > < div class = "ttdoc" > This class represents a small reversible bitset (size < = 64).< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00397" > constraint_solveri.h:397< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html_a16202f709ab06d78dcae8db3ff21fd9c" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html#a16202f709ab06d78dcae8db3ff21fd9c" > operations_research::SmallRevBitSet::IsCardinalityOne< / a > < / div > < div class = "ttdeci" > bool IsCardinalityOne() const< / div > < div class = "ttdoc" > Does it contains only one bit set?< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00409" > constraint_solveri.h:409< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html_a50b7e2f9702d2416550ce54327b73a9c" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html#a50b7e2f9702d2416550ce54327b73a9c" > operations_research::SmallRevBitSet::Cardinality< / a > < / div > < div class = "ttdeci" > int64_t Cardinality() const< / div > < div class = "ttdoc" > Returns the number of bits set to one.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00048" > utilities.cc:48< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html_a7dd3bcd9082dd85b0af9db2010086d2d" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html#a7dd3bcd9082dd85b0af9db2010086d2d" > operations_research::SmallRevBitSet::SmallRevBitSet< / a > < / div > < div class = "ttdeci" > SmallRevBitSet(int64_t size)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00033" > utilities.cc:33< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html_a9b5d965cdd1d77de0d2b55c41d86b116" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html#a9b5d965cdd1d77de0d2b55c41d86b116" > operations_research::SmallRevBitSet::SetToZero< / a > < / div > < div class = "ttdeci" > void SetToZero(Solver *const solver, int64_t pos)< / div > < div class = "ttdoc" > Erases the 'pos' bit.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00043" > utilities.cc:43< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html_ad175c4019a4a927bec26eb8cd819d81e" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html#ad175c4019a4a927bec26eb8cd819d81e" > operations_research::SmallRevBitSet::IsCardinalityZero< / a > < / div > < div class = "ttdeci" > bool IsCardinalityZero() const< / div > < div class = "ttdoc" > Is bitset null?< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00407" > constraint_solveri.h:407< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html_ad1bc0969b66434da4c13ee6404dffce9" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html#ad1bc0969b66434da4c13ee6404dffce9" > operations_research::SmallRevBitSet::GetFirstOne< / a > < / div > < div class = "ttdeci" > int64_t GetFirstOne() const< / div > < div class = "ttdoc" > Gets the index of the first bit set starting from 0.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00052" > utilities.cc:52< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_small_rev_bit_set_html_ad262cac8f729abc8901904c302709f99" > < div class = "ttname" > < a href = "classoperations__research_1_1_small_rev_bit_set.html#ad262cac8f729abc8901904c302709f99" > operations_research::SmallRevBitSet::SetToOne< / a > < / div > < div class = "ttdeci" > void SetToOne(Solver *const solver, int64_t pos)< / div > < div class = "ttdoc" > Sets the 'pos' bit.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00038" > utilities.cc:38< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_solver_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_solver.html" > operations_research::Solver< / a > < / div > < div class = "ttdoc" > Solver Class.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l00245" > constraint_solver.h:245< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_solver_html_a293233c46e5eaa308f65c7c2350553f7" > < div class = "ttname" > < a href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7" > operations_research::Solver::DemonPriority< / a > < / div > < div class = "ttdeci" > DemonPriority< / div > < div class = "ttdoc" > This enum represents the three possible priorities for a demon in the Solver queue.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l00605" > constraint_solver.h:605< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_solver_html_a293233c46e5eaa308f65c7c2350553f7ad38fb80cf0d5468a2b5efdb0f4cd6068" > < div class = "ttname" > < a href = "classoperations__research_1_1_solver.html#a293233c46e5eaa308f65c7c2350553f7ad38fb80cf0d5468a2b5efdb0f4cd6068" > operations_research::Solver::DELAYED_PRIORITY< / a > < / div > < div class = "ttdeci" > @ DELAYED_PRIORITY< / div > < div class = "ttdoc" > DELAYED_PRIORITY is the lowest priority: Demons will be processed after VAR_PRIORITY and NORMAL_PRIOR...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l00608" > constraint_solver.h:608< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_solver_html_a675d33a9ef9aa399017fb68e652c7a5c" > < div class = "ttname" > < a href = "classoperations__research_1_1_solver.html#a675d33a9ef9aa399017fb68e652c7a5c" > operations_research::Solver::SaveAndSetValue< / a > < / div > < div class = "ttdeci" > void SaveAndSetValue(T *adr, T val)< / div > < div class = "ttdoc" > All-in-one SaveAndSetValue.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l02824" > constraint_solver.h:2824< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_solver_html_af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > < div class = "ttname" > < a href = "classoperations__research_1_1_solver.html#af5a1f8b1ea0ab0796c8667b9e2ef0ce7" > operations_research::Solver::RevAlloc< / a > < / div > < div class = "ttdeci" > T * RevAlloc(T *object)< / div > < div class = "ttdoc" > Registers the given object as being reversible.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8h_source.html#l00791" > constraint_solver.h:791< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sparse_bitset_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_sparse_bitset.html" > operations_research::SparseBitset< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00766" > bitset.h:766< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sparse_bitset_html_a41f798a04019147982b29c576ff9d8b7" > < div class = "ttname" > < a href = "classoperations__research_1_1_sparse_bitset.html#a41f798a04019147982b29c576ff9d8b7" > operations_research::SparseBitset::Set< / a > < / div > < div class = "ttdeci" > void Set(IntegerType index)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00804" > bitset.h:804< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sparse_bitset_html_a7187b794b93178bdf96f632d1f5d8c03" > < div class = "ttname" > < a href = "classoperations__research_1_1_sparse_bitset.html#a7187b794b93178bdf96f632d1f5d8c03" > operations_research::SparseBitset::PositionsSetAtLeastOnce< / a > < / div > < div class = "ttdeci" > const std::vector< IntegerType > & PositionsSetAtLeastOnce() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00814" > bitset.h:814< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sparse_bitset_html_ab4bc8236a9bfe59526e353800a0f0470" > < div class = "ttname" > < a href = "classoperations__research_1_1_sparse_bitset.html#ab4bc8236a9bfe59526e353800a0f0470" > operations_research::SparseBitset::SparseClearAll< / a > < / div > < div class = "ttdeci" > void SparseClearAll()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00771" > bitset.h:771< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_sparse_bitset_html_ae09e38958e558d2c776bc555a0dc2fc7" > < div class = "ttname" > < a href = "classoperations__research_1_1_sparse_bitset.html#ae09e38958e558d2c776bc555a0dc2fc7" > operations_research::SparseBitset::ClearAndResize< / a > < / div > < div class = "ttdeci" > void ClearAndResize(IntegerType size)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "bitset_8h_source.html#l00779" > bitset.h:779< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_symmetry_breaker_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_symmetry_breaker.html" > operations_research::SymmetryBreaker< / a > < / div > < div class = "ttdoc" > A symmetry breaker is an object that will visit a decision and create the 'symmetrical' decision in r...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02008" > constraint_solveri.h:2008< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_symmetry_breaker_html_a6d9f23034ceb39de4907c0c6d85e4b86" > < div class = "ttname" > < a href = "classoperations__research_1_1_symmetry_breaker.html#a6d9f23034ceb39de4907c0c6d85e4b86" > operations_research::SymmetryBreaker::SymmetryBreaker< / a > < / div > < div class = "ttdeci" > SymmetryBreaker()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02010" > constraint_solveri.h:2010< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_symmetry_breaker_html_ada76e640c4e2afb8508576e0e937ab6e" > < div class = "ttname" > < a href = "classoperations__research_1_1_symmetry_breaker.html#ada76e640c4e2afb8508576e0e937ab6e" > operations_research::SymmetryBreaker::~SymmetryBreaker< / a > < / div > < div class = "ttdeci" > ~SymmetryBreaker() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02012" > constraint_solveri.h:2012< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_symmetry_manager_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_symmetry_manager.html" > operations_research::SymmetryManager< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "search_8cc_source.html#l04789" > search.cc:4789< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unary_dimension_checker_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_unary_dimension_checker.html" > operations_research::UnaryDimensionChecker< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03391" > constraint_solveri.h:3391< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unsorted_nullable_rev_bitset_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html" > operations_research::UnsortedNullableRevBitset< / a > < / div > < div class = "ttdoc" > This class represents a reversible bitset.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02793" > constraint_solveri.h:2793< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unsorted_nullable_rev_bitset_html_a3e7853de206b761301ac2ab64d10cee7" > < div class = "ttname" > < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a3e7853de206b761301ac2ab64d10cee7" > operations_research::UnsortedNullableRevBitset::word_size< / a > < / div > < div class = "ttdeci" > int64_t word_size() const< / div > < div class = "ttdoc" > Returns the number of 64 bit words used to store the bitset.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02831" > constraint_solveri.h:2831< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unsorted_nullable_rev_bitset_html_a44d180cc00f52b2c221bb9a59c598d78" > < div class = "ttname" > < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a44d180cc00f52b2c221bb9a59c598d78" > operations_research::UnsortedNullableRevBitset::bit_size< / a > < / div > < div class = "ttdeci" > int64_t bit_size() const< / div > < div class = "ttdoc" > Returns the number of bits given in the constructor of the bitset.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02829" > constraint_solveri.h:2829< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unsorted_nullable_rev_bitset_html_a76ba13aa9ecbcd8755720533712f4f70" > < div class = "ttname" > < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#a76ba13aa9ecbcd8755720533712f4f70" > operations_research::UnsortedNullableRevBitset::~UnsortedNullableRevBitset< / a > < / div > < div class = "ttdeci" > ~UnsortedNullableRevBitset()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02798" > constraint_solveri.h:2798< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unsorted_nullable_rev_bitset_html_aa9ee56e96a76bffbcde4676be746755d" > < div class = "ttname" > < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#aa9ee56e96a76bffbcde4676be746755d" > operations_research::UnsortedNullableRevBitset::active_words< / a > < / div > < div class = "ttdeci" > const RevIntSet< int > & active_words() const< / div > < div class = "ttdoc" > Returns the set of active word indices.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02833" > constraint_solveri.h:2833< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unsorted_nullable_rev_bitset_html_abcfbdba215d3b15fbb4b682969943a6e" > < div class = "ttname" > < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#abcfbdba215d3b15fbb4b682969943a6e" > operations_research::UnsortedNullableRevBitset::Empty< / a > < / div > < div class = "ttdeci" > bool Empty() const< / div > < div class = "ttdoc" > This method returns true if the active bitset is null.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02817" > constraint_solveri.h:2817< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_unsorted_nullable_rev_bitset_html_ae6bce1d393b8e189c1d550ed4f02b07f" > < div class = "ttname" > < a href = "classoperations__research_1_1_unsorted_nullable_rev_bitset.html#ae6bce1d393b8e189c1d550ed4f02b07f" > operations_research::UnsortedNullableRevBitset::ActiveWordSize< / a > < / div > < div class = "ttdeci" > int ActiveWordSize() const< / div > < div class = "ttdoc" > This method returns the number of non null 64 bit words in the bitset representation.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02814" > constraint_solveri.h:2814< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html" > operations_research::VarLocalSearchOperator< / a > < / div > < div class = "ttdoc" > Base operator class for operators manipulating variables.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00808" > constraint_solveri.h:808< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a0019420edaed3532e8632e5b31e81b11" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a0019420edaed3532e8632e5b31e81b11" > operations_research::VarLocalSearchOperator::Activate< / a > < / div > < div class = "ttdeci" > void Activate(int64_t index)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00850" > constraint_solveri.h:850< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a06eb05df61a9b9fce744928947f43d89" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a06eb05df61a9b9fce744928947f43d89" > operations_research::VarLocalSearchOperator::RevertChanges< / a > < / div > < div class = "ttdeci" > void RevertChanges(bool incremental)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00882" > constraint_solveri.h:882< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a07cab95250a1eb5cf83faca67805fd80" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a07cab95250a1eb5cf83faca67805fd80" > operations_research::VarLocalSearchOperator::Deactivate< / a > < / div > < div class = "ttdeci" > void Deactivate(int64_t index)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00854" > constraint_solveri.h:854< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a0aeeba03eeb9514e2946c44c733e994a" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a0aeeba03eeb9514e2946c44c733e994a" > operations_research::VarLocalSearchOperator::old_values_< / a > < / div > < div class = "ttdeci" > std::vector< Val > old_values_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00926" > constraint_solveri.h:926< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a18eb329b669c6a2e4e2431ea950b52fe" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a18eb329b669c6a2e4e2431ea950b52fe" > operations_research::VarLocalSearchOperator::SkipUnchanged< / a > < / div > < div class = "ttdeci" > virtual bool SkipUnchanged(int index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00843" > constraint_solveri.h:843< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a20dd03e0437bf484e2ea321595c2e1cd" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a20dd03e0437bf484e2ea321595c2e1cd" > operations_research::VarLocalSearchOperator::SetValue< / a > < / div > < div class = "ttdeci" > void SetValue(int64_t index, const Val & value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00845" > constraint_solveri.h:845< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a24926108b770033792d015cb86aeffb3" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a24926108b770033792d015cb86aeffb3" > operations_research::VarLocalSearchOperator::Size< / a > < / div > < div class = "ttdeci" > int Size() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00834" > constraint_solveri.h:834< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a35de616bef50b1661e3133761f7260e1" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a35de616bef50b1661e3133761f7260e1" > operations_research::VarLocalSearchOperator::HoldsDelta< / a > < / div > < div class = "ttdeci" > bool HoldsDelta() const override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00817" > constraint_solveri.h:817< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a38b2df531e660bd3c43b896970a4f014" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a38b2df531e660bd3c43b896970a4f014" > operations_research::VarLocalSearchOperator::values_< / a > < / div > < div class = "ttdeci" > std::vector< Val > values_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00925" > constraint_solveri.h:925< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a3c7b6e2c172f34aad1d952d799be61f2" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a3c7b6e2c172f34aad1d952d799be61f2" > operations_research::VarLocalSearchOperator::Value< / a > < / div > < div class = "ttdeci" > const Val & Value(int64_t index) const< / div > < div class = "ttdoc" > Returns the value in the current assignment of the variable of given index.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00837" > constraint_solveri.h:837< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a6525132991e9140755b271a1cf43fee7" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a6525132991e9140755b271a1cf43fee7" > operations_research::VarLocalSearchOperator::delta_changes_< / a > < / div > < div class = "ttdeci" > SparseBitset delta_changes_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00932" > constraint_solveri.h:932< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a68dd19d6f0517e2bfb128f87fbad4fea" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a68dd19d6f0517e2bfb128f87fbad4fea" > operations_research::VarLocalSearchOperator::prev_values_< / a > < / div > < div class = "ttdeci" > std::vector< Val > prev_values_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00927" > constraint_solveri.h:927< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a7135085df615773e63a206e65ea21d53" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a7135085df615773e63a206e65ea21d53" > operations_research::VarLocalSearchOperator::activated_< / a > < / div > < div class = "ttdeci" > Bitset64 activated_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00929" > constraint_solveri.h:929< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a79163ea8990864f185e87eabf1578cca" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a79163ea8990864f185e87eabf1578cca" > operations_research::VarLocalSearchOperator::OldValue< / a > < / div > < div class = "ttdeci" > const Val & OldValue(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00844" > constraint_solveri.h:844< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a7b62af3db29eeb312e3cb06f7bb331ce" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a7b62af3db29eeb312e3cb06f7bb331ce" > operations_research::VarLocalSearchOperator::assignment_indices_< / a > < / div > < div class = "ttdeci" > std::vector< int > assignment_indices_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00928" > constraint_solveri.h:928< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a7f09d9a63d478f7fb1242e95a0e763a9" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a7f09d9a63d478f7fb1242e95a0e763a9" > operations_research::VarLocalSearchOperator::Activated< / a > < / div > < div class = "ttdeci" > bool Activated(int64_t index) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00849" > constraint_solveri.h:849< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a88a93be7370ff1f4c043fb335c8aac7c" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a88a93be7370ff1f4c043fb335c8aac7c" > operations_research::VarLocalSearchOperator::Var< / a > < / div > < div class = "ttdeci" > V * Var(int64_t index) const< / div > < div class = "ttdoc" > Returns the variable of given index.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00842" > constraint_solveri.h:842< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a8f74f53b5802db835de7f925ffd7b105" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a8f74f53b5802db835de7f925ffd7b105" > operations_research::VarLocalSearchOperator::changes_< / a > < / div > < div class = "ttdeci" > SparseBitset changes_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00931" > constraint_solveri.h:931< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_a96d44fa3defc89fe5e0fc0eafaf32714" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#a96d44fa3defc89fe5e0fc0eafaf32714" > operations_research::VarLocalSearchOperator::cleared_< / a > < / div > < div class = "ttdeci" > bool cleared_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00933" > constraint_solveri.h:933< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_aa21d5f9b4adc94167e3a466095d82fd5" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#aa21d5f9b4adc94167e3a466095d82fd5" > operations_research::VarLocalSearchOperator::IsIncremental< / a > < / div > < div class = "ttdeci" > virtual bool IsIncremental() const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00833" > constraint_solveri.h:833< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_aa8627a7bbb2f34d6156b0fcd3d3abdc2" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#aa8627a7bbb2f34d6156b0fcd3d3abdc2" > operations_research::VarLocalSearchOperator::var_handler_< / a > < / div > < div class = "ttdeci" > Handler var_handler_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00934" > constraint_solveri.h:934< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_aabafb6d8996f5101db26b30efff406b0" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#aabafb6d8996f5101db26b30efff406b0" > operations_research::VarLocalSearchOperator::ApplyChanges< / a > < / div > < div class = "ttdeci" > bool ApplyChanges(Assignment *delta, Assignment *deltadelta) const< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00858" > constraint_solveri.h:858< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_aad621560f01a4aed04f01cc6d97e897f" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#aad621560f01a4aed04f01cc6d97e897f" > operations_research::VarLocalSearchOperator::VarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > VarLocalSearchOperator(Handler var_handler)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00811" > constraint_solveri.h:811< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_aae6d852f10b483ddfa68658e43130028" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#aae6d852f10b483ddfa68658e43130028" > operations_research::VarLocalSearchOperator::OnStart< / a > < / div > < div class = "ttdeci" > virtual void OnStart()< / div > < div class = "ttdoc" > Called by Start() after synchronizing the operator with the current assignment.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00914" > constraint_solveri.h:914< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_ab309dc20c7f6458d60ef0e8de08b3c7c" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#ab309dc20c7f6458d60ef0e8de08b3c7c" > operations_research::VarLocalSearchOperator::MarkChange< / a > < / div > < div class = "ttdeci" > void MarkChange(int64_t index)< / div > < div class = "ttdoc" > OnStart() should really be protected, but then SWIG doesn't see it.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00919" > constraint_solveri.h:919< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_acb9668115d3d60818099ce9ce80d1ec1" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#acb9668115d3d60818099ce9ce80d1ec1" > operations_research::VarLocalSearchOperator::vars_< / a > < / div > < div class = "ttdeci" > std::vector< V * > vars_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00924" > constraint_solveri.h:924< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_acd9deaa1cb8f53d22e39a1f58b478739" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#acd9deaa1cb8f53d22e39a1f58b478739" > operations_research::VarLocalSearchOperator::VarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > VarLocalSearchOperator()< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00810" > constraint_solveri.h:810< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_ad48fcef57a4aa0b002e92ec27510dec3" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#ad48fcef57a4aa0b002e92ec27510dec3" > operations_research::VarLocalSearchOperator::~VarLocalSearchOperator< / a > < / div > < div class = "ttdeci" > ~VarLocalSearchOperator() override< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00816" > constraint_solveri.h:816< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_ade0f309c001b408cf7fe2a5b3c672640" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#ade0f309c001b408cf7fe2a5b3c672640" > operations_research::VarLocalSearchOperator::was_activated_< / a > < / div > < div class = "ttdeci" > Bitset64 was_activated_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00930" > constraint_solveri.h:930< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_ae2af73491ab2aa6804b443d442026a5e" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#ae2af73491ab2aa6804b443d442026a5e" > operations_research::VarLocalSearchOperator::AddVars< / a > < / div > < div class = "ttdeci" > void AddVars(const std::vector< V * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00895" > constraint_solveri.h:895< / a > < / div > < / div >
< div class = "ttc" id = "aclassoperations__research_1_1_var_local_search_operator_html_aeacffb05338262fd232dc77fed8cc586" > < div class = "ttname" > < a href = "classoperations__research_1_1_var_local_search_operator.html#aeacffb05338262fd232dc77fed8cc586" > operations_research::VarLocalSearchOperator::Start< / a > < / div > < div class = "ttdeci" > void Start(const Assignment *assignment) override< / div > < div class = "ttdoc" > This method should not be overridden.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00820" > constraint_solveri.h:820< / a > < / div > < / div >
< div class = "ttc" id = "aconstraint__solver_2table_8cc_html_acb18315d548212835cd8ed4287e6c0b6" > < div class = "ttname" > < a href = "constraint__solver_2table_8cc.html#acb18315d548212835cd8ed4287e6c0b6" > a< / a > < / div > < div class = "ttdeci" > int64_t a< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_2table_8cc_source.html#l00046" > constraint_solver/table.cc:46< / a > < / div > < / div >
< div class = "ttc" id = "aconstraint__solver_2table_8cc_html_ace49187800bab1a967e655278e69ca39" > < div class = "ttname" > < a href = "constraint__solver_2table_8cc.html#ace49187800bab1a967e655278e69ca39" > to_remove_< / a > < / div > < div class = "ttdeci" > std::vector< int64_t > to_remove_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_2table_8cc_source.html#l00230" > constraint_solver/table.cc:230< / a > < / div > < / div >
< div class = "ttc" id = "aconstraint__solver_8cc_html_a395f613555f398dd389670bb4c2a4599" > < div class = "ttname" > < a href = "constraint__solver_8cc.html#a395f613555f398dd389670bb4c2a4599" > next< / a > < / div > < div class = "ttdeci" > Block * next< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8cc_source.html#l00678" > constraint_solver.cc:678< / a > < / div > < / div >
< div class = "ttc" id = "aconstraint__solver_8h_html" > < div class = "ttname" > < a href = "constraint__solver_8h.html" > constraint_solver.h< / a > < / div > < / div >
< div class = "ttc" id = "acp__model__solver_8cc_html_a06dad0852d85b0686e01c084207c03a7" > < div class = "ttname" > < a href = "cp__model__solver_8cc.html#a06dad0852d85b0686e01c084207c03a7" > bounds< / a > < / div > < div class = "ttdeci" > SharedBoundsManager * bounds< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "cp__model__solver_8cc_source.html#l01952" > cp_model_solver.cc:1952< / a > < / div > < / div >
< div class = "ttc" id = "adefault__search_8cc_html_ac673bc430bdc3fdaa09f7becf98ef267" > < div class = "ttname" > < a href = "default__search_8cc.html#ac673bc430bdc3fdaa09f7becf98ef267" > name< / a > < / div > < div class = "ttdeci" > const std::string name< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "default__search_8cc_source.html#l00813" > default_search.cc:813< / a > < / div > < / div >
< div class = "ttc" id = "ademon__profiler_8cc_html_a05da18ca9c7b657a4a6ea24e07c9b695" > < div class = "ttname" > < a href = "demon__profiler_8cc.html#a05da18ca9c7b657a4a6ea24e07c9b695" > ct< / a > < / div > < div class = "ttdeci" > const Constraint * ct< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "demon__profiler_8cc_source.html#l00043" > demon_profiler.cc:43< / a > < / div > < / div >
< div class = "ttc" id = "ademon__profiler_8cc_html_ac072af30c4ffbc834bb4c681f6ecb514" > < div class = "ttname" > < a href = "demon__profiler_8cc.html#ac072af30c4ffbc834bb4c681f6ecb514" > value< / a > < / div > < div class = "ttdeci" > int64_t value< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "demon__profiler_8cc_source.html#l00044" > demon_profiler.cc:44< / a > < / div > < / div >
< div class = "ttc" id = "aexpr__array_8cc_html_a472a99923cbe11ae7b5a5d157d9ad465" > < div class = "ttname" > < a href = "expr__array_8cc.html#a472a99923cbe11ae7b5a5d157d9ad465" > var< / a > < / div > < div class = "ttdeci" > IntVar * var< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "expr__array_8cc_source.html#l01874" > expr_array.cc:1874< / a > < / div > < / div >
< div class = "ttc" id = "agurobi__interface_8cc_html_a5f287b83a753915ae862fed64f8640a6" > < div class = "ttname" > < a href = "gurobi__interface_8cc.html#a5f287b83a753915ae862fed64f8640a6" > context< / a > < / div > < div class = "ttdeci" > GurobiMPCallbackContext * context< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "gurobi__interface_8cc_source.html#l00514" > gurobi_interface.cc:514< / a > < / div > < / div >
< div class = "ttc" id = "aintegral__types_8h_html" > < div class = "ttname" > < a href = "integral__types_8h.html" > integral_types.h< / a > < / div > < / div >
< div class = "ttc" id = "aintegral__types_8h_html_a808bd435380aa1e2bbd6f13ac7759897" > < div class = "ttname" > < a href = "integral__types_8h.html#a808bd435380aa1e2bbd6f13ac7759897" > kint64max< / a > < / div > < div class = "ttdeci" > static const int64_t kint64max< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "integral__types_8h_source.html#l00032" > integral_types.h:32< / a > < / div > < / div >
< div class = "ttc" id = "aintegral__types_8h_html_af8b05f1b3a4c4ef94dd184c6c31a56e6" > < div class = "ttname" > < a href = "integral__types_8h.html#af8b05f1b3a4c4ef94dd184c6c31a56e6" > kint64min< / a > < / div > < div class = "ttdeci" > static const int64_t kint64min< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "integral__types_8h_source.html#l00031" > integral_types.h:31< / a > < / div > < / div >
< div class = "ttc" id = "ainterval_8cc_html_adeaf787e3a80bbf698cb9e26264474e0" > < div class = "ttname" > < a href = "interval_8cc.html#adeaf787e3a80bbf698cb9e26264474e0" > offset_< / a > < / div > < div class = "ttdeci" > const int64_t offset_< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "interval_8cc_source.html#l02108" > interval.cc:2108< / a > < / div > < / div >
< div class = "ttc" id = "amarkowitz_8cc_html_aea35f36ba98d5bbd8d033382f50c9e52" > < div class = "ttname" > < a href = "markowitz_8cc.html#aea35f36ba98d5bbd8d033382f50c9e52" > row< / a > < / div > < div class = "ttdeci" > RowIndex row< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "markowitz_8cc_source.html#l00182" > markowitz.cc:182< / a > < / div > < / div >
< div class = "ttc" id = "amatrix__utils_8cc_html_a95d4078c018ac04247ee3785eab30e7b" > < div class = "ttname" > < a href = "matrix__utils_8cc.html#a95d4078c018ac04247ee3785eab30e7b" > hash< / a > < / div > < div class = "ttdeci" > int64_t hash< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "matrix__utils_8cc_source.html#l00061" > matrix_utils.cc:61< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_1_1sat_html_a96eab70b5ead3894afac4d4fff0fd984" > < div class = "ttname" > < a href = "namespaceoperations__research_1_1sat.html#a96eab70b5ead3894afac4d4fff0fd984" > operations_research::sat::Value< / a > < / div > < div class = "ttdeci" > std::function< int64_t(const Model & )> Value(IntegerVariable v)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "integer_8h_source.html#l01673" > integer.h:1673< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html" > < div class = "ttname" > < a href = "namespaceoperations__research.html" > operations_research< / a > < / div > < div class = "ttdoc" > Collection of objects used to extend the Constraint Solver library.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "dense__doubly__linked__list_8h_source.html#l00021" > dense_doubly_linked_list.h:21< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a0953b50b08320d1109c678555137f1db" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a0953b50b08320d1109c678555137f1db" > operations_research::ParameterDebugString< / a > < / div > < div class = "ttdeci" > std::string ParameterDebugString(P param)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00525" > constraint_solveri.h:525< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a12527c82ffc8b31c5d8dc836c366d624" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a12527c82ffc8b31c5d8dc836c366d624" > operations_research::IsArrayConstant< / a > < / div > < div class = "ttdeci" > bool IsArrayConstant(const std::vector< T > & values, const T & value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02846" > constraint_solveri.h:2846< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a15f08cfbb35e2b8b1eb76f79caea924a" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a15f08cfbb35e2b8b1eb76f79caea924a" > operations_research::AreAllLessOrEqual< / a > < / div > < div class = "ttdeci" > bool AreAllLessOrEqual(const std::vector< T > & values, const T & value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02886" > constraint_solveri.h:2886< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a1988908f406c46ceaed7911f83aef59c" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a1988908f406c46ceaed7911f83aef59c" > operations_research::MakeLocalSearchOperator< / a > < / div > < div class = "ttdeci" > LocalSearchOperator * MakeLocalSearchOperator(Solver *solver, const std::vector< IntVar * > & vars, const std::vector< IntVar * > & secondary_vars, std::function< int(int64_t)> start_empty_path_class)< / div > < div class = "ttdoc" > Operator Factories.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l02284" > local_search.cc:2284< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a2df70eb91e349ca7fe8310de3a9bc9b9" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a2df70eb91e349ca7fe8310de3a9bc9b9" > operations_research::MakeUnaryDimensionFilter< / a > < / div > < div class = "ttdeci" > LocalSearchFilter * MakeUnaryDimensionFilter(Solver *solver, std::unique_ptr< UnaryDimensionChecker > checker, const std::string & dimension_name)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l03208" > local_search.cc:3208< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a362b5a75841c543eec770b731d6e6865" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a362b5a75841c543eec770b731d6e6865" > operations_research::MakeConstraintDemon3< / a > < / div > < div class = "ttdeci" > Demon * MakeConstraintDemon3(Solver *const s, T *const ct, void(T::*method)(P, Q, R), const std::string & name, P param1, Q param2, R param3)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00642" > constraint_solveri.h:642< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a38972723946490ea4df4e34298d8805d" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a38972723946490ea4df4e34298d8805d" > operations_research::AreAllNegative< / a > < / div > < div class = "ttdeci" > bool AreAllNegative(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02901" > constraint_solveri.h:2901< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a3aea406979285a28c91fd1ee8115af74" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a3aea406979285a28c91fd1ee8115af74" > operations_research::AreAllGreaterOrEqual< / a > < / div > < div class = "ttdeci" > bool AreAllGreaterOrEqual(const std::vector< T > & values, const T & value)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02876" > constraint_solveri.h:2876< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a3d434774c07815a25ffaa7adb343c19e" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a3d434774c07815a25ffaa7adb343c19e" > operations_research::IsIncreasing< / a > < / div > < div class = "ttdeci" > bool IsIncreasing(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02926" > constraint_solveri.h:2926< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a3de09f9134b976e5ba64751ac0f4440b" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a3de09f9134b976e5ba64751ac0f4440b" > operations_research::AreAllStrictlyPositive< / a > < / div > < div class = "ttdeci" > bool AreAllStrictlyPositive(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02906" > constraint_solveri.h:2906< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a3f4525e71a6b05d97c868f0832750a60" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a3f4525e71a6b05d97c868f0832750a60" > operations_research::IsArrayBoolean< / a > < / div > < div class = "ttdeci" > bool IsArrayBoolean(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02856" > constraint_solveri.h:2856< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2" > operations_research::VarTypes< / a > < / div > < div class = "ttdeci" > VarTypes< / div > < div class = "ttdoc" > This enum is used internally to do dynamic typing on subclasses of integer variables.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00115" > constraint_solveri.h:115< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a00e6c449ab034942ac313f8b48643f4b" > operations_research::BOOLEAN_VAR< / a > < / div > < div class = "ttdeci" > @ BOOLEAN_VAR< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00118" > constraint_solveri.h:118< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a0ae20d0967db3441a2b885e5074c4b36" > operations_research::VAR_TIMES_CST< / a > < / div > < div class = "ttdeci" > @ VAR_TIMES_CST< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00121" > constraint_solveri.h:121< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a16071208281c29136c1be022b7d170f0" > operations_research::VAR_ADD_CST< / a > < / div > < div class = "ttdeci" > @ VAR_ADD_CST< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00120" > constraint_solveri.h:120< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2a89a5a9b8c00be595eb52b4d464613d30" > operations_research::CST_SUB_VAR< / a > < / div > < div class = "ttdeci" > @ CST_SUB_VAR< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00122" > constraint_solveri.h:122< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2aa876f4fb4e5f7f0c5c48fcf66c9ce7ce" > operations_research::UNSPECIFIED< / a > < / div > < div class = "ttdeci" > @ UNSPECIFIED< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00116" > constraint_solveri.h:116< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ac84956f1086e3f828921e0b3d51d806b" > operations_research::CONST_VAR< / a > < / div > < div class = "ttdeci" > @ CONST_VAR< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00119" > constraint_solveri.h:119< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2ae8e4c6f3e5a6d22d24204ec432f57860" > operations_research::OPP_VAR< / a > < / div > < div class = "ttdeci" > @ OPP_VAR< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00123" > constraint_solveri.h:123< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2af2d15b703802d6a1f8f402f90de90dc6" > operations_research::TRACE_VAR< / a > < / div > < div class = "ttdeci" > @ TRACE_VAR< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00125" > constraint_solveri.h:124< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a403e52e933033645c3388146d5e2edd2afd9ce19c75c8a2e8ff4c7307eff08e38" > operations_research::DOMAIN_INT_VAR< / a > < / div > < div class = "ttdeci" > @ DOMAIN_INT_VAR< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00117" > constraint_solveri.h:117< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a54470bffc3ea32cc37d0222e5dbb62a6" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a54470bffc3ea32cc37d0222e5dbb62a6" > operations_research::AreAllBoundOrNull< / a > < / div > < div class = "ttdeci" > bool AreAllBoundOrNull(const std::vector< IntVar * > & vars, const std::vector< T > & values)< / div > < div class = "ttdoc" > Returns true if all the variables are assigned to a single value, or if their corresponding value is ...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02962" > constraint_solveri.h:2962< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a587a6a73cbcb4e4a4c7d3b596fa407aa" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a587a6a73cbcb4e4a4c7d3b596fa407aa" > operations_research::MaxVarArray< / a > < / div > < div class = "ttdeci" > int64_t MaxVarArray(const std::vector< IntVar * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02982" > constraint_solveri.h:2982< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a68441e43b6c0228145d1101db5f3c4de" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a68441e43b6c0228145d1101db5f3c4de" > operations_research::MakeConstraintDemon2< / a > < / div > < div class = "ttdeci" > Demon * MakeConstraintDemon2(Solver *const s, T *const ct, void(T::*method)(P, Q), const std::string & name, P param1, Q param2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00599" > constraint_solveri.h:599< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a6a001b36b291a4afe7dffdbb9194bc45" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a6a001b36b291a4afe7dffdbb9194bc45" > operations_research::MakeDelayedConstraintDemon0< / a > < / div > < div class = "ttdeci" > Demon * MakeDelayedConstraintDemon0(Solver *const s, T *const ct, void(T::*method)(), const std::string & name)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00682" > constraint_solveri.h:682< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a6c0bc84812eed9d626b00bc8fb5b9ae1" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a6c0bc84812eed9d626b00bc8fb5b9ae1" > operations_research::MakeDelayedConstraintDemon2< / a > < / div > < div class = "ttdeci" > Demon * MakeDelayedConstraintDemon2(Solver *const s, T *const ct, void(T::*method)(P, Q), const std::string & name, P param1, Q param2)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00762" > constraint_solveri.h:762< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a78ff06a9b302c6c96d8d917da235b749" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a78ff06a9b302c6c96d8d917da235b749" > operations_research::AreAllBoundTo< / a > < / div > < div class = "ttdeci" > bool AreAllBoundTo(const std::vector< IntVar * > & vars, int64_t value)< / div > < div class = "ttdoc" > Returns true if all variables are assigned to 'value'.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02973" > constraint_solveri.h:2973< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a79edaa5bfddfcd382d36a2ae25df798c" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a79edaa5bfddfcd382d36a2ae25df798c" > operations_research::FillValues< / a > < / div > < div class = "ttdeci" > void FillValues(const std::vector< IntVar * > & vars, std::vector< int64_t > *const values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03002" > constraint_solveri.h:3002< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a7abde7313cef64d25202a18f07481fc3" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a7abde7313cef64d25202a18f07481fc3" > operations_research::AreAllBooleans< / a > < / div > < div class = "ttdeci" > bool AreAllBooleans(const std::vector< IntVar * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02955" > constraint_solveri.h:2955< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a8351829c324863ddda52e201df4f9f84" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a8351829c324863ddda52e201df4f9f84" > operations_research::AreAllStrictlyNegative< / a > < / div > < div class = "ttdeci" > bool AreAllStrictlyNegative(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02911" > constraint_solveri.h:2911< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_a8e8f645f06f9749b562b6625cd822daa" > < div class = "ttname" > < a href = "namespaceoperations__research.html#a8e8f645f06f9749b562b6625cd822daa" > operations_research::MinVarArray< / a > < / div > < div class = "ttdeci" > int64_t MinVarArray(const std::vector< IntVar * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02992" > constraint_solveri.h:2992< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_aa213d8f884283e0d72712243cbbefa7c" > < div class = "ttname" > < a href = "namespaceoperations__research.html#aa213d8f884283e0d72712243cbbefa7c" > operations_research::MakeConstraintDemon0< / a > < / div > < div class = "ttdeci" > Demon * MakeConstraintDemon0(Solver *const s, T *const ct, void(T::*method)(), const std::string & name)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00519" > constraint_solveri.h:519< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_aafac7375c23337f25821aa6f86ca627c" > < div class = "ttname" > < a href = "namespaceoperations__research.html#aafac7375c23337f25821aa6f86ca627c" > operations_research::IsIncreasingContiguous< / a > < / div > < div class = "ttdeci" > bool IsIncreasingContiguous(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02916" > constraint_solveri.h:2916< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ab0ae787392a8dd8a499eb55ac0916aa4" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ab0ae787392a8dd8a499eb55ac0916aa4" > operations_research::AreAllNull< / a > < / div > < div class = "ttdeci" > bool AreAllNull(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02871" > constraint_solveri.h:2871< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ab62b402f767cda48eb67ef8b50397f8f" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ab62b402f767cda48eb67ef8b50397f8f" > operations_research::AreAllPositive< / a > < / div > < div class = "ttdeci" > bool AreAllPositive(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02896" > constraint_solveri.h:2896< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_abeac98dfd5ab1335f6d21a8d71bdfd51" > < div class = "ttname" > < a href = "namespaceoperations__research.html#abeac98dfd5ab1335f6d21a8d71bdfd51" > operations_research::ToInt64Vector< / a > < / div > < div class = "ttdeci" > std::vector< int64_t > ToInt64Vector(const std::vector< int > & input)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "utilities_8cc_source.html#l00828" > utilities.cc:828< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ac316c82f31293db18e25c809592908dd" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ac316c82f31293db18e25c809592908dd" > operations_research::MakeDelayedConstraintDemon1< / a > < / div > < div class = "ttdeci" > Demon * MakeDelayedConstraintDemon1(Solver *const s, T *const ct, void(T::*method)(P), const std::string & name, P param1)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00718" > constraint_solveri.h:718< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ad502b08bb4d69dfbaf025415310b8da8" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ad502b08bb4d69dfbaf025415310b8da8" > operations_research::SequenceVarLocalSearchOperatorTemplate< / a > < / div > < div class = "ttdeci" > VarLocalSearchOperator< SequenceVar, std::vector< int > , SequenceVarLocalSearchHandler > SequenceVarLocalSearchOperatorTemplate< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01148" > constraint_solveri.h:1148< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ade1945fe75ec08245775fc4df20153d6" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ade1945fe75ec08245775fc4df20153d6" > operations_research::PosIntDivDown< / a > < / div > < div class = "ttdeci" > int64_t PosIntDivDown(int64_t e, int64_t v)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03016" > constraint_solveri.h:3016< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_adf2aea6c68fe502389c9264b971b2f85" > < div class = "ttname" > < a href = "namespaceoperations__research.html#adf2aea6c68fe502389c9264b971b2f85" > operations_research::IsArrayInRange< / a > < / div > < div class = "ttdeci" > bool IsArrayInRange(const std::vector< IntVar * > & vars, T range_min, T range_max)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02936" > constraint_solveri.h:2936< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_adf85b9c9e168660e5f36d735d88f3955" > < div class = "ttname" > < a href = "namespaceoperations__research.html#adf85b9c9e168660e5f36d735d88f3955" > operations_research::kUnassigned< / a > < / div > < div class = "ttdeci" > static const int kUnassigned< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "routing_8cc_source.html#l00878" > routing.cc:878< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ae0190f4a9c848c207d0bff97f625fcd1" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ae0190f4a9c848c207d0bff97f625fcd1" > operations_research::MakeConstraintDemon1< / a > < / div > < div class = "ttdeci" > Demon * MakeConstraintDemon1(Solver *const s, T *const ct, void(T::*method)(P), const std::string & name, P param1)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00560" > constraint_solveri.h:560< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ae1de0a1f7cf121d53ee230f794ce51f5" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ae1de0a1f7cf121d53ee230f794ce51f5" > operations_research::MakePathStateFilter< / a > < / div > < div class = "ttdeci" > LocalSearchFilter * MakePathStateFilter(Solver *solver, std::unique_ptr< PathState > path_state, const std::vector< IntVar * > & nexts)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "local__search_8cc_source.html#l02960" > local_search.cc:2960< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ae3e4f71c4c79e0b4ec00c4e715a7c298" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ae3e4f71c4c79e0b4ec00c4e715a7c298" > operations_research::AreAllOnes< / a > < / div > < div class = "ttdeci" > bool AreAllOnes(const std::vector< T > & values)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02866" > constraint_solveri.h:2866< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_ae4c7a8bfc6877606e512d3279549f44d" > < div class = "ttname" > < a href = "namespaceoperations__research.html#ae4c7a8bfc6877606e512d3279549f44d" > operations_research::AreAllBound< / a > < / div > < div class = "ttdeci" > bool AreAllBound(const std::vector< IntVar * > & vars)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l02946" > constraint_solveri.h:2946< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_aee1401375b23909949cce272a3b787db" > < div class = "ttname" > < a href = "namespaceoperations__research.html#aee1401375b23909949cce272a3b787db" > operations_research::Hash1< / a > < / div > < div class = "ttdeci" > uint64_t Hash1(uint64_t value)< / div > < div class = "ttdoc" > Hash functions.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l00214" > constraint_solveri.h:214< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_af7c8c8d0b8a6e63b446a63628d790337" > < div class = "ttname" > < a href = "namespaceoperations__research.html#af7c8c8d0b8a6e63b446a63628d790337" > operations_research::AcceptUncheckedNeighbor< / a > < / div > < div class = "ttdeci" > void AcceptUncheckedNeighbor(Search *const search)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solver_8cc_source.html#l01359" > constraint_solver.cc:1359< / a > < / div > < / div >
< div class = "ttc" id = "anamespaceoperations__research_html_afb0903025d265c67199f5f09cee57ed0" > < div class = "ttname" > < a href = "namespaceoperations__research.html#afb0903025d265c67199f5f09cee57ed0" > operations_research::PosIntDivUp< / a > < / div > < div class = "ttdeci" > int64_t PosIntDivUp(int64_t e, int64_t v)< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03011" > constraint_solveri.h:3011< / a > < / div > < / div >
< div class = "ttc" id = "apack_8cc_html_a750b5d744c39a06bfb13e6eb010e35d0" > < div class = "ttname" > < a href = "pack_8cc.html#a750b5d744c39a06bfb13e6eb010e35d0" > index< / a > < / div > < div class = "ttdeci" > int index< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "pack_8cc_source.html#l00509" > pack.cc:509< / a > < / div > < / div >
< div class = "ttc" id = "aparser_8yy_8cc_html_a5a634cf4429798b1c921a81de8250051" > < div class = "ttname" > < a href = "parser_8yy_8cc.html#a5a634cf4429798b1c921a81de8250051" > input< / a > < / div > < div class = "ttdeci" > static int input(yyscan_t yyscanner)< / div > < / div >
< div class = "ttc" id = "aresource_8cc_html_a29fb0dd9484d890b12b280c41c150e20" > < div class = "ttname" > < a href = "resource_8cc.html#a29fb0dd9484d890b12b280c41c150e20" > demand< / a > < / div > < div class = "ttdeci" > int64_t demand< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "resource_8cc_source.html#l00125" > resource.cc:125< / a > < / div > < / div >
< div class = "ttc" id = "aresource_8cc_html_af12056bc2a8e3ec563f0940d87abbd2e" > < div class = "ttname" > < a href = "resource_8cc.html#af12056bc2a8e3ec563f0940d87abbd2e" > delta< / a > < / div > < div class = "ttdeci" > int64_t delta< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "resource_8cc_source.html#l01692" > resource.cc:1692< / a > < / div > < / div >
< div class = "ttc" id = "arouting__flow_8cc_html_a2acb49f4df5288066c43610bede123ec" > < div class = "ttname" > < a href = "routing__flow_8cc.html#a2acb49f4df5288066c43610bede123ec" > capacity< / a > < / div > < div class = "ttdeci" > int64_t capacity< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "routing__flow_8cc_source.html#l00151" > routing_flow.cc:151< / a > < / div > < / div >
< div class = "ttc" id = "asparse__submatrix_8cc_html_a4d53eac2ef2732c28fa9fb663e0c19a7" > < div class = "ttname" > < a href = "sparse__submatrix_8cc.html#a4d53eac2ef2732c28fa9fb663e0c19a7" > end< / a > < / div > < div class = "ttdeci" > std::optional< int64_t > end< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "sparse__submatrix_8cc_source.html#l00036" > sparse_submatrix.cc:36< / a > < / div > < / div >
< div class = "ttc" id = "asparse__submatrix_8cc_html_a9b7656b922ea4ec96097d7380c0e61fe" > < div class = "ttname" > < a href = "sparse__submatrix_8cc.html#a9b7656b922ea4ec96097d7380c0e61fe" > start< / a > < / div > < div class = "ttdeci" > int64_t start< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "sparse__submatrix_8cc_source.html#l00035" > sparse_submatrix.cc:35< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_local_search_filter_manager_1_1_filter_event_html" > < div class = "ttname" > < a href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html" > operations_research::LocalSearchFilterManager::FilterEvent< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01779" > constraint_solveri.h:1779< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_local_search_filter_manager_1_1_filter_event_html_a711d428ff2c91eab3c8d7b73ddd14d45" > < div class = "ttname" > < a href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html#a711d428ff2c91eab3c8d7b73ddd14d45" > operations_research::LocalSearchFilterManager::FilterEvent::filter< / a > < / div > < div class = "ttdeci" > LocalSearchFilter * filter< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01780" > constraint_solveri.h:1780< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_local_search_filter_manager_1_1_filter_event_html_afcbb97d8ff7afc40721ca14bd01b19c8" > < div class = "ttname" > < a href = "structoperations__research_1_1_local_search_filter_manager_1_1_filter_event.html#afcbb97d8ff7afc40721ca14bd01b19c8" > operations_research::LocalSearchFilterManager::FilterEvent::event_type< / a > < / div > < div class = "ttdeci" > FilterEventType event_type< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01781" > constraint_solveri.h:1781< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_path_operator_1_1_iteration_parameters_html" > < div class = "ttname" > < a href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html" > operations_research::PathOperator::IterationParameters< / a > < / div > < div class = "ttdoc" > Set of parameters used to configure how the neighnorhood is traversed.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01316" > constraint_solveri.h:1316< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_path_operator_1_1_iteration_parameters_html_a06ba9faa1da8bc11b9bad1b28184d66a" > < div class = "ttname" > < a href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a06ba9faa1da8bc11b9bad1b28184d66a" > operations_research::PathOperator::IterationParameters::accept_path_end_base< / a > < / div > < div class = "ttdeci" > bool accept_path_end_base< / div > < div class = "ttdoc" > True if path ends should be considered when iterating over neighbors.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01323" > constraint_solveri.h:1323< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_path_operator_1_1_iteration_parameters_html_a0e2c2f3c021b1d8cff2e0f0458f8ee29" > < div class = "ttname" > < a href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a0e2c2f3c021b1d8cff2e0f0458f8ee29" > operations_research::PathOperator::IterationParameters::number_of_base_nodes< / a > < / div > < div class = "ttdeci" > int number_of_base_nodes< / div > < div class = "ttdoc" > Number of nodes needed to define a neighbor.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01318" > constraint_solveri.h:1318< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_path_operator_1_1_iteration_parameters_html_a1581ad954b08df9d34aeab8c61baa926" > < div class = "ttname" > < a href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#a1581ad954b08df9d34aeab8c61baa926" > operations_research::PathOperator::IterationParameters::start_empty_path_class< / a > < / div > < div class = "ttdeci" > std::function< int(int64_t)> start_empty_path_class< / div > < div class = "ttdoc" > Callback returning an index such that if c1 = start_empty_path_class(StartNode(p1)),...< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01334" > constraint_solveri.h:1334< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_path_operator_1_1_iteration_parameters_html_ab789487f0da61ea5fffb910d587d18b3" > < div class = "ttname" > < a href = "structoperations__research_1_1_path_operator_1_1_iteration_parameters.html#ab789487f0da61ea5fffb910d587d18b3" > operations_research::PathOperator::IterationParameters::skip_locally_optimal_paths< / a > < / div > < div class = "ttdeci" > bool skip_locally_optimal_paths< / div > < div class = "ttdoc" > Skip paths which have been proven locally optimal.< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l01321" > constraint_solveri.h:1321< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_unary_dimension_checker_1_1_interval_html" > < div class = "ttname" > < a href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html" > operations_research::UnaryDimensionChecker::Interval< / a > < / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03393" > constraint_solveri.h:3393< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_unary_dimension_checker_1_1_interval_html_a26e6db9bcc64b584051ecc28171ed11f" > < div class = "ttname" > < a href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html#a26e6db9bcc64b584051ecc28171ed11f" > operations_research::UnaryDimensionChecker::Interval::max< / a > < / div > < div class = "ttdeci" > int64_t max< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03395" > constraint_solveri.h:3395< / a > < / div > < / div >
< div class = "ttc" id = "astructoperations__research_1_1_unary_dimension_checker_1_1_interval_html_ad10edae0a852d72fb76afb1c77735045" > < div class = "ttname" > < a href = "structoperations__research_1_1_unary_dimension_checker_1_1_interval.html#ad10edae0a852d72fb76afb1c77735045" > operations_research::UnaryDimensionChecker::Interval::min< / a > < / div > < div class = "ttdeci" > int64_t min< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "constraint__solveri_8h_source.html#l03394" > constraint_solveri.h:3394< / a > < / div > < / div >
< div class = "ttc" id = "atimer_8h_html" > < div class = "ttname" > < a href = "timer_8h.html" > timer.h< / a > < / div > < / div >
< div class = "ttc" id = "atuple__set_8h_html" > < div class = "ttname" > < a href = "tuple__set_8h.html" > tuple_set.h< / a > < / div > < / div >
< div class = "ttc" id = "avariable__and__expressions_8cc_html_a98c17ae8d99a73259ea78de8c4b66254" > < div class = "ttname" > < a href = "variable__and__expressions_8cc.html#a98c17ae8d99a73259ea78de8c4b66254" > constant< / a > < / div > < div class = "ttdeci" > const double constant< / div > < div class = "ttdef" > < b > Definition:< / b > < a href = "variable__and__expressions_8cc_source.html#l00139" > variable_and_expressions.cc:139< / a > < / div > < / div >
2021-01-26 11:28:50 +01:00
< / div > <!-- fragment --> < / div > <!-- contents -->
< / div > <!-- doc - content -->
2020-09-01 16:00:33 +02:00
<!-- HTML footer for doxygen 1.8.18 -->
<!-- start footer part -->
< div id = "nav-path" class = "navpath" > <!-- id is needed for treeview function! -->
< 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 = "constraint__solveri_8h.html" > constraint_solveri.h< / a > < / li >
< li class = "footer" > Generated by
< a href = "http://www.doxygen.org/index.html" >
2022-01-17 21:42:14 +01:00
< img class = "footer" src = "doxygen.png" alt = "doxygen" / > < / a > 1.9.3 < / li >
2020-09-01 16:00:33 +02:00
< / ul >
< / div >
< / body >
< / html >