File: parsev2_8h_source.html

package info (click to toggle)
mysql%2B%2B 3.2.5-2.1
  • links: PTS
  • area: main
  • in suites: bookworm
  • size: 18,360 kB
  • sloc: cpp: 35,788; sh: 3,693; perl: 789; makefile: 730
file content (138 lines) | stat: -rwxr-xr-x 98,997 bytes parent folder | download | duplicates (3)
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title>MySQL++ Reference Manual</title>
  <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  <meta name="generator" content="Doxygen 1.8.15"/>
  <meta name="viewport" content="width=device-width, initial-scale=1"/>
  <title>MySQL++ SSQLS v2 Translator: parsev2.h Source File</title>
  <link href="tabs.css" rel="stylesheet" type="text/css"/>
  <link href="doxygen.css" rel="stylesheet" type="text/css">
  <script type="text/javascript" src="jquery.js"></script>
  <script type="text/javascript" src="dynsections.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 style="height: 56px;">
      <td id="projectalign" style="padding-left: 0.5em;">
       <div id="projectname">MySQL++ SSQLS v2 Translator
       &#160;<span id="projectnumber">3.2.5</span>
       </div>
      </td>
     </tr>
     </tbody>
    </table>
    </div>
    <!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">parsev2.h</div>  </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">/***********************************************************************</span></div><div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;<span class="comment"> ssx/parsev2.h - Declares the SSQLS v2 language parsing related classes.</span></div><div class="line"><a name="l00003"></a><span class="lineno">    3</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;<span class="comment"> Copyright (c) 2009 by Warren Young and (c) 2009-2010 by Educational</span></div><div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;<span class="comment"> Technology Resources, Inc.  Others may also hold copyrights on code</span></div><div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;<span class="comment"> in this file.  See the CREDITS.txt file in the top directory of the</span></div><div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment"> distribution for details.</span></div><div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment"> This file is part of MySQL++.</span></div><div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment"> MySQL++ is free software; you can redistribute it and/or modify it</span></div><div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment"> under the terms of the GNU Lesser General Public License as published</span></div><div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment"> by the Free Software Foundation; either version 2.1 of the License, or</span></div><div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment"> (at your option) any later version.</span></div><div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment"> MySQL++ is distributed in the hope that it will be useful, but WITHOUT</span></div><div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment"> ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or</span></div><div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment"> FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public</span></div><div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment"> License for more details.</span></div><div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment"></span></div><div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment"> You should have received a copy of the GNU Lesser General Public</span></div><div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment"> License along with MySQL++; if not, write to the Free Software</span></div><div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment"> Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301</span></div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment"> USA</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">***********************************************************************/</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#if !defined(MYSQLPP_SSX_PARSEV2_H)</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#define MYSQLPP_SSX_PARSEV2_H</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;exceptions.h&gt;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &lt;cassert&gt;</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &lt;fstream&gt;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;</div><div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classParseV2.html">   41</a></span>&#160;<span class="keyword">class </span><a class="code" href="classParseV2.html">ParseV2</a></div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;{</div><div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="keyword">public</span>:</div><div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">   45</a></span>&#160;    <span class="keyword">typedef</span> std::vector&lt;std::string&gt; <a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>;</div><div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;</div><div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classParseV2.html#aaf95b203eb1884be2bfff2bc514c2385">   50</a></span>&#160;    <span class="keyword">typedef</span> StringList::const_iterator <a class="code" href="classParseV2.html#aaf95b203eb1884be2bfff2bc514c2385">StringListIt</a>;</div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div><div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classParseV2_1_1File.html">   57</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1File.html">File</a></div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    {</div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;        <a class="code" href="classParseV2_1_1File.html#a00e1ed751956f1c35bfbe1bf4025ca2e">File</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* file_name);</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1File.html#a57054380470df2373f99236d7d6884bc">error</a>(<span class="keyword">const</span> std::string&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classParseV2_1_1File.html#aec27eaef06e40671bbb8228c4fd29471">   68</a></span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1File.html#aec27eaef06e40671bbb8228c4fd29471">error</a>(<span class="keyword">const</span> std::ostringstream&amp; msg)<span class="keyword"> const</span></div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;<span class="keyword">                </span>{ <a class="code" href="classParseV2_1_1File.html#a57054380470df2373f99236d7d6884bc">error</a>(msg.str()); }</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classParseV2_1_1File.html#add3240e9094fe7066e23c5e9f0051cb2">   72</a></span>&#160;        <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classParseV2_1_1File.html#add3240e9094fe7066e23c5e9f0051cb2">name</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> file_name_.c_str(); }</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1File.html#a398eef7e1fe978865b26b24e8efb7443">parse_error</a>(<span class="keyword">const</span> std::string&amp; msg) <span class="keyword">const</span>;</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;</div><div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classParseV2_1_1File.html#a6b57fdcc906c83f0315b373f0e8e5763">   79</a></span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1File.html#a6b57fdcc906c83f0315b373f0e8e5763">parse_error</a>(<span class="keyword">const</span> std::ostringstream&amp; msg)<span class="keyword"> const</span></div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;<span class="keyword">                </span>{ <a class="code" href="classParseV2_1_1File.html#a57054380470df2373f99236d7d6884bc">error</a>(msg.str()); }</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;        <span class="keywordtype">bool</span> <a class="code" href="classParseV2_1_1File.html#a8c547ea1669eaba62bfe8e440427cb83">read_line</a>(std::string&amp; line, <span class="keywordtype">bool</span>&amp; subdirective);</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;        <span class="keywordtype">void</span> add_directory_to_search_path(<span class="keyword">const</span> <span class="keywordtype">char</span>* filepath);</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;        <span class="keywordtype">void</span> split_path(<a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>&amp; parts, <span class="keyword">const</span> std::string&amp; path) <span class="keyword">const</span>;</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;        std::ifstream ifs_;</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;        std::string file_name_;</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        <span class="keywordtype">size_t</span> line_number_;</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;        <span class="keyword">static</span> <a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a> search_path_;</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    };</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;</div><div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="classParseV2_1_1Line.html">  136</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1Line.html">Line</a></div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    {</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classParseV2_1_1Line.html#aff17fe2a6e9ffca4cfc9590b43cd9015">  140</a></span>&#160;        <span class="keyword">virtual</span> <a class="code" href="classParseV2_1_1Line.html#aff17fe2a6e9ffca4cfc9590b43cd9015">~Line</a>() { }</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;        <span class="keyword">static</span> <a class="code" href="classParseV2_1_1Line.html">Line</a>* <a class="code" href="classParseV2_1_1Line.html#aa826982abc96f7d5013440572a0dafe1">parse</a>(<span class="keyword">const</span> <a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>&amp; tl, <span class="keywordtype">bool</span> subdirective,</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;                <span class="keyword">const</span> <a class="code" href="classParseV2_1_1File.html">File</a>&amp; file);</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;        <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1Line.html#a7b009a7af2f3f28522ee4879cdc5a714">print</a>(std::ostream&amp; os) <span class="keyword">const</span> = 0;</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classParseV2_1_1Line.html#a7b9e9c446ef2a7985598b2f4cb0e2820">  161</a></span>&#160;        <a class="code" href="classParseV2_1_1Line.html#a7b9e9c446ef2a7985598b2f4cb0e2820">Line</a>() { }</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    };</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;</div><div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="classParseV2.html#a990d7cded72cdead084ae16adcf14276">  167</a></span>&#160;    <span class="keyword">typedef</span> std::vector&lt;Line*&gt; <a class="code" href="classParseV2.html#a990d7cded72cdead084ae16adcf14276">LineList</a>;</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;</div><div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">  173</a></span>&#160;    <span class="keyword">typedef</span> LineList::const_iterator <a class="code" href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">LineListIt</a>;</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;</div><div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field.html">  176</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1Field.html">Field</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Line.html">Line</a></div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;    {</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field.html#aa6ce22a2c42ea9d0ddeae06d1562e77d">  192</a></span>&#160;        <a class="code" href="classParseV2_1_1Field.html#aa6ce22a2c42ea9d0ddeae06d1562e77d">Field</a>(<span class="keyword">const</span> std::string&amp; name, <span class="keyword">const</span> std::string&amp; type,</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;                <span class="keywordtype">bool</span> is_unsigned = <span class="keyword">false</span>, <span class="keywordtype">bool</span> is_null = <span class="keyword">false</span>,</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                <span class="keywordtype">bool</span> is_autoinc = <span class="keyword">false</span>, <span class="keywordtype">bool</span> is_key = <span class="keyword">false</span>,</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                <span class="keyword">const</span> std::string&amp; alias = 0) :</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;        name_(name),</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;        type_(type),</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;        is_autoinc_(is_autoinc),</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;        is_key_(is_key),</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;        is_null_(is_null),</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;        is_unsigned_(is_unsigned),</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;        alias_(alias)</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;        {</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;        }</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;</div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;        <span class="keyword">static</span> <a class="code" href="classParseV2_1_1Field.html">Field</a>* <a class="code" href="classParseV2_1_1Field.html#aa7f960b3aefb37f18f4c8160c468f2c6">parse</a>(<span class="keyword">const</span> <a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>&amp; tl, <span class="keywordtype">bool</span> subdirective,</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;                <span class="keyword">const</span> <a class="code" href="classParseV2_1_1File.html">File</a>&amp; file);</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1Field.html#a6387940cb703182320108eacc6a1b322">print</a>(std::ostream&amp; os) <span class="keyword">const</span>;</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;</div><div class="line"><a name="l00229"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html">  229</a></span>&#160;        <span class="keyword">class </span><a class="code" href="classParseV2_1_1Field_1_1Type.html">Type</a></div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;        {</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;        <span class="keyword">public</span>:</div><div class="line"><a name="l00245"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809a">  245</a></span>&#160;            <span class="keyword">enum</span> <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809a">Value</a> {</div><div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaa5e69fa2814c4c51d60985639950c2f8">  246</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaa5e69fa2814c4c51d60985639950c2f8">ft_tinyint</a>,     </div><div class="line"><a name="l00247"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aacd5a51ec63c37340ee8c20aa3c8fbf5b">  247</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aacd5a51ec63c37340ee8c20aa3c8fbf5b">ft_smallint</a>,    </div><div class="line"><a name="l00248"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aac31ea1ad6a760baa8102f6541e5ce75c">  248</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aac31ea1ad6a760baa8102f6541e5ce75c">ft_mediumint</a>,   </div><div class="line"><a name="l00249"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa3a3d6b94f255af750658c26926b2f1b7">  249</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa3a3d6b94f255af750658c26926b2f1b7">ft_bigint</a>,      </div><div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa63a1ccf72a79e28b44cbd6157c33b67a">  250</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa63a1ccf72a79e28b44cbd6157c33b67a">ft_float</a>,       </div><div class="line"><a name="l00251"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa5c0b865d30c764e79ed0435d1a0f9401">  251</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa5c0b865d30c764e79ed0435d1a0f9401">ft_double</a>,      </div><div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa4c981f01f5eaed4cf09d02f7b5bd85ae">  252</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa4c981f01f5eaed4cf09d02f7b5bd85ae">ft_string</a>,      </div><div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaffa7d20a15cc427743f09a9e34036c1f">  253</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaffa7d20a15cc427743f09a9e34036c1f">ft_blob</a>,        </div><div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa6fdbfe468f5f4266c6510e0270854f0d">  254</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa6fdbfe468f5f4266c6510e0270854f0d">ft_date</a>,        </div><div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaad85df4028dad98c65c6973f8011de27">  255</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaad85df4028dad98c65c6973f8011de27">ft_datetime</a>,    </div><div class="line"><a name="l00256"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaa5c3dda73ca880cbf48ec8b68908a3a7">  256</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaa5c3dda73ca880cbf48ec8b68908a3a7">ft_time</a>,        </div><div class="line"><a name="l00257"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa96175a182b04f1d579d1555e99e2aa13">  257</a></span>&#160;                <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa96175a182b04f1d579d1555e99e2aa13">ft_set</a>          </div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;            };</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;            <a class="code" href="classParseV2_1_1Field_1_1Type.html#a1d5d56cc46c95c2813105d9819d273ce">Type</a>(<span class="keyword">const</span> std::string&amp; s);</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;</div><div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a057b582f88dd2c50624b9de9076a86c4">  269</a></span>&#160;            <a class="code" href="classParseV2_1_1Field_1_1Type.html#a057b582f88dd2c50624b9de9076a86c4">Type</a>(<a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809a">Value</a> v) :</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;            value_(v)</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;            {</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;            }</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;            <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1Field_1_1Type.html#a1ac635e3af4c8c739c1bfec7a6e0418d">print</a>(std::ostream&amp; os) <span class="keyword">const</span>;</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;</div><div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a94c878686d189e1f585fb8577c918a43">  279</a></span>&#160;            <span class="keyword">operator</span> <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809a">Value</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_; }</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno"><a class="line" href="classParseV2_1_1Field_1_1Type.html#a9e20e420fee1cac85a261bececd575cf">  282</a></span>&#160;            <span class="keywordtype">bool</span> <a class="code" href="classParseV2_1_1Field_1_1Type.html#a9e20e420fee1cac85a261bececd575cf">operator ==</a>(<span class="keyword">const</span> <a class="code" href="classParseV2_1_1Field_1_1Type.html">Type</a>&amp; rhs)<span class="keyword"> const</span></div><div class="line"><a name="l00283"></a><span class="lineno">  283</span>&#160;<span class="keyword">                    </span>{ <span class="keywordflow">return</span> value_ == rhs.value_; }</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;        <span class="keyword">private</span>:</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;            <a class="code" href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809a">Value</a> value_;</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;        };</div><div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;        std::string name_;  </div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;        Type type_;         </div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;        <span class="keywordtype">bool</span> is_autoinc_;   </div><div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;        <span class="keywordtype">bool</span> is_key_;       </div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;        <span class="keywordtype">bool</span> is_null_;      </div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;        <span class="keywordtype">bool</span> is_unsigned_;  </div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;        std::string alias_; </div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;    };</div><div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;</div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classParseV2_1_1Include.html">  300</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1Include.html">Include</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Line.html">Line</a></div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;    {</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classParseV2_1_1Include.html#a485c5a373fb7c33a1d20e9696381e4ba">  308</a></span>&#160;        <a class="code" href="classParseV2_1_1Include.html#a485c5a373fb7c33a1d20e9696381e4ba">Include</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* file_name) :</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;        pp2_(new <a class="code" href="classParseV2.html">ParseV2</a>(file_name))</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;        {</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;        }</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="classParseV2_1_1Include.html#a1d606e2fa4ce9b6d9c5855c1283015d8">  314</a></span>&#160;        <a class="code" href="classParseV2_1_1Include.html#a1d606e2fa4ce9b6d9c5855c1283015d8">~Include</a>() { pp2_-&gt;<a class="code" href="classParseV2.html#a1f5b1e2532908d7f9278811a3f58c172">clear</a>(); <span class="keyword">delete</span> pp2_; }</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;        <span class="comment">// sub-parse&#39;s LineList</span></div><div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="classParseV2_1_1Include.html#ab7da4b13607657458c4c5a14585012b2">  318</a></span>&#160;        <a class="code" href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">LineListIt</a> <a class="code" href="classParseV2_1_1Include.html#ab7da4b13607657458c4c5a14585012b2">begin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> pp2_-&gt;<a class="code" href="classParseV2.html#a3bc205774df86e810af78a077806cb4d">begin</a>(); }</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;</div><div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="classParseV2_1_1Include.html#a056ae31993becdc3720e019931d427ea">  322</a></span>&#160;        <a class="code" href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">LineListIt</a> <a class="code" href="classParseV2_1_1Include.html#a056ae31993becdc3720e019931d427ea">end</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> pp2_-&gt;<a class="code" href="classParseV2.html#a6f0db9fe97e57756e6764e2588497b22">end</a>(); }</div><div class="line"><a name="l00323"></a><span class="lineno">  323</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;        <span class="keyword">static</span> <a class="code" href="classParseV2_1_1Include.html">Include</a>* <a class="code" href="classParseV2_1_1Include.html#a15dac2571c420a8afed5111d20ba2cb4">parse</a>(<span class="keyword">const</span> <a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>&amp; tl, <span class="keywordtype">bool</span> subdirective,</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;                <span class="keyword">const</span> <a class="code" href="classParseV2_1_1File.html">File</a>&amp; file);</div><div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;        <span class="comment">// Never called.  Include directives don&#39;t appear in the parse</span></div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;        <span class="comment">// list; the included file&#39;s contents appear in its place</span></div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;        <span class="comment">// instead.  Since this method only exists to test parsing</span></div><div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;        <span class="comment">// behavior, we can&#39;t be called.</span></div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;        <span class="keywordtype">void</span> print(std::ostream&amp;)<span class="keyword"> const </span>{ assert(0); }</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;        <a class="code" href="classParseV2.html">ParseV2</a>* pp2_;</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;    };</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno"><a class="line" href="classParseV2_1_1Option.html">  351</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1Option.html">Option</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Line.html">Line</a></div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;    {</div><div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00355"></a><span class="lineno"><a class="line" href="classParseV2_1_1Option.html#a456be9380b3e3457794a6851fb9b7356">  355</a></span>&#160;        <span class="keyword">virtual</span> <a class="code" href="classParseV2_1_1Option.html#a456be9380b3e3457794a6851fb9b7356">~Option</a>() { }</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;        <span class="keyword">static</span> <a class="code" href="classParseV2_1_1Option.html">Option</a>* <a class="code" href="classParseV2_1_1Option.html#a53cc8e9341f541bb753b1c49eed14380">parse</a>(<span class="keyword">const</span> <a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>&amp; tl, <span class="keywordtype">bool</span> subdirective,</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;                <span class="keyword">const</span> <a class="code" href="classParseV2_1_1File.html">File</a>&amp; file);</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;    <span class="keyword">protected</span>:</div><div class="line"><a name="l00371"></a><span class="lineno"><a class="line" href="classParseV2_1_1Option.html#aef17c339ffb010ead58c8a814317a7a6">  371</a></span>&#160;        <a class="code" href="classParseV2_1_1Option.html#aef17c339ffb010ead58c8a814317a7a6">Option</a>(<span class="keyword">const</span> std::string&amp; <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>) :</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;        value_(<a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>)</div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;        {</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;        }</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;        <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classParseV2_1_1Option.html#a75272b425b1f9a14b016083f31754b30">parse_bool</a>(<span class="keyword">const</span> std::string&amp; <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>);</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;</div><div class="line"><a name="l00395"></a><span class="lineno"><a class="line" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">  395</a></span>&#160;        <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> value_.c_str(); }</div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;    </div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;        <span class="comment">// The option&#39;s raw value string</span></div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;        std::string value_;</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;    };</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="classParseV2_1_1AccessorStyleOption.html">  403</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1AccessorStyleOption.html">AccessorStyleOption</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Option.html">Option</a></div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;    {</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00407"></a><span class="lineno"><a class="line" href="classParseV2_1_1AccessorStyleOption.html#a063854d885c24e9eb77ab086e3d9baad">  407</a></span>&#160;        <a class="code" href="classParseV2_1_1AccessorStyleOption.html#a063854d885c24e9eb77ab086e3d9baad">AccessorStyleOption</a>(<span class="keyword">const</span> std::string&amp; <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>, <span class="keyword">const</span> <a class="code" href="classParseV2_1_1File.html">File</a>&amp; file) :</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;        <a class="code" href="classParseV2_1_1Option.html">Option</a>(<a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>),</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;        type_(<a class="code" href="classParseV2_1_1AccessorStyleOption.html">AccessorStyleOption</a>::parse_type(<a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>, file))</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;        {</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;        }</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1AccessorStyleOption.html#a0877b6c0053b8649dc073e1889f5c3d7">print</a>(std::ostream&amp; os) <span class="keyword">const</span>;</div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;        <span class="keyword">enum</span> Type {</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;            unknown,            </div><div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;            camel_case_lower,   </div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;            camel_case_upper,   </div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;            stroustrup,         </div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;            overloaded          </div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;        };</div><div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160;</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;        <span class="keyword">static</span> Type parse_type(<span class="keyword">const</span> std::string&amp; style,</div><div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;                <span class="keyword">const</span> File&amp; file);</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;        Type type_;</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;    };</div><div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;</div><div class="line"><a name="l00443"></a><span class="lineno"><a class="line" href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html">  443</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html">ExceptionOnSchemaMismatchOption</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Option.html">Option</a></div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;    {</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00447"></a><span class="lineno"><a class="line" href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html#aaadf2bde89498c79c66c1ea6ee4bd471">  447</a></span>&#160;        <a class="code" href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html#aaadf2bde89498c79c66c1ea6ee4bd471">ExceptionOnSchemaMismatchOption</a>(<span class="keyword">const</span> std::string&amp; <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>) :</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;        <a class="code" href="classParseV2_1_1Option.html">Option</a>(<a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>),</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;        throw_(<a class="code" href="classParseV2_1_1Option.html">Option</a>::<a class="code" href="classParseV2_1_1Option.html#a75272b425b1f9a14b016083f31754b30">parse_bool</a>(<a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>))</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;        {</div><div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;        }</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;</div><div class="line"><a name="l00455"></a><span class="lineno"><a class="line" href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html#a3c437e6472ac34fb361f8d8cd0ae257a">  455</a></span>&#160;        <span class="keyword">operator</span> bool()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> throw_; }</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html#aa4b33add97530ba455c49565f5e96b80">print</a>(std::ostream&amp; os) <span class="keyword">const</span>;</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;        <span class="keywordtype">bool</span> throw_;    </div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;    };</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;</div><div class="line"><a name="l00466"></a><span class="lineno"><a class="line" href="classParseV2_1_1HeaderExtensionOption.html">  466</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1HeaderExtensionOption.html">HeaderExtensionOption</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Option.html">Option</a></div><div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;    {</div><div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00470"></a><span class="lineno"><a class="line" href="classParseV2_1_1HeaderExtensionOption.html#a36c66cb8254087e6267a80c7f0c99def">  470</a></span>&#160;        <a class="code" href="classParseV2_1_1HeaderExtensionOption.html#a36c66cb8254087e6267a80c7f0c99def">HeaderExtensionOption</a>(<span class="keyword">const</span> std::string&amp; <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>) :</div><div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;        <a class="code" href="classParseV2_1_1Option.html">Option</a>(<a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>)</div><div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;        {</div><div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160;        }</div><div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;</div><div class="line"><a name="l00476"></a><span class="lineno"><a class="line" href="classParseV2_1_1HeaderExtensionOption.html#ab01027b479c78ab0ba43036d8f25ba0b">  476</a></span>&#160;        <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classParseV2_1_1HeaderExtensionOption.html#ab01027b479c78ab0ba43036d8f25ba0b">extension</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>(); }</div><div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;</div><div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1HeaderExtensionOption.html#ac3c602d3dcccf9816f7ec7128e8a863e">print</a>(std::ostream&amp; os) <span class="keyword">const</span>;</div><div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;    };</div><div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;</div><div class="line"><a name="l00484"></a><span class="lineno"><a class="line" href="classParseV2_1_1ImplementationExtensionOption.html">  484</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1ImplementationExtensionOption.html">ImplementationExtensionOption</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Option.html">Option</a></div><div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;    {</div><div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00488"></a><span class="lineno"><a class="line" href="classParseV2_1_1ImplementationExtensionOption.html#a929367da7003d0153946c387056fca2b">  488</a></span>&#160;        <a class="code" href="classParseV2_1_1ImplementationExtensionOption.html#a929367da7003d0153946c387056fca2b">ImplementationExtensionOption</a>(<span class="keyword">const</span> std::string&amp; <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>) :</div><div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;        <a class="code" href="classParseV2_1_1Option.html">Option</a>(<a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>)</div><div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;        {</div><div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;        }</div><div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160;</div><div class="line"><a name="l00495"></a><span class="lineno"><a class="line" href="classParseV2_1_1ImplementationExtensionOption.html#a5827f0777dbb37eab3d59b9955447769">  495</a></span>&#160;        <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classParseV2_1_1ImplementationExtensionOption.html#a5827f0777dbb37eab3d59b9955447769">extension</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <a class="code" href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">value</a>(); }</div><div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;</div><div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1ImplementationExtensionOption.html#adff7bd1dfb526a7bfdab9ac28f830241">print</a>(std::ostream&amp; os) <span class="keyword">const</span>;</div><div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160;    };</div><div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;</div><div class="line"><a name="l00503"></a><span class="lineno"><a class="line" href="classParseV2_1_1Table.html">  503</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1Table.html">Table</a> : <span class="keyword">public</span> <a class="code" href="classParseV2_1_1Line.html">Line</a></div><div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;    {</div><div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;        <a class="code" href="classParseV2_1_1Table.html#aee62b7cc9c88706ccd4b4d136f205c6d">Table</a>(<span class="keyword">const</span> std::string&amp; name, <span class="keyword">const</span> std::string&amp; alias,</div><div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;                <span class="keyword">const</span> std::string&amp; filebase);</div><div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;</div><div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;        <span class="keyword">static</span> <a class="code" href="classParseV2_1_1Table.html">Table</a>* <a class="code" href="classParseV2_1_1Table.html#a944b5b591f2ed8e0265cc952d5f65432">parse</a>(<span class="keyword">const</span> <a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>&amp; tl, <span class="keywordtype">bool</span> subdirective,</div><div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;                <span class="keyword">const</span> <a class="code" href="classParseV2_1_1File.html">File</a>&amp; file);</div><div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;</div><div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;        <span class="keywordtype">void</span> <a class="code" href="classParseV2_1_1Table.html#ab7a13281511548363ddf952af94a1ba9">print</a>(std::ostream&amp; os) <span class="keyword">const</span>;</div><div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;</div><div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;        std::string name_, alias_, filebase_;</div><div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;    };</div><div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160;</div><div class="line"><a name="l00535"></a><span class="lineno"><a class="line" href="classParseV2_1_1FileException.html">  535</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1FileException.html">FileException</a> : <span class="keyword">public</span> mysqlpp::Exception</div><div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;    {</div><div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00542"></a><span class="lineno"><a class="line" href="classParseV2_1_1FileException.html#a1d4d99a0b8f4e741f43c19bd2e9d1239">  542</a></span>&#160;        <a class="code" href="classParseV2_1_1FileException.html#a1d4d99a0b8f4e741f43c19bd2e9d1239">FileException</a>(<span class="keyword">const</span> std::string&amp; what) : Exception(what) { }</div><div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;    };</div><div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;</div><div class="line"><a name="l00547"></a><span class="lineno"><a class="line" href="classParseV2_1_1ParseException.html">  547</a></span>&#160;    <span class="keyword">class </span><a class="code" href="classParseV2_1_1ParseException.html">ParseException</a> : <span class="keyword">public</span> mysqlpp::Exception</div><div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;    {</div><div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;    <span class="keyword">public</span>:</div><div class="line"><a name="l00555"></a><span class="lineno"><a class="line" href="classParseV2_1_1ParseException.html#ac42c59256cd5707595a66c687a7d0899">  555</a></span>&#160;        <a class="code" href="classParseV2_1_1ParseException.html#ac42c59256cd5707595a66c687a7d0899">ParseException</a>(<span class="keyword">const</span> std::string&amp; what,</div><div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160;                <span class="keyword">const</span> std::string&amp; <a class="code" href="classParseV2_1_1ParseException.html#affee9fe44617097663108fc12e043f0f">file_name</a>, <span class="keywordtype">size_t</span> <a class="code" href="classParseV2_1_1ParseException.html#a0598f107daffe96d18d10d2258397ab4">line</a>) :</div><div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;        Exception(what),</div><div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;        file_name_(<a class="code" href="classParseV2_1_1ParseException.html#affee9fe44617097663108fc12e043f0f">file_name</a>),</div><div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;        line_(<a class="code" href="classParseV2_1_1ParseException.html#a0598f107daffe96d18d10d2258397ab4">line</a>)</div><div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;        {</div><div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;        }</div><div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;</div><div class="line"><a name="l00564"></a><span class="lineno"><a class="line" href="classParseV2_1_1ParseException.html#ac708f97c78dd5959c231dd605f35d26c">  564</a></span>&#160;        <a class="code" href="classParseV2_1_1ParseException.html#ac708f97c78dd5959c231dd605f35d26c">~ParseException</a>() throw() { }</div><div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;</div><div class="line"><a name="l00567"></a><span class="lineno"><a class="line" href="classParseV2_1_1ParseException.html#affee9fe44617097663108fc12e043f0f">  567</a></span>&#160;        <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classParseV2_1_1ParseException.html#affee9fe44617097663108fc12e043f0f">file_name</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> file_name_.c_str(); }</div><div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;</div><div class="line"><a name="l00570"></a><span class="lineno"><a class="line" href="classParseV2_1_1ParseException.html#a0598f107daffe96d18d10d2258397ab4">  570</a></span>&#160;        <span class="keywordtype">size_t</span> <a class="code" href="classParseV2_1_1ParseException.html#a0598f107daffe96d18d10d2258397ab4">line</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> line_; }</div><div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;</div><div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;    <span class="keyword">private</span>:</div><div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160;        std::string file_name_;</div><div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;        <span class="keywordtype">size_t</span> line_;</div><div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;    };</div><div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;</div><div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;    <a class="code" href="classParseV2.html#a3d4d6a0732b282675a789f3d34447eda">ParseV2</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* file_name);</div><div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;</div><div class="line"><a name="l00591"></a><span class="lineno"><a class="line" href="classParseV2.html#a63ab65928c74632946b66e92e738a358">  591</a></span>&#160;    <a class="code" href="classParseV2.html#a63ab65928c74632946b66e92e738a358">~ParseV2</a>()</div><div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;    {</div><div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;        <span class="keywordflow">for</span> (<a class="code" href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">LineListIt</a> it = lines_.begin(); it != lines_.end(); ++it) {</div><div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;            <span class="keyword">delete</span> *it;</div><div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;        }</div><div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160;    }</div><div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160;</div><div class="line"><a name="l00599"></a><span class="lineno"><a class="line" href="classParseV2.html#a3bc205774df86e810af78a077806cb4d">  599</a></span>&#160;    <a class="code" href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">LineListIt</a> <a class="code" href="classParseV2.html#a3bc205774df86e810af78a077806cb4d">begin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lines_.begin(); }</div><div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;</div><div class="line"><a name="l00605"></a><span class="lineno"><a class="line" href="classParseV2.html#a1f5b1e2532908d7f9278811a3f58c172">  605</a></span>&#160;    <span class="keywordtype">void</span> <a class="code" href="classParseV2.html#a1f5b1e2532908d7f9278811a3f58c172">clear</a>() { lines_.clear(); }</div><div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;</div><div class="line"><a name="l00608"></a><span class="lineno"><a class="line" href="classParseV2.html#a6f0db9fe97e57756e6764e2588497b22">  608</a></span>&#160;    <a class="code" href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">LineListIt</a> <a class="code" href="classParseV2.html#a6f0db9fe97e57756e6764e2588497b22">end</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> lines_.end(); }</div><div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;</div><div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;    <span class="keywordtype">void</span> tokenize(<a class="code" href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">StringList</a>&amp; tokens, <span class="keyword">const</span> std::string&amp; line) <span class="keyword">const</span>;</div><div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;</div><div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;    File file_;</div><div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;</div><div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;    <a class="code" href="classParseV2.html#a990d7cded72cdead084ae16adcf14276">LineList</a> lines_;</div><div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;};</div><div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;</div><div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160;std::ostream&amp; operator&lt;&lt;(std::ostream&amp; os, <span class="keyword">const</span> <a class="code" href="classParseV2_1_1Line.html">ParseV2::Line</a>&amp; line);</div><div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;</div><div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;<span class="preprocessor">#endif // !defined(MYSQLPP_SSX_PARSEV2_H)</span></div><div class="ttc" id="classParseV2_1_1HeaderExtensionOption_html_a36c66cb8254087e6267a80c7f0c99def"><div class="ttname"><a href="classParseV2_1_1HeaderExtensionOption.html#a36c66cb8254087e6267a80c7f0c99def">ParseV2::HeaderExtensionOption::HeaderExtensionOption</a></div><div class="ttdeci">HeaderExtensionOption(const std::string &amp;value)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:470</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aa96175a182b04f1d579d1555e99e2aa13"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa96175a182b04f1d579d1555e99e2aa13">ParseV2::Field::Type::ft_set</a></div><div class="ttdoc">SET.</div><div class="ttdef"><b>Definition:</b> parsev2.h:257</div></div>
<div class="ttc" id="classParseV2_html_a6f0db9fe97e57756e6764e2588497b22"><div class="ttname"><a href="classParseV2.html#a6f0db9fe97e57756e6764e2588497b22">ParseV2::end</a></div><div class="ttdeci">LineListIt end() const</div><div class="ttdoc">Get an iterator pointing just past the end of our LineList.</div><div class="ttdef"><b>Definition:</b> parsev2.h:608</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809a"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809a">ParseV2::Field::Type::Value</a></div><div class="ttdeci">Value</div><div class="ttdoc">Known SQL field types.</div><div class="ttdef"><b>Definition:</b> parsev2.h:245</div></div>
<div class="ttc" id="classParseV2_1_1Option_html_a456be9380b3e3457794a6851fb9b7356"><div class="ttname"><a href="classParseV2_1_1Option.html#a456be9380b3e3457794a6851fb9b7356">ParseV2::Option::~Option</a></div><div class="ttdeci">virtual ~Option()</div><div class="ttdoc">Virtual dtor, since this is a base class.</div><div class="ttdef"><b>Definition:</b> parsev2.h:355</div></div>
<div class="ttc" id="classParseV2_1_1Field_html_aa6ce22a2c42ea9d0ddeae06d1562e77d"><div class="ttname"><a href="classParseV2_1_1Field.html#aa6ce22a2c42ea9d0ddeae06d1562e77d">ParseV2::Field::Field</a></div><div class="ttdeci">Field(const std::string &amp;name, const std::string &amp;type, bool is_unsigned=false, bool is_null=false, bool is_autoinc=false, bool is_key=false, const std::string &amp;alias=0)</div><div class="ttdoc">Holds information about a SQL field declared in the SSQLS v2 language.</div><div class="ttdef"><b>Definition:</b> parsev2.h:192</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aa63a1ccf72a79e28b44cbd6157c33b67a"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa63a1ccf72a79e28b44cbd6157c33b67a">ParseV2::Field::Type::ft_float</a></div><div class="ttdoc">FLOAT, FLOAT4, FLOAT8.</div><div class="ttdef"><b>Definition:</b> parsev2.h:250</div></div>
<div class="ttc" id="classParseV2_1_1ImplementationExtensionOption_html"><div class="ttname"><a href="classParseV2_1_1ImplementationExtensionOption.html">ParseV2::ImplementationExtensionOption</a></div><div class="ttdoc">'option implementation_extension' directive line</div><div class="ttdef"><b>Definition:</b> parsev2.h:484</div></div>
<div class="ttc" id="classParseV2_1_1File_html_add3240e9094fe7066e23c5e9f0051cb2"><div class="ttname"><a href="classParseV2_1_1File.html#add3240e9094fe7066e23c5e9f0051cb2">ParseV2::File::name</a></div><div class="ttdeci">const char * name() const</div><div class="ttdoc">Return the file's name.</div><div class="ttdef"><b>Definition:</b> parsev2.h:72</div></div>
<div class="ttc" id="classParseV2_1_1ExceptionOnSchemaMismatchOption_html"><div class="ttname"><a href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html">ParseV2::ExceptionOnSchemaMismatchOption</a></div><div class="ttdoc">'option exception_on_schema_mismatch' directive line</div><div class="ttdef"><b>Definition:</b> parsev2.h:443</div></div>
<div class="ttc" id="classParseV2_1_1Include_html"><div class="ttname"><a href="classParseV2_1_1Include.html">ParseV2::Include</a></div><div class="ttdoc">'include' directive line</div><div class="ttdef"><b>Definition:</b> parsev2.h:300</div></div>
<div class="ttc" id="classParseV2_1_1AccessorStyleOption_html_a063854d885c24e9eb77ab086e3d9baad"><div class="ttname"><a href="classParseV2_1_1AccessorStyleOption.html#a063854d885c24e9eb77ab086e3d9baad">ParseV2::AccessorStyleOption::AccessorStyleOption</a></div><div class="ttdeci">AccessorStyleOption(const std::string &amp;value, const File &amp;file)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:407</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aaa5c3dda73ca880cbf48ec8b68908a3a7"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaa5c3dda73ca880cbf48ec8b68908a3a7">ParseV2::Field::Type::ft_time</a></div><div class="ttdoc">TIME.</div><div class="ttdef"><b>Definition:</b> parsev2.h:256</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html">ParseV2::Field::Type</a></div><div class="ttdoc">A smart enum for converting SQL type strings to one of a relatively few types we directly support.</div><div class="ttdef"><b>Definition:</b> parsev2.h:229</div></div>
<div class="ttc" id="classParseV2_1_1ParseException_html"><div class="ttname"><a href="classParseV2_1_1ParseException.html">ParseV2::ParseException</a></div><div class="ttdoc">Exception object thrown by File::error() to report an SSQLS v2 parsing error.</div><div class="ttdef"><b>Definition:</b> parsev2.h:547</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a1d5d56cc46c95c2813105d9819d273ce"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a1d5d56cc46c95c2813105d9819d273ce">ParseV2::Field::Type::Type</a></div><div class="ttdeci">Type(const std::string &amp;s)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:251</div></div>
<div class="ttc" id="classParseV2_1_1ParseException_html_affee9fe44617097663108fc12e043f0f"><div class="ttname"><a href="classParseV2_1_1ParseException.html#affee9fe44617097663108fc12e043f0f">ParseV2::ParseException::file_name</a></div><div class="ttdeci">const char * file_name() const</div><div class="ttdoc">Get name of file where error occurred.</div><div class="ttdef"><b>Definition:</b> parsev2.h:567</div></div>
<div class="ttc" id="classParseV2_1_1Include_html_a056ae31993becdc3720e019931d427ea"><div class="ttname"><a href="classParseV2_1_1Include.html#a056ae31993becdc3720e019931d427ea">ParseV2::Include::end</a></div><div class="ttdeci">LineListIt end() const</div><div class="ttdoc">Get an iterator pointing to just past the end of the sub-parse's LineList.</div><div class="ttdef"><b>Definition:</b> parsev2.h:322</div></div>
<div class="ttc" id="classParseV2_1_1Include_html_a1d606e2fa4ce9b6d9c5855c1283015d8"><div class="ttname"><a href="classParseV2_1_1Include.html#a1d606e2fa4ce9b6d9c5855c1283015d8">ParseV2::Include::~Include</a></div><div class="ttdeci">~Include()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:314</div></div>
<div class="ttc" id="classParseV2_1_1ImplementationExtensionOption_html_a5827f0777dbb37eab3d59b9955447769"><div class="ttname"><a href="classParseV2_1_1ImplementationExtensionOption.html#a5827f0777dbb37eab3d59b9955447769">ParseV2::ImplementationExtensionOption::extension</a></div><div class="ttdeci">const char * extension() const</div><div class="ttdoc">Return the extension used for C++ implementation files we emit.</div><div class="ttdef"><b>Definition:</b> parsev2.h:495</div></div>
<div class="ttc" id="classParseV2_1_1Include_html_ab7da4b13607657458c4c5a14585012b2"><div class="ttname"><a href="classParseV2_1_1Include.html#ab7da4b13607657458c4c5a14585012b2">ParseV2::Include::begin</a></div><div class="ttdeci">LineListIt begin() const</div><div class="ttdoc">Get an iterator pointing to the start of the.</div><div class="ttdef"><b>Definition:</b> parsev2.h:318</div></div>
<div class="ttc" id="classParseV2_1_1Line_html_aa826982abc96f7d5013440572a0dafe1"><div class="ttname"><a href="classParseV2_1_1Line.html#aa826982abc96f7d5013440572a0dafe1">ParseV2::Line::parse</a></div><div class="ttdeci">static Line * parse(const StringList &amp;tl, bool subdirective, const File &amp;file)</div><div class="ttdoc">Virtual ctor, creating one of our subclass objects based on what we're passed.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:485</div></div>
<div class="ttc" id="classParseV2_1_1Line_html_aff17fe2a6e9ffca4cfc9590b43cd9015"><div class="ttname"><a href="classParseV2_1_1Line.html#aff17fe2a6e9ffca4cfc9590b43cd9015">ParseV2::Line::~Line</a></div><div class="ttdeci">virtual ~Line()</div><div class="ttdoc">Virtual dtor, since this is a base class.</div><div class="ttdef"><b>Definition:</b> parsev2.h:140</div></div>
<div class="ttc" id="classParseV2_1_1HeaderExtensionOption_html_ac3c602d3dcccf9816f7ec7128e8a863e"><div class="ttname"><a href="classParseV2_1_1HeaderExtensionOption.html#ac3c602d3dcccf9816f7ec7128e8a863e">ParseV2::HeaderExtensionOption::print</a></div><div class="ttdeci">void print(std::ostream &amp;os) const</div><div class="ttdoc">Print the option description out to a stream in SSQLS v2 form.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:452</div></div>
<div class="ttc" id="classParseV2_1_1Option_html_a75272b425b1f9a14b016083f31754b30"><div class="ttname"><a href="classParseV2_1_1Option.html#a75272b425b1f9a14b016083f31754b30">ParseV2::Option::parse_bool</a></div><div class="ttdeci">static bool parse_bool(const std::string &amp;value)</div><div class="ttdoc">Convert a string expressing a boolean value to a bool.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:575</div></div>
<div class="ttc" id="classParseV2_html_a990d7cded72cdead084ae16adcf14276"><div class="ttname"><a href="classParseV2.html#a990d7cded72cdead084ae16adcf14276">ParseV2::LineList</a></div><div class="ttdeci">std::vector&lt; Line * &gt; LineList</div><div class="ttdoc">A list of pointers to Line objects.</div><div class="ttdef"><b>Definition:</b> parsev2.h:167</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a1ac635e3af4c8c739c1bfec7a6e0418d"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a1ac635e3af4c8c739c1bfec7a6e0418d">ParseV2::Field::Type::print</a></div><div class="ttdeci">void print(std::ostream &amp;os) const</div><div class="ttdoc">Print type description out to a stream in SSQLS v2 form.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:305</div></div>
<div class="ttc" id="classParseV2_1_1FileException_html"><div class="ttname"><a href="classParseV2_1_1FileException.html">ParseV2::FileException</a></div><div class="ttdoc">Exception object thrown to indicate a file I/O error.</div><div class="ttdef"><b>Definition:</b> parsev2.h:535</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a9e20e420fee1cac85a261bececd575cf"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a9e20e420fee1cac85a261bececd575cf">ParseV2::Field::Type::operator==</a></div><div class="ttdeci">bool operator==(const Type &amp;rhs) const</div><div class="ttdoc">Equality operator.</div><div class="ttdef"><b>Definition:</b> parsev2.h:282</div></div>
<div class="ttc" id="classParseV2_1_1ExceptionOnSchemaMismatchOption_html_aaadf2bde89498c79c66c1ea6ee4bd471"><div class="ttname"><a href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html#aaadf2bde89498c79c66c1ea6ee4bd471">ParseV2::ExceptionOnSchemaMismatchOption::ExceptionOnSchemaMismatchOption</a></div><div class="ttdeci">ExceptionOnSchemaMismatchOption(const std::string &amp;value)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:447</div></div>
<div class="ttc" id="classParseV2_1_1Line_html"><div class="ttname"><a href="classParseV2_1_1Line.html">ParseV2::Line</a></div><div class="ttdoc">Base class for parsed SSQLS v2 declaration lines.</div><div class="ttdef"><b>Definition:</b> parsev2.h:136</div></div>
<div class="ttc" id="classParseV2_1_1AccessorStyleOption_html"><div class="ttname"><a href="classParseV2_1_1AccessorStyleOption.html">ParseV2::AccessorStyleOption</a></div><div class="ttdoc">'option accessor_style' directive line</div><div class="ttdef"><b>Definition:</b> parsev2.h:403</div></div>
<div class="ttc" id="classParseV2_1_1ImplementationExtensionOption_html_adff7bd1dfb526a7bfdab9ac28f830241"><div class="ttname"><a href="classParseV2_1_1ImplementationExtensionOption.html#adff7bd1dfb526a7bfdab9ac28f830241">ParseV2::ImplementationExtensionOption::print</a></div><div class="ttdeci">void print(std::ostream &amp;os) const</div><div class="ttdoc">Print the option description out to a stream in SSQLS v2 form.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:459</div></div>
<div class="ttc" id="classParseV2_1_1Field_html"><div class="ttname"><a href="classParseV2_1_1Field.html">ParseV2::Field</a></div><div class="ttdoc">'field' directive line</div><div class="ttdef"><b>Definition:</b> parsev2.h:176</div></div>
<div class="ttc" id="classParseV2_1_1File_html_a6b57fdcc906c83f0315b373f0e8e5763"><div class="ttname"><a href="classParseV2_1_1File.html#a6b57fdcc906c83f0315b373f0e8e5763">ParseV2::File::parse_error</a></div><div class="ttdeci">void parse_error(const std::ostringstream &amp;msg) const</div><div class="ttdef"><b>Definition:</b> parsev2.h:79</div></div>
<div class="ttc" id="classParseV2_1_1Option_html_a53cc8e9341f541bb753b1c49eed14380"><div class="ttname"><a href="classParseV2_1_1Option.html#a53cc8e9341f541bb753b1c49eed14380">ParseV2::Option::parse</a></div><div class="ttdeci">static Option * parse(const StringList &amp;tl, bool subdirective, const File &amp;file)</div><div class="ttdoc">Attempt to create an Option object from information in the passed StringList.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:536</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a057b582f88dd2c50624b9de9076a86c4"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a057b582f88dd2c50624b9de9076a86c4">ParseV2::Field::Type::Type</a></div><div class="ttdeci">Type(Value v)</div><div class="ttdoc">Copy constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:269</div></div>
<div class="ttc" id="classParseV2_1_1Include_html_a485c5a373fb7c33a1d20e9696381e4ba"><div class="ttname"><a href="classParseV2_1_1Include.html#a485c5a373fb7c33a1d20e9696381e4ba">ParseV2::Include::Include</a></div><div class="ttdeci">Include(const char *file_name)</div><div class="ttdoc">Given the name of another SSQLS v2 file, load it up and parse it. Its contents will appear transparen...</div><div class="ttdef"><b>Definition:</b> parsev2.h:308</div></div>
<div class="ttc" id="classParseV2_html_a63ab65928c74632946b66e92e738a358"><div class="ttname"><a href="classParseV2.html#a63ab65928c74632946b66e92e738a358">ParseV2::~ParseV2</a></div><div class="ttdeci">~ParseV2()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:591</div></div>
<div class="ttc" id="classParseV2_1_1ParseException_html_ac708f97c78dd5959c231dd605f35d26c"><div class="ttname"><a href="classParseV2_1_1ParseException.html#ac708f97c78dd5959c231dd605f35d26c">ParseV2::ParseException::~ParseException</a></div><div class="ttdeci">~ParseException()</div><div class="ttdoc">Destructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:564</div></div>
<div class="ttc" id="classParseV2_1_1File_html_aec27eaef06e40671bbb8228c4fd29471"><div class="ttname"><a href="classParseV2_1_1File.html#aec27eaef06e40671bbb8228c4fd29471">ParseV2::File::error</a></div><div class="ttdeci">void error(const std::ostringstream &amp;msg) const</div><div class="ttdef"><b>Definition:</b> parsev2.h:68</div></div>
<div class="ttc" id="classParseV2_1_1AccessorStyleOption_html_a0877b6c0053b8649dc073e1889f5c3d7"><div class="ttname"><a href="classParseV2_1_1AccessorStyleOption.html#a0877b6c0053b8649dc073e1889f5c3d7">ParseV2::AccessorStyleOption::print</a></div><div class="ttdeci">void print(std::ostream &amp;os) const</div><div class="ttdoc">Print the option description out to a stream in SSQLS v2 form.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:122</div></div>
<div class="ttc" id="classParseV2_1_1HeaderExtensionOption_html"><div class="ttname"><a href="classParseV2_1_1HeaderExtensionOption.html">ParseV2::HeaderExtensionOption</a></div><div class="ttdoc">'option header_extension' directive line</div><div class="ttdef"><b>Definition:</b> parsev2.h:466</div></div>
<div class="ttc" id="classParseV2_1_1FileException_html_a1d4d99a0b8f4e741f43c19bd2e9d1239"><div class="ttname"><a href="classParseV2_1_1FileException.html#a1d4d99a0b8f4e741f43c19bd2e9d1239">ParseV2::FileException::FileException</a></div><div class="ttdeci">FileException(const std::string &amp;what)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:542</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aa5c0b865d30c764e79ed0435d1a0f9401"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa5c0b865d30c764e79ed0435d1a0f9401">ParseV2::Field::Type::ft_double</a></div><div class="ttdoc">DOUBLE, DECIMAL, FIXED, NUMERIC.</div><div class="ttdef"><b>Definition:</b> parsev2.h:251</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aac31ea1ad6a760baa8102f6541e5ce75c"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aac31ea1ad6a760baa8102f6541e5ce75c">ParseV2::Field::Type::ft_mediumint</a></div><div class="ttdoc">INT, MEDIUMINT, INT3, INT4.</div><div class="ttdef"><b>Definition:</b> parsev2.h:248</div></div>
<div class="ttc" id="classParseV2_1_1Include_html_a15dac2571c420a8afed5111d20ba2cb4"><div class="ttname"><a href="classParseV2_1_1Include.html#a15dac2571c420a8afed5111d20ba2cb4">ParseV2::Include::parse</a></div><div class="ttdeci">static Include * parse(const StringList &amp;tl, bool subdirective, const File &amp;file)</div><div class="ttdoc">Attempt to create an Include object from information in the passed StringList.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:466</div></div>
<div class="ttc" id="classParseV2_1_1Line_html_a7b9e9c446ef2a7985598b2f4cb0e2820"><div class="ttname"><a href="classParseV2_1_1Line.html#a7b9e9c446ef2a7985598b2f4cb0e2820">ParseV2::Line::Line</a></div><div class="ttdeci">Line()</div><div class="ttdoc">Protected ctor, to prevent instantiation.</div><div class="ttdef"><b>Definition:</b> parsev2.h:161</div></div>
<div class="ttc" id="classParseV2_1_1File_html_a398eef7e1fe978865b26b24e8efb7443"><div class="ttname"><a href="classParseV2_1_1File.html#a398eef7e1fe978865b26b24e8efb7443">ParseV2::File::parse_error</a></div><div class="ttdeci">void parse_error(const std::string &amp;msg) const</div><div class="ttdoc">Throw a ParseException containing the given message and our stored info about the file name and curre...</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:399</div></div>
<div class="ttc" id="classParseV2_1_1Option_html_ae0724c95b0f0e6282039742526183954"><div class="ttname"><a href="classParseV2_1_1Option.html#ae0724c95b0f0e6282039742526183954">ParseV2::Option::value</a></div><div class="ttdeci">const char * value() const</div><div class="ttdoc">Return the option's value in string form, unmodified from the original parse.</div><div class="ttdef"><b>Definition:</b> parsev2.h:395</div></div>
<div class="ttc" id="classParseV2_html"><div class="ttname"><a href="classParseV2.html">ParseV2</a></div><div class="ttdoc">Parses SSQLS v2 documents and holds the parse result.</div><div class="ttdef"><b>Definition:</b> parsev2.h:41</div></div>
<div class="ttc" id="classParseV2_1_1Table_html_a944b5b591f2ed8e0265cc952d5f65432"><div class="ttname"><a href="classParseV2_1_1Table.html#a944b5b591f2ed8e0265cc952d5f65432">ParseV2::Table::parse</a></div><div class="ttdeci">static Table * parse(const StringList &amp;tl, bool subdirective, const File &amp;file)</div><div class="ttdoc">Attempt to create a Table object from information in the passed StringList.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:605</div></div>
<div class="ttc" id="classParseV2_html_a3bc205774df86e810af78a077806cb4d"><div class="ttname"><a href="classParseV2.html#a3bc205774df86e810af78a077806cb4d">ParseV2::begin</a></div><div class="ttdeci">LineListIt begin() const</div><div class="ttdoc">Get an iterator pointing to the start of our LineList.</div><div class="ttdef"><b>Definition:</b> parsev2.h:599</div></div>
<div class="ttc" id="classParseV2_1_1File_html"><div class="ttname"><a href="classParseV2_1_1File.html">ParseV2::File</a></div><div class="ttdoc">Holds information about an SSQLS v2 file we're parsing.</div><div class="ttdef"><b>Definition:</b> parsev2.h:57</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aa3a3d6b94f255af750658c26926b2f1b7"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa3a3d6b94f255af750658c26926b2f1b7">ParseV2::Field::Type::ft_bigint</a></div><div class="ttdoc">BIGINT, INT8.</div><div class="ttdef"><b>Definition:</b> parsev2.h:249</div></div>
<div class="ttc" id="classParseV2_1_1ParseException_html_ac42c59256cd5707595a66c687a7d0899"><div class="ttname"><a href="classParseV2_1_1ParseException.html#ac42c59256cd5707595a66c687a7d0899">ParseV2::ParseException::ParseException</a></div><div class="ttdeci">ParseException(const std::string &amp;what, const std::string &amp;file_name, size_t line)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:555</div></div>
<div class="ttc" id="classParseV2_1_1HeaderExtensionOption_html_ab01027b479c78ab0ba43036d8f25ba0b"><div class="ttname"><a href="classParseV2_1_1HeaderExtensionOption.html#ab01027b479c78ab0ba43036d8f25ba0b">ParseV2::HeaderExtensionOption::extension</a></div><div class="ttdeci">const char * extension() const</div><div class="ttdoc">Return the extension used for C++ headers we emit.</div><div class="ttdef"><b>Definition:</b> parsev2.h:476</div></div>
<div class="ttc" id="classParseV2_1_1Option_html"><div class="ttname"><a href="classParseV2_1_1Option.html">ParseV2::Option</a></div><div class="ttdoc">Base class for known SSQLS v2 'option' directives.</div><div class="ttdef"><b>Definition:</b> parsev2.h:351</div></div>
<div class="ttc" id="classParseV2_html_a3d4d6a0732b282675a789f3d34447eda"><div class="ttname"><a href="classParseV2.html#a3d4d6a0732b282675a789f3d34447eda">ParseV2::ParseV2</a></div><div class="ttdeci">ParseV2(const char *file_name)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:52</div></div>
<div class="ttc" id="classParseV2_html_a82c28f8cd009372d06cd0bd39927ff34"><div class="ttname"><a href="classParseV2.html#a82c28f8cd009372d06cd0bd39927ff34">ParseV2::StringList</a></div><div class="ttdeci">std::vector&lt; std::string &gt; StringList</div><div class="ttdoc">List of tokens as returned by boost::algorithm::split.</div><div class="ttdef"><b>Definition:</b> parsev2.h:45</div></div>
<div class="ttc" id="classParseV2_html_aaf95b203eb1884be2bfff2bc514c2385"><div class="ttname"><a href="classParseV2.html#aaf95b203eb1884be2bfff2bc514c2385">ParseV2::StringListIt</a></div><div class="ttdeci">StringList::const_iterator StringListIt</div><div class="ttdoc">Iterator into a StringList.</div><div class="ttdef"><b>Definition:</b> parsev2.h:50</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aacd5a51ec63c37340ee8c20aa3c8fbf5b"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aacd5a51ec63c37340ee8c20aa3c8fbf5b">ParseV2::Field::Type::ft_smallint</a></div><div class="ttdoc">SMALLINT, INT2.</div><div class="ttdef"><b>Definition:</b> parsev2.h:247</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aa6fdbfe468f5f4266c6510e0270854f0d"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa6fdbfe468f5f4266c6510e0270854f0d">ParseV2::Field::Type::ft_date</a></div><div class="ttdoc">DATE.</div><div class="ttdef"><b>Definition:</b> parsev2.h:254</div></div>
<div class="ttc" id="classParseV2_1_1File_html_a57054380470df2373f99236d7d6884bc"><div class="ttname"><a href="classParseV2_1_1File.html#a57054380470df2373f99236d7d6884bc">ParseV2::File::error</a></div><div class="ttdeci">void error(const std::string &amp;msg) const</div><div class="ttdoc">Throw a FileException containing the given message.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:392</div></div>
<div class="ttc" id="classParseV2_1_1Field_html_aa7f960b3aefb37f18f4c8160c468f2c6"><div class="ttname"><a href="classParseV2_1_1Field.html#aa7f960b3aefb37f18f4c8160c468f2c6">ParseV2::Field::parse</a></div><div class="ttdeci">static Field * parse(const StringList &amp;tl, bool subdirective, const File &amp;file)</div><div class="ttdoc">Attempt to create a Field object from information in the passed StringList.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:170</div></div>
<div class="ttc" id="classParseV2_1_1Line_html_a7b009a7af2f3f28522ee4879cdc5a714"><div class="ttname"><a href="classParseV2_1_1Line.html#a7b009a7af2f3f28522ee4879cdc5a714">ParseV2::Line::print</a></div><div class="ttdeci">virtual void print(std::ostream &amp;os) const =0</div><div class="ttdoc">Print line's contents out to a stream in SSQLS v2 form.</div></div>
<div class="ttc" id="classParseV2_1_1ExceptionOnSchemaMismatchOption_html_aa4b33add97530ba455c49565f5e96b80"><div class="ttname"><a href="classParseV2_1_1ExceptionOnSchemaMismatchOption.html#aa4b33add97530ba455c49565f5e96b80">ParseV2::ExceptionOnSchemaMismatchOption::print</a></div><div class="ttdeci">void print(std::ostream &amp;os) const</div><div class="ttdoc">Print the option description out to a stream in SSQLS v2 form.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:162</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aaa5e69fa2814c4c51d60985639950c2f8"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaa5e69fa2814c4c51d60985639950c2f8">ParseV2::Field::Type::ft_tinyint</a></div><div class="ttdoc">TINYINT, INT1, BOOL.</div><div class="ttdef"><b>Definition:</b> parsev2.h:246</div></div>
<div class="ttc" id="classParseV2_html_a1f5b1e2532908d7f9278811a3f58c172"><div class="ttname"><a href="classParseV2.html#a1f5b1e2532908d7f9278811a3f58c172">ParseV2::clear</a></div><div class="ttdeci">void clear()</div><div class="ttdoc">Dump our line list.</div><div class="ttdef"><b>Definition:</b> parsev2.h:605</div></div>
<div class="ttc" id="classParseV2_1_1ParseException_html_a0598f107daffe96d18d10d2258397ab4"><div class="ttname"><a href="classParseV2_1_1ParseException.html#a0598f107daffe96d18d10d2258397ab4">ParseV2::ParseException::line</a></div><div class="ttdeci">size_t line() const</div><div class="ttdoc">Get line number where error occurred.</div><div class="ttdef"><b>Definition:</b> parsev2.h:570</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aa4c981f01f5eaed4cf09d02f7b5bd85ae"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aa4c981f01f5eaed4cf09d02f7b5bd85ae">ParseV2::Field::Type::ft_string</a></div><div class="ttdoc">*CHAR, ENUM, *TEXT</div><div class="ttdef"><b>Definition:</b> parsev2.h:252</div></div>
<div class="ttc" id="classParseV2_1_1File_html_a8c547ea1669eaba62bfe8e440427cb83"><div class="ttname"><a href="classParseV2_1_1File.html#a8c547ea1669eaba62bfe8e440427cb83">ParseV2::File::read_line</a></div><div class="ttdeci">bool read_line(std::string &amp;line, bool &amp;subdirective)</div><div class="ttdoc">Read a line in from a file.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:406</div></div>
<div class="ttc" id="classParseV2_html_a584f29a938ee2a610d92c42e735e9345"><div class="ttname"><a href="classParseV2.html#a584f29a938ee2a610d92c42e735e9345">ParseV2::LineListIt</a></div><div class="ttdeci">LineList::const_iterator LineListIt</div><div class="ttdoc">Iterator into a LineList.</div><div class="ttdef"><b>Definition:</b> parsev2.h:173</div></div>
<div class="ttc" id="classParseV2_1_1File_html_a00e1ed751956f1c35bfbe1bf4025ca2e"><div class="ttname"><a href="classParseV2_1_1File.html#a00e1ed751956f1c35bfbe1bf4025ca2e">ParseV2::File::File</a></div><div class="ttdeci">File(const char *file_name)</div><div class="ttdoc">Open a file for reading, using the search path to file the file if the direct path isn't readable.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:325</div></div>
<div class="ttc" id="classParseV2_1_1Table_html"><div class="ttname"><a href="classParseV2_1_1Table.html">ParseV2::Table</a></div><div class="ttdoc">'table' directive line</div><div class="ttdef"><b>Definition:</b> parsev2.h:503</div></div>
<div class="ttc" id="classParseV2_1_1Option_html_aef17c339ffb010ead58c8a814317a7a6"><div class="ttname"><a href="classParseV2_1_1Option.html#aef17c339ffb010ead58c8a814317a7a6">ParseV2::Option::Option</a></div><div class="ttdeci">Option(const std::string &amp;value)</div><div class="ttdoc">Protected ctor, so we cannot be directly instantiated.</div><div class="ttdef"><b>Definition:</b> parsev2.h:371</div></div>
<div class="ttc" id="classParseV2_1_1Field_html_a6387940cb703182320108eacc6a1b322"><div class="ttname"><a href="classParseV2_1_1Field.html#a6387940cb703182320108eacc6a1b322">ParseV2::Field::print</a></div><div class="ttdeci">void print(std::ostream &amp;os) const</div><div class="ttdoc">Print field description out to a stream in SSQLS v2 form.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:239</div></div>
<div class="ttc" id="classParseV2_1_1ImplementationExtensionOption_html_a929367da7003d0153946c387056fca2b"><div class="ttname"><a href="classParseV2_1_1ImplementationExtensionOption.html#a929367da7003d0153946c387056fca2b">ParseV2::ImplementationExtensionOption::ImplementationExtensionOption</a></div><div class="ttdeci">ImplementationExtensionOption(const std::string &amp;value)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.h:488</div></div>
<div class="ttc" id="classParseV2_1_1Table_html_ab7a13281511548363ddf952af94a1ba9"><div class="ttname"><a href="classParseV2_1_1Table.html#ab7a13281511548363ddf952af94a1ba9">ParseV2::Table::print</a></div><div class="ttdeci">void print(std::ostream &amp;os) const</div><div class="ttdoc">Print the table description out to a stream in SSQLS v2 form.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:645</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aaad85df4028dad98c65c6973f8011de27"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaad85df4028dad98c65c6973f8011de27">ParseV2::Field::Type::ft_datetime</a></div><div class="ttdoc">DATETIME, TIMESTAMP.</div><div class="ttdef"><b>Definition:</b> parsev2.h:255</div></div>
<div class="ttc" id="classParseV2_1_1Table_html_aee62b7cc9c88706ccd4b4d136f205c6d"><div class="ttname"><a href="classParseV2_1_1Table.html#aee62b7cc9c88706ccd4b4d136f205c6d">ParseV2::Table::Table</a></div><div class="ttdeci">Table(const std::string &amp;name, const std::string &amp;alias, const std::string &amp;filebase)</div><div class="ttdoc">Constructor.</div><div class="ttdef"><b>Definition:</b> parsev2.cpp:595</div></div>
<div class="ttc" id="classParseV2_1_1Field_1_1Type_html_a6cbba2eeba8e2912d4441bfe2ff1809aaffa7d20a15cc427743f09a9e34036c1f"><div class="ttname"><a href="classParseV2_1_1Field_1_1Type.html#a6cbba2eeba8e2912d4441bfe2ff1809aaffa7d20a15cc427743f09a9e34036c1f">ParseV2::Field::Type::ft_blob</a></div><div class="ttdoc">*BLOB, VARBINARY</div><div class="ttdef"><b>Definition:</b> parsev2.h:253</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Jul 21 2019 05:32:21 for MySQL++ SSQLS v2 Translator by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.15
</small></address>
</body>
</html>