349 lines
64 KiB
HTML
349 lines
64 KiB
HTML
<!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" lang="en-US">
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
|
|
<meta name="generator" content="Doxygen 1.13.2"/>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
<title>mupp: /workspace/LMU/musrfit/src/musredit_qt6/mupp/var/include/PProgram.hpp 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>
|
|
<script type="text/javascript" src="clipboard.js"></script>
|
|
<link href="navtree.css" rel="stylesheet" type="text/css"/>
|
|
<script type="text/javascript" src="resize.js"></script>
|
|
<script type="text/javascript" src="cookie.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" />
|
|
</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 id="projectrow">
|
|
<td id="projectalign">
|
|
<div id="projectname">mupp<span id="projectnumber"> 1.1.0</span>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<!-- end header part -->
|
|
<!-- Generated by Doxygen 1.13.2 -->
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
var searchBox = new SearchBox("searchBox", "search/",'.html');
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() { codefold.init(0); });
|
|
/* @license-end */
|
|
</script>
|
|
<script type="text/javascript" src="menudata.js"></script>
|
|
<script type="text/javascript" src="menu.js"></script>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function() {
|
|
initMenu('',true,false,'search.php','Search',false);
|
|
$(function() { init_search(); });
|
|
});
|
|
/* @license-end */
|
|
</script>
|
|
<div id="main-nav"></div>
|
|
<script type="text/javascript">
|
|
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
|
|
$(function(){ initResizable(false); });
|
|
/* @license-end */
|
|
</script>
|
|
<!-- 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">
|
|
<div id="MSearchResults">
|
|
<div class="SRPage">
|
|
<div id="SRIndex">
|
|
<div id="SRResults"></div>
|
|
<div class="SRStatus" id="Loading">Loading...</div>
|
|
<div class="SRStatus" id="Searching">Searching...</div>
|
|
<div class="SRStatus" id="NoMatches">No Matches</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="nav-path" class="navpath">
|
|
<ul>
|
|
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_6ae224fd33464317177bff8e805aed3f.html">musredit_qt6</a></li><li class="navelem"><a class="el" href="dir_83a32f49a02a169727e3032b3fd1abe7.html">mupp</a></li><li class="navelem"><a class="el" href="dir_9f4e5ed1c210486b9dfb0f023184754f.html">var</a></li><li class="navelem"><a class="el" href="dir_eb00b2cb95dc151c0acf678d05e521d9.html">include</a></li> </ul>
|
|
</div>
|
|
</div><!-- top -->
|
|
<div id="doc-content">
|
|
<div class="header">
|
|
<div class="headertitle"><div class="title">PProgram.hpp</div></div>
|
|
</div><!--header-->
|
|
<div class="contents">
|
|
<a href="PProgram_8hpp.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">/***************************************************************************</span></div>
|
|
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="comment"></span> </div>
|
|
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span><span class="comment"> PProgram.hpp</span></div>
|
|
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="comment"></span> </div>
|
|
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="comment"> Author: Andreas Suter</span></div>
|
|
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span><span class="comment"> e-mail: andreas.suter@psi.ch</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"> Based on Joel de Guzman example on calc7,</span></div>
|
|
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="comment"> see https://github.com/boostorg/spirit</span></div>
|
|
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="comment"></span> </div>
|
|
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="comment">***************************************************************************/</span></div>
|
|
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span> </div>
|
|
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span><span class="comment">/***************************************************************************</span></div>
|
|
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="comment"> * Copyright (C) 2023 by Andreas Suter *</span></div>
|
|
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="comment"> * andreas.suter@psi.ch *</span></div>
|
|
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span><span class="comment"> * *</span></div>
|
|
<div class="line"><a id="l00017" name="l00017"></a><span class="lineno"> 17</span><span class="comment"> * This program is free software; you can redistribute it and/or modify *</span></div>
|
|
<div class="line"><a id="l00018" name="l00018"></a><span class="lineno"> 18</span><span class="comment"> * it under the terms of the GNU General Public License as published by *</span></div>
|
|
<div class="line"><a id="l00019" name="l00019"></a><span class="lineno"> 19</span><span class="comment"> * the Free Software Foundation; either version 2 of the License, or *</span></div>
|
|
<div class="line"><a id="l00020" name="l00020"></a><span class="lineno"> 20</span><span class="comment"> * (at your option) any later version. *</span></div>
|
|
<div class="line"><a id="l00021" name="l00021"></a><span class="lineno"> 21</span><span class="comment"> * *</span></div>
|
|
<div class="line"><a id="l00022" name="l00022"></a><span class="lineno"> 22</span><span class="comment"> * This program is distributed in the hope that it will be useful, *</span></div>
|
|
<div class="line"><a id="l00023" name="l00023"></a><span class="lineno"> 23</span><span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of *</span></div>
|
|
<div class="line"><a id="l00024" name="l00024"></a><span class="lineno"> 24</span><span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *</span></div>
|
|
<div class="line"><a id="l00025" name="l00025"></a><span class="lineno"> 25</span><span class="comment"> * GNU General Public License for more details. *</span></div>
|
|
<div class="line"><a id="l00026" name="l00026"></a><span class="lineno"> 26</span><span class="comment"> * *</span></div>
|
|
<div class="line"><a id="l00027" name="l00027"></a><span class="lineno"> 27</span><span class="comment"> * You should have received a copy of the GNU General Public License *</span></div>
|
|
<div class="line"><a id="l00028" name="l00028"></a><span class="lineno"> 28</span><span class="comment"> * along with this program; if not, write to the *</span></div>
|
|
<div class="line"><a id="l00029" name="l00029"></a><span class="lineno"> 29</span><span class="comment"> * Free Software Foundation, Inc., *</span></div>
|
|
<div class="line"><a id="l00030" name="l00030"></a><span class="lineno"> 30</span><span class="comment"> * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *</span></div>
|
|
<div class="line"><a id="l00031" name="l00031"></a><span class="lineno"> 31</span><span class="comment"> ***************************************************************************/</span></div>
|
|
<div class="line"><a id="l00032" name="l00032"></a><span class="lineno"> 32</span> </div>
|
|
<div class="line"><a id="l00033" name="l00033"></a><span class="lineno"> 33</span><span class="preprocessor">#ifndef _PPROGRAM_HPP_</span></div>
|
|
<div class="line"><a id="l00034" name="l00034"></a><span class="lineno"> 34</span><span class="preprocessor">#define _PPROGRAM_HPP_</span></div>
|
|
<div class="line"><a id="l00035" name="l00035"></a><span class="lineno"> 35</span> </div>
|
|
<div class="line"><a id="l00036" name="l00036"></a><span class="lineno"> 36</span><span class="preprocessor">#include <string></span></div>
|
|
<div class="line"><a id="l00037" name="l00037"></a><span class="lineno"> 37</span><span class="preprocessor">#include <vector></span></div>
|
|
<div class="line"><a id="l00038" name="l00038"></a><span class="lineno"> 38</span><span class="preprocessor">#include <map></span></div>
|
|
<div class="line"><a id="l00039" name="l00039"></a><span class="lineno"> 39</span> </div>
|
|
<div class="line"><a id="l00040" name="l00040"></a><span class="lineno"> 40</span><span class="preprocessor">#include "<a class="code" href="PAst_8hpp.html">PAst.hpp</a>"</span></div>
|
|
<div class="line"><a id="l00041" name="l00041"></a><span class="lineno"> 41</span><span class="preprocessor">#include "<a class="code" href="PErrorHandler_8hpp.html">PErrorHandler.hpp</a>"</span></div>
|
|
<div class="line"><a id="l00042" name="l00042"></a><span class="lineno"> 42</span> </div>
|
|
<div class="line"><a id="l00043" name="l00043"></a><span class="lineno"> 43</span><span class="preprocessor">#include <boost/function.hpp></span></div>
|
|
<div class="line"><a id="l00044" name="l00044"></a><span class="lineno"> 44</span><span class="preprocessor">#include <boost/shared_ptr.hpp></span></div>
|
|
<div class="line"><a id="l00045" name="l00045"></a><span class="lineno"> 45</span><span class="preprocessor">#include <boost/phoenix/core.hpp></span></div>
|
|
<div class="line"><a id="l00046" name="l00046"></a><span class="lineno"> 46</span><span class="preprocessor">#include <boost/phoenix/function.hpp></span></div>
|
|
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"> 47</span><span class="preprocessor">#include <boost/phoenix/operator.hpp></span></div>
|
|
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span> </div>
|
|
<div class="foldopen" id="foldopen00049" data-start="{" data-end="}">
|
|
<div class="line"><a id="l00049" name="l00049"></a><span class="lineno"><a class="line" href="namespacemupp_1_1prog.html"> 49</a></span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespacemupp.html">mupp</a> { <span class="keyword">namespace </span><a class="code hl_namespace" href="namespacemupp_1_1prog.html">prog</a> {</div>
|
|
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"> 51</span></div>
|
|
<div class="foldopen" id="foldopen00064" data-start="{" data-end="};">
|
|
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html"> 64</a></span> <span class="keyword">class </span><a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a8efe83ce80a25c1cedb9d1300df75868">PVarHandler</a></div>
|
|
<div class="line"><a id="l00065" name="l00065"></a><span class="lineno"> 65</span> {</div>
|
|
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">public</span>:</div>
|
|
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a8efe83ce80a25c1cedb9d1300df75868"> 70</a></span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a8efe83ce80a25c1cedb9d1300df75868">PVarHandler</a>() : <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a473daae3a42856e779e0242c5fb57dde">fName</a>(<span class="stringliteral">""</span>) {}</div>
|
|
<div class="line"><a id="l00071" name="l00071"></a><span class="lineno"> 71</span></div>
|
|
<div class="line"><a id="l00076" name="l00076"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a003bfb652149a1e66269e3ba111fefc3"> 76</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a003bfb652149a1e66269e3ba111fefc3">SetName</a>(std::string name) { <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a473daae3a42856e779e0242c5fb57dde">fName</a> = name; }</div>
|
|
<div class="line"><a id="l00077" name="l00077"></a><span class="lineno"> 77</span></div>
|
|
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#af4d321b290cac0a3b795a53bb4258dc5"> 82</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#af4d321b290cac0a3b795a53bb4258dc5">SetValue</a>(std::vector<double> &dval) { <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">fValue</a> = dval; }</div>
|
|
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span></div>
|
|
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#af4d321b290cac0a3b795a53bb4258dc5">SetValue</a>(<span class="keywordtype">double</span> dval, <span class="keywordtype">unsigned</span> idx);</div>
|
|
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span></div>
|
|
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a9f7bfdd9d581440b98571b2cc5e3b031"> 95</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a9f7bfdd9d581440b98571b2cc5e3b031">SetError</a>(std::vector<double> &dval) { <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36">fError</a> = dval; }</div>
|
|
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span></div>
|
|
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">void</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a9f7bfdd9d581440b98571b2cc5e3b031">SetError</a>(<span class="keywordtype">double</span> dval, <span class="keywordtype">unsigned</span> idx);</div>
|
|
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span></div>
|
|
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a0cfd08206e5ead1c5572bb369529025f"> 108</a></span> std::string <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a0cfd08206e5ead1c5572bb369529025f">GetName</a>() { <span class="keywordflow">return</span> <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a473daae3a42856e779e0242c5fb57dde">fName</a>; }</div>
|
|
<div class="line"><a id="l00109" name="l00109"></a><span class="lineno"> 109</span></div>
|
|
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#ac01d6fae577d26249a1aec92a14fb519"> 114</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#ac01d6fae577d26249a1aec92a14fb519">GetSize</a>() { <span class="keywordflow">return</span> (<a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">fValue</a>.size() == <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36">fError</a>.size()) ? <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">fValue</a>.size() : 0; }</div>
|
|
<div class="line"><a id="l00115" name="l00115"></a><span class="lineno"> 115</span></div>
|
|
<div class="line"><a id="l00120" name="l00120"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a6e5b25e6a36cc3fb78cf483a77871a54"> 120</a></span> std::vector<double> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a6e5b25e6a36cc3fb78cf483a77871a54">GetValue</a>() { <span class="keywordflow">return</span> <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">fValue</a>; }</div>
|
|
<div class="line"><a id="l00121" name="l00121"></a><span class="lineno"> 121</span></div>
|
|
<div class="line"><a id="l00127" name="l00127"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a9feed9d1dcf33792b35aed0910afe943"> 127</a></span> <span class="keywordtype">double</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a9feed9d1dcf33792b35aed0910afe943">GetValue</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> idx) { <span class="keywordflow">return</span> (idx < <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">fValue</a>.size()) ? <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">fValue</a>[idx] : 0; }</div>
|
|
<div class="line"><a id="l00128" name="l00128"></a><span class="lineno"> 128</span></div>
|
|
<div class="line"><a id="l00133" name="l00133"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a375cd8660790445566badf45a1d0a9bc"> 133</a></span> std::vector<double> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#a375cd8660790445566badf45a1d0a9bc">GetError</a>() { <span class="keywordflow">return</span> <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36">fError</a>; }</div>
|
|
<div class="line"><a id="l00134" name="l00134"></a><span class="lineno"> 134</span></div>
|
|
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#ac9dbd6b2504dd3b3268d534692ef256c"> 140</a></span> <span class="keywordtype">double</span> <a class="code hl_function" href="classmupp_1_1prog_1_1PVarHandler.html#ac9dbd6b2504dd3b3268d534692ef256c">GetError</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> idx) { <span class="keywordflow">return</span> (idx < <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36">fError</a>.size()) ? <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36">fError</a>[idx] : 0; }</div>
|
|
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"> 141</span> </div>
|
|
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keyword">private</span>:</div>
|
|
<div class="line"><a id="l00143" name="l00143"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a473daae3a42856e779e0242c5fb57dde"> 143</a></span> std::string <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a473daae3a42856e779e0242c5fb57dde">fName</a>; </div>
|
|
<div class="line"><a id="l00144" name="l00144"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8"> 144</a></span> std::vector<double> <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">fValue</a>; </div>
|
|
<div class="line"><a id="l00145" name="l00145"></a><span class="lineno"><a class="line" href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36"> 145</a></span> std::vector<double> <a class="code hl_variable" href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36">fError</a>; </div>
|
|
<div class="line"><a id="l00146" name="l00146"></a><span class="lineno"> 146</span> };</div>
|
|
</div>
|
|
<div class="line"><a id="l00147" name="l00147"></a><span class="lineno"> 147</span></div>
|
|
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span></div>
|
|
<div class="foldopen" id="foldopen00164" data-start="{" data-end="};">
|
|
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgram.html"> 164</a></span> <span class="keyword">struct </span><a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#a4ed3d8842acf40a805c117f8663eb706">PProgram</a></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"><a class="line" href="structmupp_1_1prog_1_1PProgram.html#a2059bd84272c0d7461f3ef7fe7a9f7d1"> 166</a></span> <span class="keyword">typedef</span> <span class="keywordtype">bool</span> <a class="code hl_typedef" href="structmupp_1_1prog_1_1PProgram.html#a2059bd84272c0d7461f3ef7fe7a9f7d1">result_type</a>; </div>
|
|
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span></div>
|
|
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> <span class="keyword">template</span> <<span class="keyword">typename</span> PErrorHandler></div>
|
|
<div class="foldopen" id="foldopen00174" data-start="{" data-end="}">
|
|
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgram.html#a4ed3d8842acf40a805c117f8663eb706"> 174</a></span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#a4ed3d8842acf40a805c117f8663eb706">PProgram</a>(<a class="code hl_struct" href="structmupp_1_1PErrorHandler.html">PErrorHandler</a>& error_handler_)</div>
|
|
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> {</div>
|
|
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="keyword">using namespace </span>boost::phoenix::arg_names;</div>
|
|
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="keyword">namespace </span>phx = boost::phoenix;</div>
|
|
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keyword">using </span>boost::phoenix::function;</div>
|
|
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <a class="code hl_variable" href="structmupp_1_1prog_1_1PProgram.html#acc33c6b4894ffd04972f1489ceb630a8">error_handler</a> = function<PErrorHandler>(error_handler_)(</div>
|
|
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> <span class="stringliteral">"**ERROR** "</span>, _2, phx::cref(error_handler_.<a class="code hl_variable" href="structmupp_1_1PErrorHandler.html#a39f9f19bff3b3166e2631fb2dd6ea3bf">iters</a>)[_1]);</div>
|
|
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> }</div>
|
|
</div>
|
|
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span></div>
|
|
<div class="line"><a id="l00187" name="l00187"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0"> 187</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1nil.html">ast::nil</a>) { BOOST_ASSERT(0); <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
|
|
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span></div>
|
|
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<span class="keywordtype">double</span> x);</div>
|
|
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span></div>
|
|
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1assignment.html">ast::assignment</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span></div>
|
|
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1expression.html">ast::expression</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span></div>
|
|
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1function.html">ast::function</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span></div>
|
|
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1operation.html">ast::operation</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00223" name="l00223"></a><span class="lineno"> 223</span></div>
|
|
<div class="line"><a id="l00229" name="l00229"></a><span class="lineno"> 229</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1power.html">ast::power</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00230" name="l00230"></a><span class="lineno"> 230</span></div>
|
|
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_typedef" href="namespacemupp_1_1ast.html#a7b19dec7f1f65df80fe42573d506b051">ast::statement</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span></div>
|
|
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_typedef" href="namespacemupp_1_1ast.html#a70c0971fe1d0c227c4fbe28b6fd0b7fe">ast::statement_list</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span></div>
|
|
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1unary.html">ast::unary</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span></div>
|
|
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1variable.html">ast::variable</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span></div>
|
|
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1variable__declaration.html">ast::variable_declaration</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00265" name="l00265"></a><span class="lineno"> 265</span></div>
|
|
<div class="line"><a id="l00272" name="l00272"></a><span class="lineno"> 272</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#a78e06f33c3134f4667d526ea61dffa55">add_predef_var_values</a>(<span class="keyword">const</span> std::string &name,</div>
|
|
<div class="line"><a id="l00273" name="l00273"></a><span class="lineno"> 273</span> std::vector<double> &val,</div>
|
|
<div class="line"><a id="l00274" name="l00274"></a><span class="lineno"> 274</span> std::vector<double> &err);</div>
|
|
<div class="line"><a id="l00275" name="l00275"></a><span class="lineno"> 275</span></div>
|
|
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#ad504d1ae672e6c6fb5fb04af78fa58fb">add_var</a>(std::string <span class="keyword">const</span>& name);</div>
|
|
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span></div>
|
|
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#a07949a28d12922e7874e3436af5fed51">find_var</a>(std::string <span class="keyword">const</span> &name);</div>
|
|
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span></div>
|
|
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> <span class="keywordtype">bool</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#a07949a28d12922e7874e3436af5fed51">find_var</a>(std::string <span class="keyword">const</span> &name, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> &idx);</div>
|
|
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span></div>
|
|
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> std::string <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#a393c3bf37390319df841eb5120fd1e02">pos_to_var</a>(std::string <span class="keyword">const</span> &name, <span class="keywordtype">bool</span> &ok);</div>
|
|
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span></div>
|
|
<div class="line"><a id="l00311" name="l00311"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgram.html#a51381702964c1a0d92d76075d64592ce"> 311</a></span> std::vector<PVarHandler> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgram.html#a51381702964c1a0d92d76075d64592ce">getVars</a>() { <span class="keywordflow">return</span> <a class="code hl_variable" href="structmupp_1_1prog_1_1PProgram.html#a1b76d93277fe5e1422b3614e92887417">fVariable</a>; }</div>
|
|
<div class="line"><a id="l00312" name="l00312"></a><span class="lineno"> 312</span> </div>
|
|
<div class="line"><a id="l00313" name="l00313"></a><span class="lineno"> 313</span> <span class="keyword">private</span>:</div>
|
|
<div class="line"><a id="l00314" name="l00314"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgram.html#a1b76d93277fe5e1422b3614e92887417"> 314</a></span> std::vector<PVarHandler> <a class="code hl_variable" href="structmupp_1_1prog_1_1PProgram.html#a1b76d93277fe5e1422b3614e92887417">fVariable</a>; </div>
|
|
<div class="line"><a id="l00315" name="l00315"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgram.html#a8ba4b64aae4fab1d6970bc42d08bf172"> 315</a></span> std::map<int, std::string> <a class="code hl_variable" href="structmupp_1_1prog_1_1PProgram.html#a8ba4b64aae4fab1d6970bc42d08bf172">fVarPos</a>; </div>
|
|
<div class="line"><a id="l00316" name="l00316"></a><span class="lineno"> 316</span> </div>
|
|
<div class="line"><a id="l00317" name="l00317"></a><span class="lineno"> 317</span> boost::function<</div>
|
|
<div class="line"><a id="l00318" name="l00318"></a><span class="lineno"> 318</span> void(<span class="keywordtype">int</span> tag, std::string <span class="keyword">const</span>& what)></div>
|
|
<div class="line"><a id="l00319" name="l00319"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgram.html#acc33c6b4894ffd04972f1489ceb630a8"> 319</a></span> <a class="code hl_variable" href="structmupp_1_1prog_1_1PProgram.html#acc33c6b4894ffd04972f1489ceb630a8">error_handler</a>; </div>
|
|
<div class="line"><a id="l00320" name="l00320"></a><span class="lineno"> 320</span> };</div>
|
|
</div>
|
|
<div class="line"><a id="l00321" name="l00321"></a><span class="lineno"> 321</span></div>
|
|
<div class="line"><a id="l00323" name="l00323"></a><span class="lineno"> 323</span></div>
|
|
<div class="foldopen" id="foldopen00340" data-start="{" data-end="};">
|
|
<div class="line"><a id="l00340" name="l00340"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgEval.html"> 340</a></span> <span class="keyword">struct </span><a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a40396dbd1e4dd42ab5125770870ad9c4">PProgEval</a></div>
|
|
<div class="line"><a id="l00341" name="l00341"></a><span class="lineno"> 341</span> {</div>
|
|
<div class="line"><a id="l00342" name="l00342"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgEval.html#a2555f26758ad5f8ebe4c564198e8959b"> 342</a></span> <span class="keyword">typedef</span> std::vector<double> <a class="code hl_typedef" href="structmupp_1_1prog_1_1PProgEval.html#a2555f26758ad5f8ebe4c564198e8959b">result_type</a>; </div>
|
|
<div class="line"><a id="l00343" name="l00343"></a><span class="lineno"> 343</span></div>
|
|
<div class="line"><a id="l00348" name="l00348"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgEval.html#a40396dbd1e4dd42ab5125770870ad9c4"> 348</a></span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a40396dbd1e4dd42ab5125770870ad9c4">PProgEval</a>(std::vector<PVarHandler> var) : <a class="code hl_variable" href="structmupp_1_1prog_1_1PProgEval.html#adeb891c26db172970f2d4ef4f8eae557">fVariable</a>(var) {}</div>
|
|
<div class="line"><a id="l00349" name="l00349"></a><span class="lineno"> 349</span></div>
|
|
<div class="line"><a id="l00354" name="l00354"></a><span class="lineno"> 354</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1nil.html">ast::nil</a>);</div>
|
|
<div class="line"><a id="l00355" name="l00355"></a><span class="lineno"> 355</span></div>
|
|
<div class="line"><a id="l00361" name="l00361"></a><span class="lineno"> 361</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<span class="keywordtype">double</span> x);</div>
|
|
<div class="line"><a id="l00362" name="l00362"></a><span class="lineno"> 362</span></div>
|
|
<div class="line"><a id="l00368" name="l00368"></a><span class="lineno"> 368</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1assignment.html">ast::assignment</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00369" name="l00369"></a><span class="lineno"> 369</span></div>
|
|
<div class="line"><a id="l00375" name="l00375"></a><span class="lineno"> 375</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1expression.html">ast::expression</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00376" name="l00376"></a><span class="lineno"> 376</span></div>
|
|
<div class="line"><a id="l00382" name="l00382"></a><span class="lineno"> 382</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1function.html">ast::function</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00383" name="l00383"></a><span class="lineno"> 383</span></div>
|
|
<div class="line"><a id="l00390" name="l00390"></a><span class="lineno"> 390</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1operation.html">ast::operation</a> <span class="keyword">const</span> &x, std::vector<double> lhs);</div>
|
|
<div class="line"><a id="l00391" name="l00391"></a><span class="lineno"> 391</span></div>
|
|
<div class="line"><a id="l00397" name="l00397"></a><span class="lineno"> 397</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1power.html">ast::power</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00398" name="l00398"></a><span class="lineno"> 398</span></div>
|
|
<div class="line"><a id="l00404" name="l00404"></a><span class="lineno"> 404</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_typedef" href="namespacemupp_1_1ast.html#a7b19dec7f1f65df80fe42573d506b051">ast::statement</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00405" name="l00405"></a><span class="lineno"> 405</span></div>
|
|
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_typedef" href="namespacemupp_1_1ast.html#a70c0971fe1d0c227c4fbe28b6fd0b7fe">ast::statement_list</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span></div>
|
|
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"> 418</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1unary.html">ast::unary</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span></div>
|
|
<div class="line"><a id="l00425" name="l00425"></a><span class="lineno"> 425</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1variable.html">ast::variable</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00426" name="l00426"></a><span class="lineno"> 426</span></div>
|
|
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"> 432</span> std::vector<double> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">operator()</a>(<a class="code hl_struct" href="structmupp_1_1ast_1_1variable__declaration.html">ast::variable_declaration</a> <span class="keyword">const</span> &x);</div>
|
|
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"> 433</span></div>
|
|
<div class="line"><a id="l00440" name="l00440"></a><span class="lineno"> 440</span> <a class="code hl_class" href="classmupp_1_1prog_1_1PVarHandler.html">PVarHandler</a> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#afffa535a47f8d876459461218deb7e7f">getVar</a>(<span class="keyword">const</span> std::string name, <span class="keywordtype">bool</span> &ok);</div>
|
|
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno"> 441</span></div>
|
|
<div class="line"><a id="l00445" name="l00445"></a><span class="lineno"> 445</span> <span class="keywordtype">void</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#adb6d06905074e2cb51eef6b6a3172596">print_result</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="l00448" name="l00448"></a><span class="lineno"><a class="line" href="structmupp_1_1prog_1_1PProgEval.html#adeb891c26db172970f2d4ef4f8eae557"> 448</a></span> std::vector<PVarHandler> <a class="code hl_variable" href="structmupp_1_1prog_1_1PProgEval.html#adeb891c26db172970f2d4ef4f8eae557">fVariable</a>; </div>
|
|
<div class="line"><a id="l00449" name="l00449"></a><span class="lineno"> 449</span></div>
|
|
<div class="line"><a id="l00455" name="l00455"></a><span class="lineno"> 455</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code hl_function" href="structmupp_1_1prog_1_1PProgEval.html#a42c688f29af8b77c2bb1019dabe5641c">find_var</a>(std::string <span class="keyword">const</span> &name);</div>
|
|
<div class="line"><a id="l00456" name="l00456"></a><span class="lineno"> 456</span> };</div>
|
|
</div>
|
|
<div class="line"><a id="l00457" name="l00457"></a><span class="lineno"> 457</span>}}</div>
|
|
</div>
|
|
<div class="line"><a id="l00458" name="l00458"></a><span class="lineno"> 458</span> </div>
|
|
<div class="line"><a id="l00459" name="l00459"></a><span class="lineno"> 459</span><span class="preprocessor">#endif </span><span class="comment">// _PPROGRAM_HPP_</span></div>
|
|
<div class="ttc" id="aPAst_8hpp_html"><div class="ttname"><a href="PAst_8hpp.html">PAst.hpp</a></div></div>
|
|
<div class="ttc" id="aPErrorHandler_8hpp_html"><div class="ttname"><a href="PErrorHandler_8hpp.html">PErrorHandler.hpp</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html">mupp::prog::PVarHandler</a></div><div class="ttdoc">The PVarHandler class manages variable data during evaluation.</div><div class="ttdef"><b>Definition</b> <a href="#l00064">PProgram.hpp:65</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a003bfb652149a1e66269e3ba111fefc3"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a003bfb652149a1e66269e3ba111fefc3">mupp::prog::PVarHandler::SetName</a></div><div class="ttdeci">void SetName(std::string name)</div><div class="ttdoc">Sets the variable name.</div><div class="ttdef"><b>Definition</b> <a href="#l00076">PProgram.hpp:76</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a0cfd08206e5ead1c5572bb369529025f"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a0cfd08206e5ead1c5572bb369529025f">mupp::prog::PVarHandler::GetName</a></div><div class="ttdeci">std::string GetName()</div><div class="ttdoc">Gets the variable name.</div><div class="ttdef"><b>Definition</b> <a href="#l00108">PProgram.hpp:108</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a1c2a4116d285e428a5450a750ced9a36"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a1c2a4116d285e428a5450a750ced9a36">mupp::prog::PVarHandler::fError</a></div><div class="ttdeci">std::vector< double > fError</div><div class="ttdoc">Vector of error values (one per run)</div><div class="ttdef"><b>Definition</b> <a href="#l00145">PProgram.hpp:145</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a375cd8660790445566badf45a1d0a9bc"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a375cd8660790445566badf45a1d0a9bc">mupp::prog::PVarHandler::GetError</a></div><div class="ttdeci">std::vector< double > GetError()</div><div class="ttdoc">Gets all error values.</div><div class="ttdef"><b>Definition</b> <a href="#l00133">PProgram.hpp:133</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a473daae3a42856e779e0242c5fb57dde"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a473daae3a42856e779e0242c5fb57dde">mupp::prog::PVarHandler::fName</a></div><div class="ttdeci">std::string fName</div><div class="ttdoc">Variable name.</div><div class="ttdef"><b>Definition</b> <a href="#l00143">PProgram.hpp:143</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a6e5b25e6a36cc3fb78cf483a77871a54"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a6e5b25e6a36cc3fb78cf483a77871a54">mupp::prog::PVarHandler::GetValue</a></div><div class="ttdeci">std::vector< double > GetValue()</div><div class="ttdoc">Gets all values.</div><div class="ttdef"><b>Definition</b> <a href="#l00120">PProgram.hpp:120</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a8efe83ce80a25c1cedb9d1300df75868"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a8efe83ce80a25c1cedb9d1300df75868">mupp::prog::PVarHandler::PVarHandler</a></div><div class="ttdeci">PVarHandler()</div><div class="ttdoc">Default constructor initializing an unnamed variable.</div><div class="ttdef"><b>Definition</b> <a href="#l00070">PProgram.hpp:70</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a9f7bfdd9d581440b98571b2cc5e3b031"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a9f7bfdd9d581440b98571b2cc5e3b031">mupp::prog::PVarHandler::SetError</a></div><div class="ttdeci">void SetError(std::vector< double > &dval)</div><div class="ttdoc">Sets all error values for this variable.</div><div class="ttdef"><b>Definition</b> <a href="#l00095">PProgram.hpp:95</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_a9feed9d1dcf33792b35aed0910afe943"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#a9feed9d1dcf33792b35aed0910afe943">mupp::prog::PVarHandler::GetValue</a></div><div class="ttdeci">double GetValue(unsigned int idx)</div><div class="ttdoc">Gets a single value at a specific index.</div><div class="ttdef"><b>Definition</b> <a href="#l00127">PProgram.hpp:127</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_ac01d6fae577d26249a1aec92a14fb519"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#ac01d6fae577d26249a1aec92a14fb519">mupp::prog::PVarHandler::GetSize</a></div><div class="ttdeci">unsigned int GetSize()</div><div class="ttdoc">Gets the size of the variable data.</div><div class="ttdef"><b>Definition</b> <a href="#l00114">PProgram.hpp:114</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_ac9dbd6b2504dd3b3268d534692ef256c"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#ac9dbd6b2504dd3b3268d534692ef256c">mupp::prog::PVarHandler::GetError</a></div><div class="ttdeci">double GetError(unsigned int idx)</div><div class="ttdoc">Gets a single error value at a specific index.</div><div class="ttdef"><b>Definition</b> <a href="#l00140">PProgram.hpp:140</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_ada9f2edf98ac75d4071318eb3c7c10c8"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#ada9f2edf98ac75d4071318eb3c7c10c8">mupp::prog::PVarHandler::fValue</a></div><div class="ttdeci">std::vector< double > fValue</div><div class="ttdoc">Vector of values (one per run)</div><div class="ttdef"><b>Definition</b> <a href="#l00144">PProgram.hpp:144</a></div></div>
|
|
<div class="ttc" id="aclassmupp_1_1prog_1_1PVarHandler_html_af4d321b290cac0a3b795a53bb4258dc5"><div class="ttname"><a href="classmupp_1_1prog_1_1PVarHandler.html#af4d321b290cac0a3b795a53bb4258dc5">mupp::prog::PVarHandler::SetValue</a></div><div class="ttdeci">void SetValue(std::vector< double > &dval)</div><div class="ttdoc">Sets all values for this variable.</div><div class="ttdef"><b>Definition</b> <a href="#l00082">PProgram.hpp:82</a></div></div>
|
|
<div class="ttc" id="anamespacemupp_1_1ast_html_a70c0971fe1d0c227c4fbe28b6fd0b7fe"><div class="ttname"><a href="namespacemupp_1_1ast.html#a70c0971fe1d0c227c4fbe28b6fd0b7fe">mupp::ast::statement_list</a></div><div class="ttdeci">std::list< statement > statement_list</div><div class="ttdoc">Type alias for a list of statements forming a program.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00268">PAst.hpp:268</a></div></div>
|
|
<div class="ttc" id="anamespacemupp_1_1ast_html_a7b19dec7f1f65df80fe42573d506b051"><div class="ttname"><a href="namespacemupp_1_1ast.html#a7b19dec7f1f65df80fe42573d506b051">mupp::ast::statement</a></div><div class="ttdeci">boost::variant< variable_declaration, assignment > statement</div><div class="ttdoc">Variant type representing a single statement.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00260">PAst.hpp:260</a></div></div>
|
|
<div class="ttc" id="anamespacemupp_1_1prog_html"><div class="ttname"><a href="namespacemupp_1_1prog.html">mupp::prog</a></div><div class="ttdef"><b>Definition</b> <a href="#l00049">PProgram.hpp:49</a></div></div>
|
|
<div class="ttc" id="anamespacemupp_html"><div class="ttname"><a href="namespacemupp.html">mupp</a></div><div class="ttdef"><b>Definition</b> <a href="PAnnotation_8hpp_source.html#l00042">PAnnotation.hpp:43</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1PErrorHandler_html"><div class="ttname"><a href="structmupp_1_1PErrorHandler.html">mupp::PErrorHandler</a></div><div class="ttdoc">The PErrorHandler struct handles parsing and semantic errors.</div><div class="ttdef"><b>Definition</b> <a href="PErrorHandler_8hpp_source.html#l00059">PErrorHandler.hpp:60</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1PErrorHandler_html_a39f9f19bff3b3166e2631fb2dd6ea3bf"><div class="ttname"><a href="structmupp_1_1PErrorHandler.html#a39f9f19bff3b3166e2631fb2dd6ea3bf">mupp::PErrorHandler::iters</a></div><div class="ttdeci">std::vector< Iterator > iters</div><div class="ttdoc">Vector mapping AST node IDs to source positions (used by PAnnotation)</div><div class="ttdef"><b>Definition</b> <a href="PErrorHandler_8hpp_source.html#l00160">PErrorHandler.hpp:160</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1assignment_html"><div class="ttname"><a href="structmupp_1_1ast_1_1assignment.html">mupp::ast::assignment</a></div><div class="ttdoc">Represents an assignment statement.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00233">PAst.hpp:234</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1expression_html"><div class="ttname"><a href="structmupp_1_1ast_1_1expression.html">mupp::ast::expression</a></div><div class="ttdoc">Represents a complete expression with operator precedence.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00197">PAst.hpp:198</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1function_html"><div class="ttname"><a href="structmupp_1_1ast_1_1function.html">mupp::ast::function</a></div><div class="ttdoc">Represents a function call with a single argument.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00208">PAst.hpp:209</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1nil_html"><div class="ttname"><a href="structmupp_1_1ast_1_1nil.html">mupp::ast::nil</a></div><div class="ttdoc">Represents an empty/null AST node.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00123">PAst.hpp:123</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1operation_html"><div class="ttname"><a href="structmupp_1_1ast_1_1operation.html">mupp::ast::operation</a></div><div class="ttdoc">Represents a binary operation with an operator and right operand.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00184">PAst.hpp:185</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1power_html"><div class="ttname"><a href="structmupp_1_1ast_1_1power.html">mupp::ast::power</a></div><div class="ttdoc">Represents a power operation.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00220">PAst.hpp:221</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1unary_html"><div class="ttname"><a href="structmupp_1_1ast_1_1unary.html">mupp::ast::unary</a></div><div class="ttdoc">Represents a unary operation applied to an operand.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00172">PAst.hpp:173</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1variable__declaration_html"><div class="ttname"><a href="structmupp_1_1ast_1_1variable__declaration.html">mupp::ast::variable_declaration</a></div><div class="ttdoc">Represents a variable declaration with optional initialization.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00246">PAst.hpp:247</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1ast_1_1variable_html"><div class="ttname"><a href="structmupp_1_1ast_1_1variable.html">mupp::ast::variable</a></div><div class="ttdoc">Represents a variable in an expression.</div><div class="ttdef"><b>Definition</b> <a href="PAst_8hpp_source.html#l00138">PAst.hpp:139</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgEval_html_a2555f26758ad5f8ebe4c564198e8959b"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgEval.html#a2555f26758ad5f8ebe4c564198e8959b">mupp::prog::PProgEval::result_type</a></div><div class="ttdeci">std::vector< double > result_type</div><div class="ttdoc">Return type for all visitor methods (vector of values)</div><div class="ttdef"><b>Definition</b> <a href="#l00342">PProgram.hpp:342</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgEval_html_a40396dbd1e4dd42ab5125770870ad9c4"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgEval.html#a40396dbd1e4dd42ab5125770870ad9c4">mupp::prog::PProgEval::PProgEval</a></div><div class="ttdeci">PProgEval(std::vector< PVarHandler > var)</div><div class="ttdoc">Constructor that initializes the evaluator with variables.</div><div class="ttdef"><b>Definition</b> <a href="#l00348">PProgram.hpp:348</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgEval_html_a42c688f29af8b77c2bb1019dabe5641c"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgEval.html#a42c688f29af8b77c2bb1019dabe5641c">mupp::prog::PProgEval::find_var</a></div><div class="ttdeci">unsigned int find_var(std::string const &name)</div><div class="ttdoc">Finds a variable index by name.</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00665">PProgram.cpp:665</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgEval_html_a73c08a3963be37d9f5b0f378a9b9d92b"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgEval.html#a73c08a3963be37d9f5b0f378a9b9d92b">mupp::prog::PProgEval::operator()</a></div><div class="ttdeci">std::vector< double > operator()(ast::nil)</div><div class="ttdoc">Evaluates a nil node (should never be called).</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00338">PProgram.cpp:338</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgEval_html_adb6d06905074e2cb51eef6b6a3172596"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgEval.html#adb6d06905074e2cb51eef6b6a3172596">mupp::prog::PProgEval::print_result</a></div><div class="ttdeci">void print_result()</div><div class="ttdoc">Prints all variable results to standard output (debugging).</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00701">PProgram.cpp:701</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgEval_html_adeb891c26db172970f2d4ef4f8eae557"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgEval.html#adeb891c26db172970f2d4ef4f8eae557">mupp::prog::PProgEval::fVariable</a></div><div class="ttdeci">std::vector< PVarHandler > fVariable</div><div class="ttdoc">Variable table with values and errors.</div><div class="ttdef"><b>Definition</b> <a href="#l00448">PProgram.hpp:448</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgEval_html_afffa535a47f8d876459461218deb7e7f"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgEval.html#afffa535a47f8d876459461218deb7e7f">mupp::prog::PProgEval::getVar</a></div><div class="ttdeci">PVarHandler getVar(const std::string name, bool &ok)</div><div class="ttdoc">Retrieves a variable by name after evaluation.</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00685">PProgram.cpp:685</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a07949a28d12922e7874e3436af5fed51"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a07949a28d12922e7874e3436af5fed51">mupp::prog::PProgram::find_var</a></div><div class="ttdeci">bool find_var(std::string const &name)</div><div class="ttdoc">Checks if a variable exists in the symbol table.</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00285">PProgram.cpp:285</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a1b76d93277fe5e1422b3614e92887417"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a1b76d93277fe5e1422b3614e92887417">mupp::prog::PProgram::fVariable</a></div><div class="ttdeci">std::vector< PVarHandler > fVariable</div><div class="ttdoc">Symbol table of declared variables.</div><div class="ttdef"><b>Definition</b> <a href="#l00314">PProgram.hpp:314</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a2059bd84272c0d7461f3ef7fe7a9f7d1"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a2059bd84272c0d7461f3ef7fe7a9f7d1">mupp::prog::PProgram::result_type</a></div><div class="ttdeci">bool result_type</div><div class="ttdoc">Return type for all visitor methods.</div><div class="ttdef"><b>Definition</b> <a href="#l00166">PProgram.hpp:166</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a393c3bf37390319df841eb5120fd1e02"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a393c3bf37390319df841eb5120fd1e02">mupp::prog::PProgram::pos_to_var</a></div><div class="ttdeci">std::string pos_to_var(std::string const &name, bool &ok)</div><div class="ttdoc">Converts position-based variable reference to variable name.</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00313">PProgram.cpp:313</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a4ed3d8842acf40a805c117f8663eb706"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a4ed3d8842acf40a805c117f8663eb706">mupp::prog::PProgram::PProgram</a></div><div class="ttdeci">PProgram(PErrorHandler &error_handler_)</div><div class="ttdoc">Constructor that sets up the error handler.</div><div class="ttdef"><b>Definition</b> <a href="#l00174">PProgram.hpp:174</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a51381702964c1a0d92d76075d64592ce"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a51381702964c1a0d92d76075d64592ce">mupp::prog::PProgram::getVars</a></div><div class="ttdeci">std::vector< PVarHandler > getVars()</div><div class="ttdoc">Gets all variables from the symbol table.</div><div class="ttdef"><b>Definition</b> <a href="#l00311">PProgram.hpp:311</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a78e06f33c3134f4667d526ea61dffa55"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a78e06f33c3134f4667d526ea61dffa55">mupp::prog::PProgram::add_predef_var_values</a></div><div class="ttdeci">void add_predef_var_values(const std::string &name, std::vector< double > &val, std::vector< double > &err)</div><div class="ttdoc">Injects predefined variable values from collection data.</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00261">PProgram.cpp:261</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_a8ba4b64aae4fab1d6970bc42d08bf172"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#a8ba4b64aae4fab1d6970bc42d08bf172">mupp::prog::PProgram::fVarPos</a></div><div class="ttdeci">std::map< int, std::string > fVarPos</div><div class="ttdoc">Map from position index to variable name.</div><div class="ttdef"><b>Definition</b> <a href="#l00315">PProgram.hpp:315</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_acc33c6b4894ffd04972f1489ceb630a8"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#acc33c6b4894ffd04972f1489ceb630a8">mupp::prog::PProgram::error_handler</a></div><div class="ttdeci">boost::function< void(int tag, std::string const &what)> error_handler</div><div class="ttdoc">Error handler function for reporting semantic errors.</div><div class="ttdef"><b>Definition</b> <a href="#l00319">PProgram.hpp:319</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_ad504d1ae672e6c6fb5fb04af78fa58fb"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#ad504d1ae672e6c6fb5fb04af78fa58fb">mupp::prog::PProgram::add_var</a></div><div class="ttdeci">void add_var(std::string const &name)</div><div class="ttdoc">Adds a variable to the symbol table.</div><div class="ttdef"><b>Definition</b> <a href="PProgram_8cpp_source.html#l00275">PProgram.cpp:275</a></div></div>
|
|
<div class="ttc" id="astructmupp_1_1prog_1_1PProgram_html_ad798ff0d1bdc164d9df57befe061ccb0"><div class="ttname"><a href="structmupp_1_1prog_1_1PProgram.html#ad798ff0d1bdc164d9df57befe061ccb0">mupp::prog::PProgram::operator()</a></div><div class="ttdeci">bool operator()(ast::nil)</div><div class="ttdoc">Visitor for nil AST nodes (should never be called).</div><div class="ttdef"><b>Definition</b> <a href="#l00187">PProgram.hpp:187</a></div></div>
|
|
</div><!-- fragment --></div><!-- contents -->
|
|
<!-- start footer part -->
|
|
<hr class="footer"/><address class="footer"><small>
|
|
Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.13.2
|
|
</small></address>
|
|
</div><!-- doc-content -->
|
|
</body>
|
|
</html>
|