1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5 <html xmlns="http://www.w3.org/1999/xhtml">
7 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
9 <title>コマンドラインオプション — プログラミング言語 Ring 1.12 取扱説明書</title>
11 <link rel="stylesheet" href="_static/bootstrap-astropy.css" type="text/css" />
12 <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
14 <script type="text/javascript">
15 var DOCUMENTATION_OPTIONS = {
18 COLLAPSE_INDEX: false,
23 <script type="text/javascript" src="_static/jquery.js"></script>
24 <script type="text/javascript" src="_static/underscore.js"></script>
25 <script type="text/javascript" src="_static/doctools.js"></script>
26 <script type="text/javascript" src="_static/translations.js"></script>
27 <link rel="top" title="プログラミング言語 Ring 1.12 取扱説明書" href="index.html" />
28 <link rel="next" title="性能改善に関する情報" href="performancetips.html" />
29 <link rel="prev" title="型ヒントライブラリについて" href="typehints.html" />
30 <link href='https://fonts.googleapis.com/css?family=Source+Sans+Pro:200,600' rel='stylesheet' type='text/css'/>
33 <body role="document">
35 <a class="brand" title="Documentation Home" href="index.html"><span id="logotext1">🍩Ring</span><span id="logotext2"> 1.12</span><span id="logotext3">:docs</span></a>
38 <li><a href="http://ring-lang.sourceforge.net/news.html">News</a></li>
39 <li><a href="http://ring-lang.sourceforge.net/download.html">Download</a></li>
40 <li><a href="https://groups.google.com/forum/#!forum/ring-lang">Get Help</a></li>
41 <li><a href="https://github.com/ring-lang/ring">Contribute</a></li>
42 <li><a href="http://ring-lang.sourceforge.net/resources.html">Resources</a></li>
43 <li><a href="http://ring-lang.sourceforge.net/team.html">Team</a></li>
45 <li><a title="Ring Homepage" href="http://ring-lang.net/">Website</a></li>
46 <li><a title="総合索引" href="genindex.html">Index</a></li>
50 <form action="search.html" method="get">
51 <input type="text" name="q" placeholder="Search" />
52 <input type="hidden" name="check_keywords" value="yes" />
53 <input type="hidden" name="area" value="default" />
64 <a href="performancetips.html" title="性能改善に関する情報">
69 <a href="typehints.html" title="型ヒントライブラリについて">
75 <a href="index.html">プログラミング言語 Ring 1.12 取扱説明書</a>
84 <div class="document">
85 <div class="documentwrapper">
86 <div class="bodywrapper">
87 <div class="body" role="main">
89 <div class="section" id="index-0">
90 <span id="id1"></span><h1>コマンドラインオプション<a class="headerlink" href="#index-0" title="このヘッドラインへのパーマリンク">¶</a></h1>
91 <p>Ring はソースコードファイル (*.ring) または、オブジェクトファイル (*.ringo) とオプションを指定するとプログラムを実行します。</p>
93 <div class="highlight-bash"><div class="highlight"><pre>ring <ファイル名.ring><span class="p">|</span><ファイル名.ringo> <span class="o">[</span>オプション<span class="o">]</span>
97 <table border="1" class="docutils">
102 <thead valign="bottom">
103 <tr class="row-odd"><th class="head">オプション</th>
104 <th class="head">説明</th>
108 <tr class="row-even"><td>-tokens</td>
109 <td>ソースコードファイルのトークンリストを表示します。</td>
111 <tr class="row-odd"><td>-rules</td>
112 <td>トークンに適用された文法規則を表示します。</td>
114 <tr class="row-even"><td>-ic</td>
115 <td>中間バイトコードを表示します (実行前)。</td>
117 <tr class="row-odd"><td>-icfinal</td>
118 <td>最終バイトコードを表示します (実行後)。</td>
120 <tr class="row-even"><td>-cgi</td>
121 <td>エラーメッセージの前に http レスポンスヘッダを表示します。</td>
123 <tr class="row-odd"><td>-norun</td>
124 <td>コンパイル後にプログラムを実行しません。</td>
126 <tr class="row-even"><td>-ins</td>
127 <td>実行前に命令演算コードを表示します。</td>
129 <tr class="row-odd"><td>-performance</td>
130 <td>プログラムの実行前後に処理時間測定結果を表示します。</td>
132 <tr class="row-even"><td>-go</td>
133 <td>オブジェクトファイルを生成します。</td>
135 <tr class="row-odd"><td>-geo</td>
136 <td>組込型オブジェクトファイル (C ソースコード) を生成します。</td>
138 <tr class="row-even"><td>-w</td>
143 <div class="admonition note">
144 <p class="first admonition-title">注釈</p>
145 <p class="last">オブジェクトファイル形式では、一部使用できないオプションがあります。</p>
147 <div class="section" id="index-1">
148 <span id="id2"></span><h2>トークンの表示<a class="headerlink" href="#index-1" title="このヘッドラインへのパーマリンク">¶</a></h2>
150 <div class="highlight-ring"><div class="highlight"><pre><span class="k">Func</span> <span class="n">Main</span>
151 <span class="k">See</span> <span class="s">"Hello World"</span> <span class="o">+</span> <span class="n">nl</span>
152 <span class="k">for</span> <span class="n">x</span> <span class="o">=</span> <span class="mi">1</span> <span class="k">to</span> <span class="mi">10</span>
153 <span class="k">see</span> <span class="n">x</span> <span class="o">+</span> <span class="n">nl</span>
154 <span class="k">next</span>
155 <span class="n">test</span><span class="p">()</span>
157 <span class="k">func</span> <span class="n">test</span>
158 <span class="k">see</span> <span class="s">"welcome"</span> <span class="o">+</span> <span class="n">nl</span>
159 <span class="n">o1</span> <span class="o">=</span> <span class="k">new</span> <span class="n">point</span> <span class="p">{</span> <span class="n">x</span><span class="o">=</span><span class="mi">10</span> <span class="n">y</span><span class="o">=</span><span class="mi">20</span> <span class="n">z</span><span class="o">=</span><span class="mi">30</span> <span class="p">}</span>
160 <span class="k">see</span> <span class="n">o1</span>
162 <span class="k">class</span> <span class="n">point</span> <span class="n">x</span> <span class="n">y</span> <span class="n">z</span>
166 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">tokens</span> <span class="o">-</span><span class="n">norun</span>
170 <div class="highlight-ring"><div class="highlight"><pre><span class="o">===================================================</span>
171 <span class="n">Tokens</span> <span class="o">-</span> <span class="n">Generated</span> <span class="n">by</span> <span class="n">the</span> <span class="n">Scanner</span>
172 <span class="o">===================================================</span>
174 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">FUNC</span>
175 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">main</span>
176 <span class="n">EndLine</span>
177 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">SEE</span>
178 <span class="n">Literal</span> <span class="p">:</span> <span class="n">Hello</span> <span class="n">World</span>
179 <span class="n">Operator</span> <span class="p">:</span> <span class="o">+</span>
180 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">nl</span>
181 <span class="n">EndLine</span>
182 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">FOR</span>
183 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">x</span>
184 <span class="n">Operator</span> <span class="p">:</span> <span class="o">=</span>
185 <span class="n">Number</span> <span class="p">:</span> <span class="mi">1</span>
186 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">TO</span>
187 <span class="n">Number</span> <span class="p">:</span> <span class="mi">10</span>
188 <span class="n">EndLine</span>
189 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">SEE</span>
190 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">x</span>
191 <span class="n">Operator</span> <span class="p">:</span> <span class="o">+</span>
192 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">nl</span>
193 <span class="n">EndLine</span>
194 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">NEXT</span>
195 <span class="n">EndLine</span>
196 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">test</span>
197 <span class="n">Operator</span> <span class="p">:</span> <span class="p">(</span>
198 <span class="n">Operator</span> <span class="p">:</span> <span class="p">)</span>
199 <span class="n">EndLine</span>
200 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">FUNC</span>
201 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">test</span>
202 <span class="n">EndLine</span>
203 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">SEE</span>
204 <span class="n">Literal</span> <span class="p">:</span> <span class="n">welcome</span>
205 <span class="n">Operator</span> <span class="p">:</span> <span class="o">+</span>
206 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">nl</span>
207 <span class="n">EndLine</span>
208 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">o1</span>
209 <span class="n">Operator</span> <span class="p">:</span> <span class="o">=</span>
210 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">NEW</span>
211 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">point</span>
212 <span class="n">Operator</span> <span class="p">:</span> <span class="p">{</span>
213 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">x</span>
214 <span class="n">Operator</span> <span class="p">:</span> <span class="o">=</span>
215 <span class="n">Number</span> <span class="p">:</span> <span class="mi">10</span>
216 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">y</span>
217 <span class="n">Operator</span> <span class="p">:</span> <span class="o">=</span>
218 <span class="n">Number</span> <span class="p">:</span> <span class="mi">20</span>
219 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">z</span>
220 <span class="n">Operator</span> <span class="p">:</span> <span class="o">=</span>
221 <span class="n">Number</span> <span class="p">:</span> <span class="mi">30</span>
222 <span class="n">Operator</span> <span class="p">:</span> <span class="p">}</span>
223 <span class="n">EndLine</span>
224 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">SEE</span>
225 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">o1</span>
226 <span class="n">EndLine</span>
227 <span class="n">Keyword</span> <span class="p">:</span> <span class="k">CLASS</span>
228 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">point</span>
229 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">x</span>
230 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">y</span>
231 <span class="n">Identifier</span> <span class="p">:</span> <span class="n">z</span>
232 <span class="n">EndLine</span>
234 <span class="o">===================================================</span>
238 <div class="section" id="index-2">
239 <span id="id3"></span><h2>文法規則の表示<a class="headerlink" href="#index-2" title="このヘッドラインへのパーマリンク">¶</a></h2>
241 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">rules</span> <span class="o">-</span><span class="n">norun</span>
245 <div class="highlight-ring"><div class="highlight"><pre><span class="o">===================================================</span>
246 <span class="n">Grammar</span> <span class="n">Rules</span> <span class="n">Used</span> <span class="n">by</span> <span class="n">The</span> <span class="n">Parser</span>
247 <span class="o">===================================================</span>
249 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Program</span> <span class="o">--></span> <span class="p">{</span><span class="n">Statement</span><span class="p">}</span>
251 <span class="n">Line</span> <span class="mi">1</span>
252 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'Func'</span> <span class="n">Identifier</span> <span class="o">[</span><span class="n">ParaList</span><span class="o">]</span>
254 <span class="n">Line</span> <span class="mi">2</span>
255 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Literal</span>
256 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
257 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
258 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
259 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
260 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
261 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
262 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
263 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Arithmetic</span> <span class="o">+</span> <span class="n">Arithmetic</span>
264 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
265 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
266 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
267 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
268 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
269 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
270 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
271 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'See'</span> <span class="n">Expr</span>
273 <span class="n">Line</span> <span class="mi">3</span>
274 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Number</span>
275 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
276 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
277 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
278 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
279 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
280 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
281 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
282 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
283 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
284 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
285 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Number</span>
286 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
287 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
288 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
289 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
290 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
291 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
292 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
293 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
294 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
295 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
296 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'For'</span> <span class="n">Identifier</span> <span class="sc">'='</span> <span class="n">Expr</span> <span class="k">to</span> <span class="n">Expr</span> <span class="o">[</span><span class="sc">'step'</span> <span class="n">Expr</span><span class="o">]</span>
298 <span class="n">Line</span> <span class="mi">4</span>
299 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
300 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
301 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
302 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
303 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
304 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
305 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
306 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
307 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Arithmetic</span> <span class="o">+</span> <span class="n">Arithmetic</span>
308 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
309 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
310 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
311 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
312 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
313 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
314 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
315 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'See'</span> <span class="n">Expr</span>
317 <span class="n">Line</span> <span class="mi">5</span>
318 <span class="n">Rule</span> <span class="p">:</span> <span class="k">Next</span> <span class="o">--></span> <span class="sc">'Next'</span>
320 <span class="n">Line</span> <span class="mi">6</span>
321 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Mixer</span> <span class="o">-></span> <span class="sc">'('</span> <span class="o">[</span><span class="n">Expr</span> <span class="p">{</span> <span class="sc">','</span> <span class="n">Expr</span><span class="p">}</span> <span class="o">]</span> <span class="sc">')'</span>
323 <span class="n">Line</span> <span class="mi">8</span>
324 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
325 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
326 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
327 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
328 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
329 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
330 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
331 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
332 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
333 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
334 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
335 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
336 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'Func'</span> <span class="n">Identifier</span> <span class="o">[</span><span class="n">ParaList</span><span class="o">]</span>
338 <span class="n">Line</span> <span class="mi">9</span>
339 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Literal</span>
340 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
341 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
342 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
343 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
344 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
345 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
346 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
347 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Arithmetic</span> <span class="o">+</span> <span class="n">Arithmetic</span>
348 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
349 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
350 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
351 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
352 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
353 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
354 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
355 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'See'</span> <span class="n">Expr</span>
357 <span class="n">Line</span> <span class="mi">10</span>
358 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="k">New</span> <span class="n">Identifier</span> <span class="p">{</span><span class="sc">'.'</span> <span class="n">Identifier</span> <span class="p">}</span>
359 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Mixer</span> <span class="o">--></span> <span class="sc">'{'</span> <span class="p">{</span><span class="n">Statement</span><span class="p">}</span> <span class="n">BraceEnd</span>
360 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Number</span>
361 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
362 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
363 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
364 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
365 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
366 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
367 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
368 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
369 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
370 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
371 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Assignment</span> <span class="o">-></span> <span class="sc">'='</span> <span class="n">Expr</span>
372 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
373 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
374 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
375 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
376 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
377 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
378 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
379 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
380 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
381 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
382 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
383 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
384 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Number</span>
385 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
386 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
387 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
388 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
389 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
390 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
391 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
392 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
393 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
394 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
395 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Assignment</span> <span class="o">-></span> <span class="sc">'='</span> <span class="n">Expr</span>
396 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
397 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
398 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
399 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
400 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
401 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
402 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
403 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
404 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
405 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
406 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
407 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
408 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Number</span>
409 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
410 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
411 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
412 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
413 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
414 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
415 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
416 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
417 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
418 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
419 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Assignment</span> <span class="o">-></span> <span class="sc">'='</span> <span class="n">Expr</span>
420 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
421 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
422 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
423 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
424 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
425 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
426 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
427 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
428 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
429 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
430 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
431 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
432 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BraceEnd</span> <span class="o">--></span> <span class="sc">'}'</span>
433 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
434 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
435 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
436 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
437 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
438 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
439 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
440 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
441 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
442 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
443 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Assignment</span> <span class="o">-></span> <span class="sc">'='</span> <span class="n">Expr</span>
444 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
445 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
446 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
447 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
448 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
449 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
450 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
451 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
452 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
453 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
454 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
455 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
457 <span class="n">Line</span> <span class="mi">11</span>
458 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
459 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
460 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
461 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
462 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
463 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
464 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
465 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
466 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
467 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
468 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
469 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'See'</span> <span class="n">Expr</span>
471 <span class="n">Line</span> <span class="mi">13</span>
472 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="sc">'Class'</span> <span class="n">Identifier</span>
473 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
474 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
475 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
476 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
477 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
478 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
479 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
480 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
481 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
482 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
483 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
484 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
485 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
486 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
487 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
488 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
489 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
490 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
491 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
492 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
493 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
494 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
495 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
496 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
497 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Factor</span> <span class="o">--></span> <span class="n">Identifier</span> <span class="o">[</span> <span class="p">{</span><span class="n">Mixer</span><span class="p">}</span> <span class="o">|</span> <span class="n">Assignment</span> <span class="o">|</span> <span class="n">PlusPlus</span> <span class="o">|</span> <span class="n">MinusMinus</span><span class="o">]</span>
498 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Range</span> <span class="o">--></span> <span class="n">Factor</span>
499 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Term</span> <span class="o">--></span> <span class="n">Range</span>
500 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Arithmetic</span> <span class="o">--></span> <span class="n">Term</span>
501 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitShift</span> <span class="o">--></span> <span class="n">Arithmetic</span>
502 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitAnd</span> <span class="o">--></span> <span class="n">BitShift</span>
503 <span class="n">Rule</span> <span class="p">:</span> <span class="n">BitOrXOR</span> <span class="o">--></span> <span class="n">BitAnd</span>
504 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Compare</span> <span class="o">--></span> <span class="n">BitOrXOR</span>
505 <span class="n">Rule</span> <span class="p">:</span> <span class="n">EqualOrNot</span> <span class="o">--></span> <span class="n">Compare</span>
506 <span class="n">Rule</span> <span class="p">:</span> <span class="n">LogicNot</span> <span class="o">-></span> <span class="n">EqualOrNot</span>
507 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Expr</span> <span class="o">--></span> <span class="n">LogicNot</span>
508 <span class="n">Rule</span> <span class="p">:</span> <span class="n">Statement</span> <span class="o">--></span> <span class="n">Expr</span>
510 <span class="o">===================================================</span>
514 <div class="section" id="index-3">
515 <span id="id4"></span><h2>中間コードの表示<a class="headerlink" href="#index-3" title="このヘッドラインへのパーマリンク">¶</a></h2>
517 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">ic</span> <span class="o">-</span><span class="n">norun</span>
521 <div class="highlight-ring"><div class="highlight"><pre>===================================================
522 Byte Code - Before Execution by the VM
523 ===================================================
544 18 JumpVarLENum x 10.000000 29
620 94 Class point 006E8BC0
633 ===================================================
637 <div class="section" id="index-4">
638 <span id="id5"></span><h2>最終中間コードの表示<a class="headerlink" href="#index-4" title="このヘッドラインへのパーマリンク">¶</a></h2>
640 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">icfinal</span>
644 <div class="highlight-ring"><div class="highlight"><pre>Hello World
661 ===================================================
662 Byte Code - After Execution by the VM
663 ===================================================
684 18 JumpVarLPLENum x 10.000000 29
760 94 Class point 007D8470
772 106 LoadFunc ismethod
773 107 LoadA ring_gettemp_var 0
781 115 LoadA ring_gettemp_var 0
783 117 LoadA ring_settemp_var 0
790 124 LoadA ring_tempflag_var 0 128
791 125 AssignmentPointer
799 133 PushP 007D37D8 0 137
800 134 AssignmentPointer
807 141 LoadFunc ismethod
808 142 LoadA ring_gettemp_var 0
816 150 LoadA ring_gettemp_var 0
818 152 LoadA ring_settemp_var 0
825 159 LoadA ring_tempflag_var 0 163
826 160 AssignmentPointer
834 168 PushP 007D37D8 0 172
835 169 AssignmentPointer
842 176 LoadFunc ismethod
843 177 LoadA ring_gettemp_var 0
851 185 LoadA ring_gettemp_var 0
853 187 LoadA ring_settemp_var 0
860 194 LoadA ring_tempflag_var 0 198
861 195 AssignmentPointer
869 203 PushP 007D37D8 0 207
870 204 AssignmentPointer
878 ===================================================
882 <div class="section" id="cgi">
883 <span id="index-5"></span><h2>CGI への対応<a class="headerlink" href="#cgi" title="このヘッドラインへのパーマリンク">¶</a></h2>
885 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">cgi</span>
889 <div class="section" id="index-6">
890 <span id="id6"></span><h2>コンパイルの実行<a class="headerlink" href="#index-6" title="このヘッドラインへのパーマリンク">¶</a></h2>
892 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">norun</span>
896 <div class="section" id="index-7">
897 <span id="id7"></span><h2>命令演算コードの表示<a class="headerlink" href="#index-7" title="このヘッドラインへのパーマリンク">¶</a></h2>
899 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">ins</span>
903 <div class="highlight-ring"><div class="highlight"><pre><span class="o">===================================================</span>
905 <span class="n">Operation</span> <span class="p">:</span> <span class="n">ReturnNull</span>
906 <span class="n">PC</span> <span class="p">:</span> <span class="mi">1</span>
907 <span class="n">Line</span> <span class="n">Number</span> <span class="p">:</span> <span class="mi">1</span> <span class="p">,</span> <span class="n">File</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span>
909 <span class="n">SP</span> <span class="p">(</span><span class="n">After</span><span class="p">)</span> <span class="p">:</span> <span class="mi">0</span> <span class="o">-</span> <span class="n">FuncSP</span> <span class="p">:</span> <span class="mi">0</span>
910 <span class="n">LineNumber</span> <span class="mi">1</span>
911 <span class="o">===================================================</span>
912 <span class="p">.....</span>
913 <span class="p">.....</span>
914 <span class="p">.....</span>
917 <div class="admonition tip">
918 <p class="first admonition-title">ちなみに</p>
919 <p class="last">前述の用例は非常に大きいので実行結果を省略してあります!</p>
922 <div class="section" id="index-8">
923 <span id="id8"></span><h2>実行性能の計測<a class="headerlink" href="#index-8" title="このヘッドラインへのパーマリンク">¶</a></h2>
925 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">performance</span>
929 <div class="highlight-ring"><div class="highlight"><pre><span class="o">===================================================</span>
930 <span class="n">Date</span> <span class="p">:</span> <span class="mi">2015</span><span class="o">/</span><span class="mi">09</span><span class="o">/</span><span class="mi">15</span> <span class="n">Time</span> <span class="p">:</span> <span class="mi">15</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mi">17</span>
931 <span class="n">Clock</span> <span class="p">:</span> <span class="mi">0</span>
932 <span class="o">===================================================</span>
933 <span class="n">Hello</span> <span class="n">World</span>
934 <span class="mi">1</span>
935 <span class="mi">2</span>
936 <span class="mi">3</span>
937 <span class="mi">4</span>
938 <span class="mi">5</span>
939 <span class="mi">6</span>
940 <span class="mi">7</span>
941 <span class="mi">8</span>
942 <span class="mi">9</span>
943 <span class="mi">10</span>
944 <span class="n">welcome</span>
945 <span class="n">x</span><span class="p">:</span> <span class="mf">10.000000</span>
946 <span class="n">y</span><span class="p">:</span> <span class="mf">20.000000</span>
947 <span class="n">z</span><span class="p">:</span> <span class="mf">30.000000</span>
949 <span class="o">===================================================</span>
950 <span class="n">Date</span> <span class="p">:</span> <span class="mi">2015</span><span class="o">/</span><span class="mi">09</span><span class="o">/</span><span class="mi">15</span> <span class="n">Time</span> <span class="p">:</span> <span class="mi">15</span><span class="p">:</span><span class="mi">56</span><span class="p">:</span><span class="mi">17</span>
951 <span class="n">Clock</span> <span class="p">:</span> <span class="mi">0</span>
952 <span class="o">===================================================</span>
956 <div class="section" id="index-9">
957 <span id="id9"></span><h2>オブジェクトファイルの生成<a class="headerlink" href="#index-9" title="このヘッドラインへのパーマリンク">¶</a></h2>
958 <p>-go オプションは、ソースコードファイル (*.ring) からオブジェクトファイル (*.ringo) を生成します。</p>
959 <div class="admonition tip">
960 <p class="first admonition-title">ちなみに</p>
961 <p class="last">アプリケーション (商用またはオープンソース) の Ring ソースファイル一式を非公開 (保管) または配布できます。
962 また、アプリケーションの配布または実行用のオブジェクトファイルも生成できます。</p>
965 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">go</span>
968 <p>コンパイル済みのオブジェクトファイルを実行するには、</p>
969 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ringo</span>
973 <div class="section" id="index-10">
974 <span id="id10"></span><h2>組込型オブジェクトファイルの生成<a class="headerlink" href="#index-10" title="このヘッドラインへのパーマリンク">¶</a></h2>
975 <p>-geo オプションはソースコードファイル (*.ring) から組込型オブジェクトファイル (C ソースコード) を生成します。</p>
977 <div class="highlight-ring"><div class="highlight"><pre><span class="n">ring</span> <span class="n">test</span><span class="p">.</span><span class="n">ring</span> <span class="o">-</span><span class="n">geo</span>
980 <p>このコマンドは最低でも 3 ファイルを生成します。</p>
981 <div class="highlight-ring"><div class="highlight"><pre><span class="n">test</span><span class="p">.</span><span class="n">c</span>
982 <span class="n">ringappcode</span><span class="p">.</span><span class="n">c</span>
983 <span class="n">ringappcode</span><span class="p">.</span><span class="n">h</span>
986 <p>プロジェクトの規模により、それ以上のファイルを生成します。</p>
987 <p>生成後のファイルは Ring VM のバイトコードとして実行されます。</p>
995 <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
996 <div class="sphinxsidebarwrapper"><h3>ページの内容</h3>
998 <li><a class="reference internal" href="#">コマンドラインオプション</a><ul>
999 <li><a class="reference internal" href="#index-1">トークンの表示</a></li>
1000 <li><a class="reference internal" href="#index-2">文法規則の表示</a></li>
1001 <li><a class="reference internal" href="#index-3">中間コードの表示</a></li>
1002 <li><a class="reference internal" href="#index-4">最終中間コードの表示</a></li>
1003 <li><a class="reference internal" href="#cgi">CGI への対応</a></li>
1004 <li><a class="reference internal" href="#index-6">コンパイルの実行</a></li>
1005 <li><a class="reference internal" href="#index-7">命令演算コードの表示</a></li>
1006 <li><a class="reference internal" href="#index-8">実行性能の計測</a></li>
1007 <li><a class="reference internal" href="#index-9">オブジェクトファイルの生成</a></li>
1008 <li><a class="reference internal" href="#index-10">組込型オブジェクトファイルの生成</a></li>
1015 <p class="topless"><a href="typehints.html"
1016 title="前の章へ">型ヒントライブラリについて</a></p>
1018 <p class="topless"><a href="performancetips.html"
1019 title="次の章へ">性能改善に関する情報</a></p>
1020 <div role="note" aria-label="source link">
1022 <ul class="this-page-menu">
1023 <li><a href="_sources/compiler.txt"
1024 rel="nofollow">ソースコードを表示</a></li>
1028 <form action="search.html" method="get">
1029 <input type="text" name="q" placeholder="Search" />
1030 <input type="hidden" name="check_keywords" value="yes" />
1031 <input type="hidden" name="area" value="default" />
1036 <div class="clearer"></div>
1038 <footer class="footer">
1039 <p class="pull-right">
1040 <a href="_sources/compiler.txt"
1041 rel="nofollow">Page Source</a>
1042 <a href="#">Back to Top</a></p>
1044 © Copyright 2016-2020, Ring Team.<br/>
1045 Created using <a href="http://www.sphinx-doc.org/en/stable/">Sphinx</a> 1.3.6. / astropy-sphinx-theme 1.1 (isVowel)