diff options
Diffstat (limited to 'html/shell/parse.mu.html')
-rw-r--r-- | html/shell/parse.mu.html | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/html/shell/parse.mu.html b/html/shell/parse.mu.html index ab87d350..aae5d09a 100644 --- a/html/shell/parse.mu.html +++ b/html/shell/parse.mu.html @@ -62,7 +62,7 @@ if ('onhashchange' in window) { <span id="L4" class="LineNr"> 4 </span> compare empty?, <span class="Constant">0</span>/false <span id="L5" class="LineNr"> 5 </span> <span class="Delimiter">{</span> <span id="L6" class="LineNr"> 6 </span> <span class="PreProc">break-if-=</span> -<span id="L7" class="LineNr"> 7 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"nothing to parse"</span> +<span id="L7" class="LineNr"> 7 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"nothing to parse"</span> <span id="L8" class="LineNr"> 8 </span> <span class="PreProc">return</span> <span id="L9" class="LineNr"> 9 </span> <span class="Delimiter">}</span> <span id="L10" class="LineNr"> 10 </span> <span class="PreProc">var</span> close-paren?/<span class="Constant">eax</span>: boolean <span class="Special"><-</span> copy <span class="Constant">0</span>/false @@ -71,14 +71,14 @@ if ('onhashchange' in window) { <span id="L13" class="LineNr"> 13 </span> <span class="Delimiter">{</span> <span id="L14" class="LineNr"> 14 </span> compare close-paren?, <span class="Constant">0</span>/false <span id="L15" class="LineNr"> 15 </span> <span class="PreProc">break-if-=</span> -<span id="L16" class="LineNr"> 16 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"')' is not a valid expression"</span> +<span id="L16" class="LineNr"> 16 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"')' is not a valid expression"</span> <span id="L17" class="LineNr"> 17 </span> <span class="PreProc">return</span> <span id="L18" class="LineNr"> 18 </span> <span class="Delimiter">}</span> <span id="L19" class="LineNr"> 19 </span> <span class="Delimiter">{</span> <span id="L20" class="LineNr"> 20 </span> <span class="PreProc">var</span> empty?/<span class="Constant">eax</span>: boolean <span class="Special"><-</span> <a href='../309stream.subx.html#L6'>stream-empty?</a> tokens <span id="L21" class="LineNr"> 21 </span> compare empty?, <span class="Constant">0</span>/false <span id="L22" class="LineNr"> 22 </span> <span class="PreProc">break-if-!=</span> -<span id="L23" class="LineNr"> 23 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"unexpected tokens at end; only type in a single expression at a time"</span> +<span id="L23" class="LineNr"> 23 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"unexpected tokens at end; only type in a single expression at a time"</span> <span id="L24" class="LineNr"> 24 </span> <span class="Delimiter">}</span> <span id="L25" class="LineNr"> 25 </span><span class="Delimiter">}</span> <span id="L26" class="LineNr"> 26 </span> @@ -86,15 +86,15 @@ if ('onhashchange' in window) { <span id="L28" class="LineNr"> 28 </span><span class="muComment"># unmatched close-paren encountered?</span> <span id="L29" class="LineNr"> 29 </span><span class="muComment"># dot encountered? (only used internally by recursive calls)</span> <span id="L30" class="LineNr"> 30 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='parse.mu.html#L30'>parse-sexpression</a></span> tokens: (addr stream <a href='cell.mu.html#L1'>cell</a>), _out: (addr handle <a href='cell.mu.html#L1'>cell</a>), trace: (addr trace)<span class="PreProc"> -> </span>_/<span class="Constant">eax</span>: boolean, _/<span class="Constant">ecx</span>: boolean <span class="Delimiter">{</span> -<span id="L31" class="LineNr"> 31 </span> <a href='trace.mu.html#L113'>trace-text</a> trace, <span class="Constant">"read"</span>, <span class="Constant">"parse"</span> -<span id="L32" class="LineNr"> 32 </span> <a href='trace.mu.html#L140'>trace-lower</a> trace +<span id="L31" class="LineNr"> 31 </span> <a href='trace.mu.html#L120'>trace-text</a> trace, <span class="Constant">"read"</span>, <span class="Constant">"parse"</span> +<span id="L32" class="LineNr"> 32 </span> <a href='trace.mu.html#L147'>trace-lower</a> trace <span id="L33" class="LineNr"> 33 </span> <span class="PreProc">var</span> curr-token-storage: <a href='cell.mu.html#L1'>cell</a> <span id="L34" class="LineNr"> 34 </span> <span class="PreProc">var</span> curr-token/<span class="Constant">ecx</span>: (addr <a href='cell.mu.html#L1'>cell</a>) <span class="Special"><-</span> address curr-token-storage <span id="L35" class="LineNr"> 35 </span> <span class="PreProc">var</span> empty?/<span class="Constant">eax</span>: boolean <span class="Special"><-</span> <a href='../309stream.subx.html#L6'>stream-empty?</a> tokens <span id="L36" class="LineNr"> 36 </span> compare empty?, <span class="Constant">0</span>/false <span id="L37" class="LineNr"> 37 </span> <span class="Delimiter">{</span> <span id="L38" class="LineNr"> 38 </span> <span class="PreProc">break-if-=</span> -<span id="L39" class="LineNr"> 39 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"end of stream; never found a balancing ')'"</span> +<span id="L39" class="LineNr"> 39 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"end of stream; never found a balancing ')'"</span> <span id="L40" class="LineNr"> 40 </span> <span class="PreProc">return</span> <span class="Constant">1</span>/true, <span class="Constant">0</span>/false <span id="L41" class="LineNr"> 41 </span> <span class="Delimiter">}</span> <span id="L42" class="LineNr"> 42 </span> <a href='../309stream.subx.html#L107'>read-from-stream</a> tokens, curr-token @@ -120,7 +120,7 @@ if ('onhashchange' in window) { <span id="L62" class="LineNr"> 62 </span> compare dot?, <span class="Constant">0</span>/false <span id="L63" class="LineNr"> 63 </span> <span class="Delimiter">{</span> <span id="L64" class="LineNr"> 64 </span> <span class="PreProc">break-if-=</span> -<span id="L65" class="LineNr"> 65 </span> <a href='trace.mu.html#L148'>trace-higher</a> trace +<span id="L65" class="LineNr"> 65 </span> <a href='trace.mu.html#L155'>trace-higher</a> trace <span id="L66" class="LineNr"> 66 </span> <span class="PreProc">return</span> <span class="Constant">0</span>/false, <span class="Constant">1</span>/true <span id="L67" class="LineNr"> 67 </span> <span class="Delimiter">}</span> <span id="L68" class="LineNr"> 68 </span> <span class="muComment"># not bracket -> parse atom</span> @@ -147,7 +147,7 @@ if ('onhashchange' in window) { <span id="L89" class="LineNr"> 89 </span> <span class="Delimiter">{</span> <span id="L90" class="LineNr"> 90 </span> compare dot?, <span class="Constant">0</span>/false <span id="L91" class="LineNr"> 91 </span> <span class="PreProc">break-if-=</span> -<span id="L92" class="LineNr"> 92 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"'.' cannot be at the start of a list"</span> +<span id="L92" class="LineNr"> 92 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"'.' cannot be at the start of a list"</span> <span id="L93" class="LineNr"> 93 </span> <span class="PreProc">return</span> <span class="Constant">1</span>/true, dot? <span id="L94" class="LineNr"> 94 </span> <span class="Delimiter">}</span> <span id="L95" class="LineNr"> 95 </span> compare close-paren?, <span class="Constant">0</span>/false @@ -186,7 +186,7 @@ if ('onhashchange' in window) { <span id="L128" class="LineNr">128 </span> compare close-paren?, <span class="Constant">0</span>/false <span id="L129" class="LineNr">129 </span> <span class="Delimiter">{</span> <span id="L130" class="LineNr">130 </span> <span class="PreProc">break-if-=</span> -<span id="L131" class="LineNr">131 </span> <a href='trace.mu.html#L148'>trace-higher</a> trace +<span id="L131" class="LineNr">131 </span> <a href='trace.mu.html#L155'>trace-higher</a> trace <span id="L132" class="LineNr">132 </span> <span class="PreProc">return</span> <span class="Constant">1</span>/true, <span class="Constant">0</span>/false <span id="L133" class="LineNr">133 </span> <span class="Delimiter">}</span> <span id="L134" class="LineNr">134 </span> <span class="muComment"># otherwise abort</span> @@ -199,12 +199,12 @@ if ('onhashchange' in window) { <span id="L141" class="LineNr">141 </span> <a href='../113write-stream.subx.html#L8'>write-stream</a> stream, curr-token-data <span id="L142" class="LineNr">142 </span> trace trace, <span class="Constant">"error"</span>, stream <span id="L143" class="LineNr">143 </span> <span class="Delimiter">}</span> -<span id="L144" class="LineNr">144 </span> <a href='trace.mu.html#L148'>trace-higher</a> trace +<span id="L144" class="LineNr">144 </span> <a href='trace.mu.html#L155'>trace-higher</a> trace <span id="L145" class="LineNr">145 </span> <span class="PreProc">return</span> <span class="Constant">0</span>/false, <span class="Constant">0</span>/false <span id="L146" class="LineNr">146 </span><span class="Delimiter">}</span> <span id="L147" class="LineNr">147 </span> <span id="L148" class="LineNr">148 </span><span class="PreProc">fn</span> <span class="muFunction"><a href='parse.mu.html#L148'>parse-atom</a></span> _curr-token: (addr <a href='cell.mu.html#L1'>cell</a>), _out: (addr handle <a href='cell.mu.html#L1'>cell</a>), trace: (addr trace) <span class="Delimiter">{</span> -<span id="L149" class="LineNr">149 </span> <a href='trace.mu.html#L113'>trace-text</a> trace, <span class="Constant">"read"</span>, <span class="Constant">"parse atom"</span> +<span id="L149" class="LineNr">149 </span> <a href='trace.mu.html#L120'>trace-text</a> trace, <span class="Constant">"read"</span>, <span class="Constant">"parse atom"</span> <span id="L150" class="LineNr">150 </span> <span class="PreProc">var</span> curr-token/<span class="Constant">ecx</span>: (addr <a href='cell.mu.html#L1'>cell</a>) <span class="Special"><-</span> copy _curr-token <span id="L151" class="LineNr">151 </span> <span class="PreProc">var</span> curr-token-data-ah/<span class="Constant">eax</span>: (addr handle stream byte) <span class="Special"><-</span> get curr-token, text-data <span id="L152" class="LineNr">152 </span> <span class="PreProc">var</span> _curr-token-data/<span class="Constant">eax</span>: (addr stream byte) <span class="Special"><-</span> <a href='../120allocate.subx.html#L226'>lookup</a> *curr-token-data-ah @@ -228,7 +228,7 @@ if ('onhashchange' in window) { <span id="L170" class="LineNr">170 </span> <span class="PreProc">var</span> stream-storage: (stream byte <span class="Constant">0x40</span>) <span id="L171" class="LineNr">171 </span> <span class="PreProc">var</span> stream/<span class="Constant">ecx</span>: (addr stream byte) <span class="Special"><-</span> address stream-storage <span id="L172" class="LineNr">172 </span> <a href='../108write.subx.html#L11'>write</a> stream, <span class="Constant">"=> number "</span> -<span id="L173" class="LineNr">173 </span> <a href='print.mu.html#L134'>print-number</a> out-addr, stream, <span class="Constant">0</span>/no-trace +<span id="L173" class="LineNr">173 </span> <a href='print.mu.html#L141'>print-number</a> out-addr, stream, <span class="Constant">0</span>/no-trace <span id="L174" class="LineNr">174 </span> trace trace, <span class="Constant">"read"</span>, stream <span id="L175" class="LineNr">175 </span> <span class="Delimiter">}</span> <span id="L176" class="LineNr">176 </span> <span class="PreProc">return</span> @@ -245,7 +245,7 @@ if ('onhashchange' in window) { <span id="L187" class="LineNr">187 </span> <span class="PreProc">var</span> stream-storage: (stream byte <span class="Constant">0x40</span>) <span id="L188" class="LineNr">188 </span> <span class="PreProc">var</span> stream/<span class="Constant">ecx</span>: (addr stream byte) <span class="Special"><-</span> address stream-storage <span id="L189" class="LineNr">189 </span> <a href='../108write.subx.html#L11'>write</a> stream, <span class="Constant">"=> symbol "</span> -<span id="L190" class="LineNr">190 </span> <a href='print.mu.html#L94'>print-symbol</a> out-addr, stream, <span class="Constant">0</span>/no-trace +<span id="L190" class="LineNr">190 </span> <a href='print.mu.html#L101'>print-symbol</a> out-addr, stream, <span class="Constant">0</span>/no-trace <span id="L191" class="LineNr">191 </span> trace trace, <span class="Constant">"read"</span>, stream <span id="L192" class="LineNr">192 </span> <span class="Delimiter">}</span> <span id="L193" class="LineNr">193 </span><span class="Delimiter">}</span> @@ -258,13 +258,13 @@ if ('onhashchange' in window) { <span id="L200" class="LineNr">200 </span> compare close-paren?, <span class="Constant">0</span>/false <span id="L201" class="LineNr">201 </span> <span class="Delimiter">{</span> <span id="L202" class="LineNr">202 </span> <span class="PreProc">break-if-=</span> -<span id="L203" class="LineNr">203 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"'. )' makes no sense"</span> +<span id="L203" class="LineNr">203 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"'. )' makes no sense"</span> <span id="L204" class="LineNr">204 </span> <span class="PreProc">return</span> <span id="L205" class="LineNr">205 </span> <span class="Delimiter">}</span> <span id="L206" class="LineNr">206 </span> compare dot?, <span class="Constant">0</span>/false <span id="L207" class="LineNr">207 </span> <span class="Delimiter">{</span> <span id="L208" class="LineNr">208 </span> <span class="PreProc">break-if-=</span> -<span id="L209" class="LineNr">209 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"'. .' makes no sense"</span> +<span id="L209" class="LineNr">209 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"'. .' makes no sense"</span> <span id="L210" class="LineNr">210 </span> <span class="PreProc">return</span> <span id="L211" class="LineNr">211 </span> <span class="Delimiter">}</span> <span id="L212" class="LineNr">212 </span> <span class="muComment">#</span> @@ -274,13 +274,13 @@ if ('onhashchange' in window) { <span id="L216" class="LineNr">216 </span> compare close-paren?, <span class="Constant">0</span>/false <span id="L217" class="LineNr">217 </span> <span class="Delimiter">{</span> <span id="L218" class="LineNr">218 </span> <span class="PreProc">break-if-!=</span> -<span id="L219" class="LineNr">219 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"cannot have multiple expressions between '.' and ')'"</span> +<span id="L219" class="LineNr">219 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"cannot have multiple expressions between '.' and ')'"</span> <span id="L220" class="LineNr">220 </span> <span class="PreProc">return</span> <span id="L221" class="LineNr">221 </span> <span class="Delimiter">}</span> <span id="L222" class="LineNr">222 </span> compare dot?, <span class="Constant">0</span>/false <span id="L223" class="LineNr">223 </span> <span class="Delimiter">{</span> <span id="L224" class="LineNr">224 </span> <span class="PreProc">break-if-=</span> -<span id="L225" class="LineNr">225 </span> <span class="Special"><a href='trace.mu.html#L122'>error</a></span> trace, <span class="Constant">"cannot have two dots in a single list"</span> +<span id="L225" class="LineNr">225 </span> <span class="Special"><a href='trace.mu.html#L129'>error</a></span> trace, <span class="Constant">"cannot have two dots in a single list"</span> <span id="L226" class="LineNr">226 </span> <span class="PreProc">return</span> <span id="L227" class="LineNr">227 </span> <span class="Delimiter">}</span> <span id="L228" class="LineNr">228 </span><span class="Delimiter">}</span> |