-
Notifications
You must be signed in to change notification settings - Fork 0
/
BinaryVxcoreParser_8h_source.html
227 lines (227 loc) · 45.7 KB
/
BinaryVxcoreParser_8h_source.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
<!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.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>ROSE: BinaryVxcoreParser.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<link rel="search" href="search_opensearch.php?v=opensearch.xml" type="application/opensearchdescription+xml" title="ROSE"/>
<link href="roseDoxygen.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">ROSE<span id="projectnumber"> 0.11.145.141</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<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" 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,true,'search.html','Search');
$(document).ready(function() {
if ($('.searchresults').length > 0) { searchBox.DOMSearchField().focus(); }
});
});
/* @license-end */
</script>
<div id="main-nav"></div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
$(document).ready(function() { init_codefold(0); });
/* @license-end */
</script>
<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_8509b06bafa958d2011203a730bf5778.html">frontend</a></li><li class="navelem"><a class="el" href="dir_b62a1bc67eab3260d224e50e93f4dae9.html">BinaryFormats</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle"><div class="title">BinaryVxcoreParser.h</div></div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a id="l00001" name="l00001"></a><span class="lineno"> 1</span><span class="preprocessor">#ifndef ROSE_BinaryAnalysis_VxcoreParser_H</span></div>
<div class="line"><a id="l00002" name="l00002"></a><span class="lineno"> 2</span><span class="preprocessor">#define ROSE_BinaryAnalysis_VxcoreParser_H</span></div>
<div class="line"><a id="l00003" name="l00003"></a><span class="lineno"> 3</span> </div>
<div class="line"><a id="l00004" name="l00004"></a><span class="lineno"> 4</span><span class="preprocessor">#include <featureTests.h></span></div>
<div class="line"><a id="l00005" name="l00005"></a><span class="lineno"> 5</span><span class="preprocessor">#ifdef ROSE_ENABLE_BINARY_ANALYSIS</span></div>
<div class="line"><a id="l00006" name="l00006"></a><span class="lineno"> 6</span> </div>
<div class="line"><a id="l00007" name="l00007"></a><span class="lineno"> 7</span><span class="preprocessor">#include <Rose/BinaryAnalysis/InstructionSemantics/BaseSemantics/RegisterState.h></span></div>
<div class="line"><a id="l00008" name="l00008"></a><span class="lineno"> 8</span><span class="preprocessor">#include <boost/filesystem.hpp></span></div>
<div class="line"><a id="l00009" name="l00009"></a><span class="lineno"> 9</span><span class="preprocessor">#include <boost/lexical_cast.hpp></span></div>
<div class="line"><a id="l00010" name="l00010"></a><span class="lineno"> 10</span><span class="preprocessor">#include <Rose/Diagnostics.h></span></div>
<div class="line"><a id="l00011" name="l00011"></a><span class="lineno"> 11</span><span class="preprocessor">#include <Rose/BinaryAnalysis/MemoryMap.h></span></div>
<div class="line"><a id="l00012" name="l00012"></a><span class="lineno"> 12</span><span class="preprocessor">#include <Rose/StringUtility.h></span></div>
<div class="line"><a id="l00013" name="l00013"></a><span class="lineno"> 13</span> </div>
<div class="line"><a id="l00014" name="l00014"></a><span class="lineno"> 14</span><span class="keyword">namespace </span><a class="code hl_namespace" href="namespaceRose.html">Rose</a> {</div>
<div class="line"><a id="l00015" name="l00015"></a><span class="lineno"> 15</span><span class="keyword">namespace </span>BinaryAnalysis {</div>
<div class="line"><a id="l00016" name="l00016"></a><span class="lineno"> 16</span> </div>
<div class="foldopen" id="foldopen00047" data-start="{" data-end="};">
<div class="line"><a id="l00047" name="l00047"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html"> 47</a></span><span class="keyword">class </span><a class="code hl_class" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html">VxcoreParser</a> {</div>
<div class="line"><a id="l00048" name="l00048"></a><span class="lineno"> 48</span><span class="keyword">public</span>:</div>
<div class="foldopen" id="foldopen00050" data-start="{" data-end="};">
<div class="line"><a id="l00050" name="l00050"></a><span class="lineno"><a class="line" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html"> 50</a></span> <span class="keyword">struct </span><a class="code hl_struct" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html">Settings</a> {</div>
<div class="line"><a id="l00051" name="l00051"></a><span class="lineno"><a class="line" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#a2b6069aa35251ff65aab3f4dee3ae4ff"> 51</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#a2b6069aa35251ff65aab3f4dee3ae4ff">version</a>; </div>
<div class="line"><a id="l00052" name="l00052"></a><span class="lineno"><a class="line" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#ab46e3c29ec22c921cecfdf3037f1da8a"> 52</a></span> <a class="code hl_class" href="classSawyer_1_1Optional.html">Sawyer::Optional<unsigned></a> <a class="code hl_variable" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#ab46e3c29ec22c921cecfdf3037f1da8a">protOverride</a>; </div>
<div class="line"><a id="l00053" name="l00053"></a><span class="lineno"><a class="line" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#a48563a956ca72e6e7ad4324fc1d2313d"> 53</a></span> <span class="keywordtype">unsigned</span> <a class="code hl_variable" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#a48563a956ca72e6e7ad4324fc1d2313d">protDefault</a>; </div>
<div class="line"><a id="l00055" name="l00055"></a><span class="lineno"> 55</span> <a class="code hl_struct" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html">Settings</a>()</div>
<div class="line"><a id="l00056" name="l00056"></a><span class="lineno"> 56</span> : <a class="code hl_variable" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#a2b6069aa35251ff65aab3f4dee3ae4ff">version</a>(1) {}</div>
<div class="line"><a id="l00057" name="l00057"></a><span class="lineno"> 57</span> };</div>
</div>
<div class="line"><a id="l00058" name="l00058"></a><span class="lineno"> 58</span> </div>
<div class="foldopen" id="foldopen00060" data-start="{" data-end="};">
<div class="line"><a id="l00060" name="l00060"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html"> 60</a></span> <span class="keyword">class </span><a class="code hl_class" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html">Exception</a>: <span class="keyword">public</span> <a class="code hl_class" href="classRose_1_1Exception.html">Rose::Exception</a> {</div>
<div class="line"><a id="l00061" name="l00061"></a><span class="lineno"> 61</span> boost::filesystem::path fileName_;</div>
<div class="line"><a id="l00062" name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">size_t</span> offset_;</div>
<div class="line"><a id="l00063" name="l00063"></a><span class="lineno"> 63</span> </div>
<div class="line"><a id="l00064" name="l00064"></a><span class="lineno"> 64</span> <span class="keyword">public</span>:</div>
<div class="foldopen" id="foldopen00066" data-start="{" data-end="}">
<div class="line"><a id="l00066" name="l00066"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#a1008172c2fbcc0e147d5d4cafce0b904"> 66</a></span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#a1008172c2fbcc0e147d5d4cafce0b904">Exception</a>(<span class="keyword">const</span> boost::filesystem::path &fileName, <span class="keywordtype">size_t</span> offset, <span class="keyword">const</span> std::string &what)</div>
<div class="line"><a id="l00067" name="l00067"></a><span class="lineno"> 67</span> : <a class="code hl_namespace" href="namespaceRose.html">Rose</a>::<a class="code hl_class" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html">Exception</a>(what), fileName_(fileName), offset_(offset) {}</div>
</div>
<div class="line"><a id="l00068" name="l00068"></a><span class="lineno"> 68</span> </div>
<div class="line"><a id="l00069" name="l00069"></a><span class="lineno"> 69</span> <a class="code hl_class" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html">~Exception</a>() throw () {}</div>
<div class="line"><a id="l00070" name="l00070"></a><span class="lineno"> 70</span> </div>
<div class="foldopen" id="foldopen00072" data-start="{" data-end="}">
<div class="line"><a id="l00072" name="l00072"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#adb227f10831c376d1cadcf89f2e0d522"> 72</a></span> std::string <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#adb227f10831c376d1cadcf89f2e0d522">toString</a>()<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00073" name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">return</span> <a class="code hl_function" href="namespaceRose_1_1StringUtility.html#a3aed317913b7f65d80a2c76c5c019c8b">StringUtility::cEscape</a>(fileName_.string()) + <span class="stringliteral">":"</span> + boost::lexical_cast<std::string>(offset_) + <span class="stringliteral">": "</span> + what();</div>
<div class="line"><a id="l00074" name="l00074"></a><span class="lineno"> 74</span> }</div>
</div>
<div class="line"><a id="l00075" name="l00075"></a><span class="lineno"> 75</span> </div>
<div class="foldopen" id="foldopen00079" data-start="{" data-end="}">
<div class="line"><a id="l00079" name="l00079"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#a1c998201305e0a715d73a64fad56e804"> 79</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#a1c998201305e0a715d73a64fad56e804">print</a>(std::ostream &out)<span class="keyword"> const </span>{</div>
<div class="line"><a id="l00080" name="l00080"></a><span class="lineno"> 80</span> out <<<a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#adb227f10831c376d1cadcf89f2e0d522">toString</a>();</div>
<div class="line"><a id="l00081" name="l00081"></a><span class="lineno"> 81</span> }</div>
</div>
<div class="line"><a id="l00082" name="l00082"></a><span class="lineno"> 82</span> </div>
<div class="line"><a id="l00083" name="l00083"></a><span class="lineno"> 83</span> <span class="keyword">friend</span> std::ostream& operator<<(std::ostream &out, <span class="keyword">const</span> <a class="code hl_class" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html">Exception</a> &e) {</div>
<div class="line"><a id="l00084" name="l00084"></a><span class="lineno"> 84</span> e.<a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#a1c998201305e0a715d73a64fad56e804">print</a>(out);</div>
<div class="line"><a id="l00085" name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">return</span> out;</div>
<div class="line"><a id="l00086" name="l00086"></a><span class="lineno"> 86</span> }</div>
<div class="line"><a id="l00087" name="l00087"></a><span class="lineno"> 87</span> };</div>
</div>
<div class="line"><a id="l00088" name="l00088"></a><span class="lineno"> 88</span> </div>
<div class="line"><a id="l00089" name="l00089"></a><span class="lineno"> 89</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00090" name="l00090"></a><span class="lineno"> 90</span> <span class="comment">// Message headers for version 2.</span></div>
<div class="line"><a id="l00091" name="l00091"></a><span class="lineno"> 91</span> <span class="keyword">struct </span>HeaderVersion2 {</div>
<div class="line"><a id="l00092" name="l00092"></a><span class="lineno"> 92</span> uint8_t version; <span class="comment">// must be 2</span></div>
<div class="line"><a id="l00093" name="l00093"></a><span class="lineno"> 93</span> uint8_t unused0;</div>
<div class="line"><a id="l00094" name="l00094"></a><span class="lineno"> 94</span> uint8_t unused1;</div>
<div class="line"><a id="l00095" name="l00095"></a><span class="lineno"> 95</span> uint8_t mapFlags; <span class="comment">// MemoryMap::{READABLE,WRITABLE,EXECUTABLE}</span></div>
<div class="line"><a id="l00096" name="l00096"></a><span class="lineno"> 96</span> uint32_t payloadSize; <span class="comment">// little-endian</span></div>
<div class="line"><a id="l00097" name="l00097"></a><span class="lineno"> 97</span> uint64_t addr; <span class="comment">// little-endian</span></div>
<div class="line"><a id="l00098" name="l00098"></a><span class="lineno"> 98</span> };</div>
<div class="line"><a id="l00099" name="l00099"></a><span class="lineno"> 99</span> </div>
<div class="line"><a id="l00100" name="l00100"></a><span class="lineno"> 100</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00101" name="l00101"></a><span class="lineno"> 101</span> Settings settings_;</div>
<div class="line"><a id="l00102" name="l00102"></a><span class="lineno"> 102</span> std::string isaName_; <span class="comment">// Parsed instruction set architecture name</span></div>
<div class="line"><a id="l00103" name="l00103"></a><span class="lineno"> 103</span> </div>
<div class="line"><a id="l00104" name="l00104"></a><span class="lineno"> 104</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00105" name="l00105"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a3c33dba1985c752c508893b53bf189c1"> 105</a></span> <span class="keyword">static</span> <a class="code hl_class" href="classSawyer_1_1Message_1_1Facility.html">Sawyer::Message::Facility</a> <a class="code hl_variable" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a3c33dba1985c752c508893b53bf189c1">mlog</a>; </div>
<div class="line"><a id="l00106" name="l00106"></a><span class="lineno"> 106</span> <span class="keyword">static</span> <span class="keywordtype">void</span> initDiagnostics(); <span class="comment">// used internally</span></div>
<div class="line"><a id="l00107" name="l00107"></a><span class="lineno"> 107</span> </div>
<div class="line"><a id="l00108" name="l00108"></a><span class="lineno"> 108</span><span class="keyword">public</span>:</div>
<div class="line"><a id="l00112" name="l00112"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a11c5e4ffcd19d972dafa4481c243c07f"> 112</a></span> <span class="keyword">const</span> <a class="code hl_struct" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html">Settings</a>& <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a11c5e4ffcd19d972dafa4481c243c07f">settings</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> settings_; }</div>
<div class="line"><a id="l00113" name="l00113"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a58f68e5560380683c568847abbb48b1c"> 113</a></span> <a class="code hl_struct" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html">Settings</a>& <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a58f68e5560380683c568847abbb48b1c">settings</a>() { <span class="keywordflow">return</span> settings_; }</div>
<div class="line"><a id="l00114" name="l00114"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a3950fb9cf8c6ccb1918dbe6bb21129b6"> 114</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a3950fb9cf8c6ccb1918dbe6bb21129b6">settings</a>(<span class="keyword">const</span> <a class="code hl_struct" href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html">Settings</a> &s) { settings_ = s; }</div>
<div class="line"><a id="l00123" name="l00123"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a966d408b902199a303dfba951ed6efdd"> 123</a></span> boost::filesystem::path <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a966d408b902199a303dfba951ed6efdd">parseUrl</a>(<span class="keyword">const</span> std::string&);</div>
<div class="line"><a id="l00124" name="l00124"></a><span class="lineno"> 124</span> </div>
<div class="line"><a id="l00135" name="l00135"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a515a8b21d8e4e1de3423cfc63f4d1358"> 135</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a515a8b21d8e4e1de3423cfc63f4d1358">parse</a>(<span class="keyword">const</span> boost::filesystem::path&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1SharedPointer.html">MemoryMap::Ptr</a>&);</div>
<div class="line"><a id="l00136" name="l00136"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#aa2c1ba3472797edda82ebc46a18f415b"> 136</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#aa2c1ba3472797edda82ebc46a18f415b">parse</a>(<span class="keyword">const</span> boost::filesystem::path&, <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#af9979602b39d09fa0afc9b6727142cf9">InstructionSemantics::BaseSemantics::RegisterStatePtr</a> &registers,</div>
<div class="line"><a id="l00137" name="l00137"></a><span class="lineno"> 137</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#a0c0106c0f124bfd48cf9c198e6bd7d4b">InstructionSemantics::BaseSemantics::RiscOperatorsPtr</a> &ops);</div>
<div class="line"><a id="l00138" name="l00138"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a775849651f703dd686a9cf5718dc828a"> 138</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a775849651f703dd686a9cf5718dc828a">parse</a>(<span class="keyword">const</span> boost::filesystem::path&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1SharedPointer.html">MemoryMap::Ptr</a>&,</div>
<div class="line"><a id="l00139" name="l00139"></a><span class="lineno"> 139</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#af9979602b39d09fa0afc9b6727142cf9">InstructionSemantics::BaseSemantics::RegisterStatePtr</a> &registers,</div>
<div class="line"><a id="l00140" name="l00140"></a><span class="lineno"> 140</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#a0c0106c0f124bfd48cf9c198e6bd7d4b">InstructionSemantics::BaseSemantics::RiscOperatorsPtr</a> &ops);</div>
<div class="line"><a id="l00141" name="l00141"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a4b8388ebf7c9775b16fe6038c9c61170"> 141</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a4b8388ebf7c9775b16fe6038c9c61170">parse</a>(std::istream&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1SharedPointer.html">MemoryMap::Ptr</a>&, <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#af9979602b39d09fa0afc9b6727142cf9">InstructionSemantics::BaseSemantics::RegisterStatePtr</a> &registers,</div>
<div class="line"><a id="l00142" name="l00142"></a><span class="lineno"> 142</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#a0c0106c0f124bfd48cf9c198e6bd7d4b">InstructionSemantics::BaseSemantics::RiscOperatorsPtr</a> &ops, <span class="keyword">const</span> std::string &inputName = <span class="stringliteral">"input"</span>);</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a4c6da2f0d743afc643782073b7db29ad"> 157</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a4c6da2f0d743afc643782073b7db29ad">unparse</a>(std::ostream&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1SharedPointer.html">MemoryMap::Ptr</a>&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1Container_1_1Interval.html">AddressInterval</a> &memoryLimit,</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> <span class="keyword">const</span> std::string &outputName = <span class="stringliteral">"output"</span>);</div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a5a6d007c3bc530301abbbf5322e22b0f"> 159</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a5a6d007c3bc530301abbbf5322e22b0f">unparse</a>(std::ostream&, <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#af9979602b39d09fa0afc9b6727142cf9">InstructionSemantics::BaseSemantics::RegisterStatePtr</a>&,</div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#a0c0106c0f124bfd48cf9c198e6bd7d4b">InstructionSemantics::BaseSemantics::RiscOperatorsPtr</a>&,</div>
<div class="line"><a id="l00161" name="l00161"></a><span class="lineno"> 161</span> <span class="keyword">const</span> std::string &outputName = <span class="stringliteral">"output"</span>);</div>
<div class="line"><a id="l00162" name="l00162"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a8c936fa0d78a29b0952e21d92338f1d1"> 162</a></span> <span class="keywordtype">void</span> <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a8c936fa0d78a29b0952e21d92338f1d1">unparse</a>(std::ostream&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1SharedPointer.html">MemoryMap::Ptr</a>&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1Container_1_1Interval.html">AddressInterval</a> &memoryLimit,</div>
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#af9979602b39d09fa0afc9b6727142cf9">InstructionSemantics::BaseSemantics::RegisterStatePtr</a>&,</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#a0c0106c0f124bfd48cf9c198e6bd7d4b">InstructionSemantics::BaseSemantics::RiscOperatorsPtr</a>&,</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> <span class="keyword">const</span> std::string &outputName = <span class="stringliteral">"output"</span>);</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"><a class="line" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a0c1f6dcd9904d92805feb832ff04ba49"> 171</a></span> <span class="keyword">const</span> std::string& <a class="code hl_function" href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a0c1f6dcd9904d92805feb832ff04ba49">isaName</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> isaName_; }</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> </div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span><span class="keyword">private</span>:</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> <span class="comment">// Parse a memory section of the input when given a header and the input stream positioned at the first byte after the</span></div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> <span class="comment">// header. Returns false if the header is invalid, throws an Exception if there's a problem reading the data, and returns</span></div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> <span class="comment">// true if the memory section was parsed. The memory map can be null, in which case all the normal parsing occurs but</span></div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> <span class="comment">// nothing is updated. The inputName is only for the exceptions.</span></div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> <span class="keywordtype">bool</span> parseMemory(<span class="keyword">const</span> std::string &header, std::istream&, <span class="keyword">const</span> <a class="code hl_class" href="classSawyer_1_1SharedPointer.html">MemoryMap::Ptr</a>&, <span class="keyword">const</span> std::string &inputName,</div>
<div class="line"><a id="l00179" name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">size_t</span> headerOffset);</div>
<div class="line"><a id="l00180" name="l00180"></a><span class="lineno"> 180</span> </div>
<div class="line"><a id="l00181" name="l00181"></a><span class="lineno"> 181</span> <span class="comment">// Similar to parseMemory except for registers.</span></div>
<div class="line"><a id="l00182" name="l00182"></a><span class="lineno"> 182</span> <span class="keywordtype">bool</span> parseRegisters(<span class="keyword">const</span> std::string &header, std::istream&, <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#af9979602b39d09fa0afc9b6727142cf9">InstructionSemantics::BaseSemantics::RegisterStatePtr</a>&,</div>
<div class="line"><a id="l00183" name="l00183"></a><span class="lineno"> 183</span> <span class="keyword">const</span> <a class="code hl_typedef" href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#a0c0106c0f124bfd48cf9c198e6bd7d4b">InstructionSemantics::BaseSemantics::RiscOperatorsPtr</a> &ops,</div>
<div class="line"><a id="l00184" name="l00184"></a><span class="lineno"> 184</span> <span class="keyword">const</span> std::string &inputName, <span class="keywordtype">size_t</span> headerOffset);</div>
<div class="line"><a id="l00185" name="l00185"></a><span class="lineno"> 185</span>};</div>
</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>} <span class="comment">// namespace</span></div>
<div class="line"><a id="l00188" name="l00188"></a><span class="lineno"> 188</span>} <span class="comment">// namespace</span></div>
<div class="line"><a id="l00189" name="l00189"></a><span class="lineno"> 189</span> </div>
<div class="line"><a id="l00190" name="l00190"></a><span class="lineno"> 190</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00191" name="l00191"></a><span class="lineno"> 191</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception_html"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html">Rose::BinaryAnalysis::VxcoreParser::Exception</a></div><div class="ttdoc">Exception thrown for parse errors.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00060">BinaryVxcoreParser.h:60</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception_html_a1008172c2fbcc0e147d5d4cafce0b904"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#a1008172c2fbcc0e147d5d4cafce0b904">Rose::BinaryAnalysis::VxcoreParser::Exception::Exception</a></div><div class="ttdeci">Exception(const boost::filesystem::path &fileName, size_t offset, const std::string &what)</div><div class="ttdoc">Create a new exception with a location and error message.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00066">BinaryVxcoreParser.h:66</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception_html_a1c998201305e0a715d73a64fad56e804"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#a1c998201305e0a715d73a64fad56e804">Rose::BinaryAnalysis::VxcoreParser::Exception::print</a></div><div class="ttdeci">void print(std::ostream &out) const</div><div class="ttdoc">Emit this exception to a stream.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00079">BinaryVxcoreParser.h:79</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception_html_adb227f10831c376d1cadcf89f2e0d522"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Exception.html#adb227f10831c376d1cadcf89f2e0d522">Rose::BinaryAnalysis::VxcoreParser::Exception::toString</a></div><div class="ttdeci">std::string toString() const</div><div class="ttdoc">Render this exception as a string.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00072">BinaryVxcoreParser.h:72</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html">Rose::BinaryAnalysis::VxcoreParser</a></div><div class="ttdoc">Parser for Vxcore format files.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00047">BinaryVxcoreParser.h:47</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a0c1f6dcd9904d92805feb832ff04ba49"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a0c1f6dcd9904d92805feb832ff04ba49">Rose::BinaryAnalysis::VxcoreParser::isaName</a></div><div class="ttdeci">const std::string & isaName() const</div><div class="ttdoc">Parsed instruction set architecture name.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00171">BinaryVxcoreParser.h:171</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a11c5e4ffcd19d972dafa4481c243c07f"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a11c5e4ffcd19d972dafa4481c243c07f">Rose::BinaryAnalysis::VxcoreParser::settings</a></div><div class="ttdeci">const Settings & settings() const</div><div class="ttdoc">Property: Settings for parsing and unparsing.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00112">BinaryVxcoreParser.h:112</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a3950fb9cf8c6ccb1918dbe6bb21129b6"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a3950fb9cf8c6ccb1918dbe6bb21129b6">Rose::BinaryAnalysis::VxcoreParser::settings</a></div><div class="ttdeci">void settings(const Settings &s)</div><div class="ttdoc">Property: Settings for parsing and unparsing.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00114">BinaryVxcoreParser.h:114</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a3c33dba1985c752c508893b53bf189c1"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a3c33dba1985c752c508893b53bf189c1">Rose::BinaryAnalysis::VxcoreParser::mlog</a></div><div class="ttdeci">static Sawyer::Message::Facility mlog</div><div class="ttdoc">Diagnostic facility for vxcore file format.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00105">BinaryVxcoreParser.h:105</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a4b8388ebf7c9775b16fe6038c9c61170"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a4b8388ebf7c9775b16fe6038c9c61170">Rose::BinaryAnalysis::VxcoreParser::parse</a></div><div class="ttdeci">void parse(std::istream &, const MemoryMap::Ptr &, const InstructionSemantics::BaseSemantics::RegisterStatePtr &registers, const InstructionSemantics::BaseSemantics::RiscOperatorsPtr &ops, const std::string &inputName="input")</div><div class="ttdoc">Parse input file.</div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a4c6da2f0d743afc643782073b7db29ad"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a4c6da2f0d743afc643782073b7db29ad">Rose::BinaryAnalysis::VxcoreParser::unparse</a></div><div class="ttdeci">void unparse(std::ostream &, const MemoryMap::Ptr &, const AddressInterval &memoryLimit, const std::string &outputName="output")</div><div class="ttdoc">Unparse memory and/or registers to this format.</div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a515a8b21d8e4e1de3423cfc63f4d1358"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a515a8b21d8e4e1de3423cfc63f4d1358">Rose::BinaryAnalysis::VxcoreParser::parse</a></div><div class="ttdeci">void parse(const boost::filesystem::path &, const MemoryMap::Ptr &)</div><div class="ttdoc">Parse input file.</div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a58f68e5560380683c568847abbb48b1c"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a58f68e5560380683c568847abbb48b1c">Rose::BinaryAnalysis::VxcoreParser::settings</a></div><div class="ttdeci">Settings & settings()</div><div class="ttdoc">Property: Settings for parsing and unparsing.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00113">BinaryVxcoreParser.h:113</a></div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a5a6d007c3bc530301abbbf5322e22b0f"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a5a6d007c3bc530301abbbf5322e22b0f">Rose::BinaryAnalysis::VxcoreParser::unparse</a></div><div class="ttdeci">void unparse(std::ostream &, const InstructionSemantics::BaseSemantics::RegisterStatePtr &, const InstructionSemantics::BaseSemantics::RiscOperatorsPtr &, const std::string &outputName="output")</div><div class="ttdoc">Unparse memory and/or registers to this format.</div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a775849651f703dd686a9cf5718dc828a"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a775849651f703dd686a9cf5718dc828a">Rose::BinaryAnalysis::VxcoreParser::parse</a></div><div class="ttdeci">void parse(const boost::filesystem::path &, const MemoryMap::Ptr &, const InstructionSemantics::BaseSemantics::RegisterStatePtr &registers, const InstructionSemantics::BaseSemantics::RiscOperatorsPtr &ops)</div><div class="ttdoc">Parse input file.</div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a8c936fa0d78a29b0952e21d92338f1d1"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a8c936fa0d78a29b0952e21d92338f1d1">Rose::BinaryAnalysis::VxcoreParser::unparse</a></div><div class="ttdeci">void unparse(std::ostream &, const MemoryMap::Ptr &, const AddressInterval &memoryLimit, const InstructionSemantics::BaseSemantics::RegisterStatePtr &, const InstructionSemantics::BaseSemantics::RiscOperatorsPtr &, const std::string &outputName="output")</div><div class="ttdoc">Unparse memory and/or registers to this format.</div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_a966d408b902199a303dfba951ed6efdd"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#a966d408b902199a303dfba951ed6efdd">Rose::BinaryAnalysis::VxcoreParser::parseUrl</a></div><div class="ttdeci">boost::filesystem::path parseUrl(const std::string &)</div><div class="ttdoc">Parse a URL and adjust the settings.</div></div>
<div class="ttc" id="aclassRose_1_1BinaryAnalysis_1_1VxcoreParser_html_aa2c1ba3472797edda82ebc46a18f415b"><div class="ttname"><a href="classRose_1_1BinaryAnalysis_1_1VxcoreParser.html#aa2c1ba3472797edda82ebc46a18f415b">Rose::BinaryAnalysis::VxcoreParser::parse</a></div><div class="ttdeci">void parse(const boost::filesystem::path &, const InstructionSemantics::BaseSemantics::RegisterStatePtr &registers, const InstructionSemantics::BaseSemantics::RiscOperatorsPtr &ops)</div><div class="ttdoc">Parse input file.</div></div>
<div class="ttc" id="aclassRose_1_1Exception_html"><div class="ttname"><a href="classRose_1_1Exception.html">Rose::Exception</a></div><div class="ttdoc">Base class for all ROSE exceptions.</div><div class="ttdef"><b>Definition</b> <a href="Rose_2Exception_8h_source.html#l00010">Rose/Exception.h:10</a></div></div>
<div class="ttc" id="aclassSawyer_1_1Container_1_1Interval_html"><div class="ttname"><a href="classSawyer_1_1Container_1_1Interval.html">Sawyer::Container::Interval< Address ></a></div></div>
<div class="ttc" id="aclassSawyer_1_1Message_1_1Facility_html"><div class="ttname"><a href="classSawyer_1_1Message_1_1Facility.html">Sawyer::Message::Facility</a></div><div class="ttdoc">Collection of streams.</div><div class="ttdef"><b>Definition</b> <a href="Message_8h_source.html#l01606">Message.h:1606</a></div></div>
<div class="ttc" id="aclassSawyer_1_1Optional_html"><div class="ttname"><a href="classSawyer_1_1Optional.html">Sawyer::Optional</a></div><div class="ttdoc">Holds a value or nothing.</div><div class="ttdef"><b>Definition</b> <a href="Optional_8h_source.html#l00056">Optional.h:56</a></div></div>
<div class="ttc" id="aclassSawyer_1_1SharedPointer_html"><div class="ttname"><a href="classSawyer_1_1SharedPointer.html">Sawyer::SharedPointer< MemoryMap ></a></div></div>
<div class="ttc" id="anamespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics_html_a0c0106c0f124bfd48cf9c198e6bd7d4b"><div class="ttname"><a href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#a0c0106c0f124bfd48cf9c198e6bd7d4b">Rose::BinaryAnalysis::InstructionSemantics::BaseSemantics::RiscOperatorsPtr</a></div><div class="ttdeci">boost::shared_ptr< RiscOperators > RiscOperatorsPtr</div><div class="ttdoc">Shared-ownership pointer to a RISC operators object.</div><div class="ttdef"><b>Definition</b> <a href="Rose_2BinaryAnalysis_2InstructionSemantics_2BaseSemantics_2BasicTypes_8h_source.html#l00066">Rose/BinaryAnalysis/InstructionSemantics/BaseSemantics/BasicTypes.h:66</a></div></div>
<div class="ttc" id="anamespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics_html_af9979602b39d09fa0afc9b6727142cf9"><div class="ttname"><a href="namespaceRose_1_1BinaryAnalysis_1_1InstructionSemantics_1_1BaseSemantics.html#af9979602b39d09fa0afc9b6727142cf9">Rose::BinaryAnalysis::InstructionSemantics::BaseSemantics::RegisterStatePtr</a></div><div class="ttdeci">boost::shared_ptr< RegisterState > RegisterStatePtr</div><div class="ttdoc">Shared-ownership pointer to a register state.</div><div class="ttdef"><b>Definition</b> <a href="Rose_2BinaryAnalysis_2InstructionSemantics_2BaseSemantics_2BasicTypes_8h_source.html#l00051">Rose/BinaryAnalysis/InstructionSemantics/BaseSemantics/BasicTypes.h:51</a></div></div>
<div class="ttc" id="anamespaceRose_1_1StringUtility_html_a3aed317913b7f65d80a2c76c5c019c8b"><div class="ttname"><a href="namespaceRose_1_1StringUtility.html#a3aed317913b7f65d80a2c76c5c019c8b">Rose::StringUtility::cEscape</a></div><div class="ttdeci">ROSE_UTIL_API std::string cEscape(const std::string &, char context='"')</div><div class="ttdoc">Escapes characters that are special to C/C++.</div></div>
<div class="ttc" id="anamespaceRose_html"><div class="ttname"><a href="namespaceRose.html">Rose</a></div><div class="ttdoc">The ROSE library.</div><div class="ttdef"><b>Definition</b> <a href="BinaryTutorial_8dox_source.html#l00003">BinaryTutorial.dox:3</a></div></div>
<div class="ttc" id="astructRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings_html"><div class="ttname"><a href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html">Rose::BinaryAnalysis::VxcoreParser::Settings</a></div><div class="ttdoc">Settings that control the parser and unparser.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00050">BinaryVxcoreParser.h:50</a></div></div>
<div class="ttc" id="astructRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings_html_a2b6069aa35251ff65aab3f4dee3ae4ff"><div class="ttname"><a href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#a2b6069aa35251ff65aab3f4dee3ae4ff">Rose::BinaryAnalysis::VxcoreParser::Settings::version</a></div><div class="ttdeci">unsigned version</div><div class="ttdoc">Format version number.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00051">BinaryVxcoreParser.h:51</a></div></div>
<div class="ttc" id="astructRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings_html_a48563a956ca72e6e7ad4324fc1d2313d"><div class="ttname"><a href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#a48563a956ca72e6e7ad4324fc1d2313d">Rose::BinaryAnalysis::VxcoreParser::Settings::protDefault</a></div><div class="ttdeci">unsigned protDefault</div><div class="ttdoc">Default memory protection when none are specified or overridden.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00053">BinaryVxcoreParser.h:53</a></div></div>
<div class="ttc" id="astructRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings_html_ab46e3c29ec22c921cecfdf3037f1da8a"><div class="ttname"><a href="structRose_1_1BinaryAnalysis_1_1VxcoreParser_1_1Settings.html#ab46e3c29ec22c921cecfdf3037f1da8a">Rose::BinaryAnalysis::VxcoreParser::Settings::protOverride</a></div><div class="ttdeci">Sawyer::Optional< unsigned > protOverride</div><div class="ttdoc">Memory protection to overrides parsed values.</div><div class="ttdef"><b>Definition</b> <a href="BinaryVxcoreParser_8h_source.html#l00052">BinaryVxcoreParser.h:52</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Oct 2 2024 00:07:47 for ROSE by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>