diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2017-11-01 03:41:16 -0700 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2017-11-01 03:41:16 -0700 |
commit | 850822ffbfd441d05161452be28b54f882b1b378 (patch) | |
tree | 7f2cb2ac13e4f64e48fee3f060d83c95b349d5e3 /html/010vm.cc.html | |
parent | a6fe8e274683c14efc6585b1b566afe9abfea7d1 (diff) | |
download | mu-850822ffbfd441d05161452be28b54f882b1b378.tar.gz |
4102
Diffstat (limited to 'html/010vm.cc.html')
-rw-r--r-- | html/010vm.cc.html | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/html/010vm.cc.html b/html/010vm.cc.html index acef2133..0f2aa4a5 100644 --- a/html/010vm.cc.html +++ b/html/010vm.cc.html @@ -198,8 +198,8 @@ if ('onhashchange' in window) { <span id="L134" class="LineNr">134 </span> <a href='010vm.cc.html#L123'>type_ordinal</a> number = <a href='001help.cc.html#L221'>put</a><span class="Delimiter">(</span>Type_ordinal<span class="Delimiter">,</span> <span class="Constant">"number"</span><span class="Delimiter">,</span> Next_type_ordinal++<span class="Delimiter">);</span> <span id="L135" class="LineNr">135 </span> <a href='001help.cc.html#L228'>get_or_insert</a><span class="Delimiter">(</span>Type<span class="Delimiter">,</span> number<span class="Delimiter">).</span>name = <span class="Constant">"number"</span><span class="Delimiter">;</span> <span id="L136" class="LineNr">136 </span> <a href='001help.cc.html#L221'>put</a><span class="Delimiter">(</span>Type_ordinal<span class="Delimiter">,</span> <span class="Constant">"location"</span><span class="Delimiter">,</span> number<span class="Delimiter">);</span> <span class="Comment">// synonym of number to indicate we only care about its size</span> -<span id="L137" class="LineNr">137 </span> <a href='010vm.cc.html#L123'>type_ordinal</a> address = <a href='001help.cc.html#L221'>put</a><span class="Delimiter">(</span>Type_ordinal<span class="Delimiter">,</span> <span class="Constant">"address"</span><span class="Delimiter">,</span> Next_type_ordinal++<span class="Delimiter">);</span> -<span id="L138" class="LineNr">138 </span> <a href='001help.cc.html#L228'>get_or_insert</a><span class="Delimiter">(</span>Type<span class="Delimiter">,</span> address<span class="Delimiter">).</span>name = <span class="Constant">"address"</span><span class="Delimiter">;</span> +<span id="L137" class="LineNr">137 </span> <a href='010vm.cc.html#L123'>type_ordinal</a> <a href='043space.cc.html#L83'>address</a> = <a href='001help.cc.html#L221'>put</a><span class="Delimiter">(</span>Type_ordinal<span class="Delimiter">,</span> <span class="Constant">"address"</span><span class="Delimiter">,</span> Next_type_ordinal++<span class="Delimiter">);</span> +<span id="L138" class="LineNr">138 </span> <a href='001help.cc.html#L228'>get_or_insert</a><span class="Delimiter">(</span>Type<span class="Delimiter">,</span> <a href='043space.cc.html#L83'>address</a><span class="Delimiter">).</span>name = <span class="Constant">"address"</span><span class="Delimiter">;</span> <span id="L139" class="LineNr">139 </span> <a href='010vm.cc.html#L123'>type_ordinal</a> boolean = <a href='001help.cc.html#L221'>put</a><span class="Delimiter">(</span>Type_ordinal<span class="Delimiter">,</span> <span class="Constant">"boolean"</span><span class="Delimiter">,</span> Next_type_ordinal++<span class="Delimiter">);</span> <span id="L140" class="LineNr">140 </span> <a href='001help.cc.html#L228'>get_or_insert</a><span class="Delimiter">(</span>Type<span class="Delimiter">,</span> boolean<span class="Delimiter">).</span>name = <span class="Constant">"boolean"</span><span class="Delimiter">;</span> <span id="L141" class="LineNr">141 </span> <a href='010vm.cc.html#L123'>type_ordinal</a> character = <a href='001help.cc.html#L221'>put</a><span class="Delimiter">(</span>Type_ordinal<span class="Delimiter">,</span> <span class="Constant">"character"</span><span class="Delimiter">,</span> Next_type_ordinal++<span class="Delimiter">);</span> @@ -498,32 +498,32 @@ if ('onhashchange' in window) { <span id="L434" class="LineNr">434 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*b<span class="Delimiter">.</span>type < *a<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L435" class="LineNr">435 </span><span class="Delimiter">}</span> <span id="L436" class="LineNr">436 </span><span class="Normal">void</span> test_compare_atom_with_non_atom<span class="Delimiter">()</span> <span class="Delimiter">{</span> -<span id="L437" class="LineNr">437 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:address:number"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:boolean"</span><span class="Delimiter">);</span> +<span id="L437" class="LineNr">437 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:<a href='043space.cc.html#L83'>address</a>:number"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:boolean"</span><span class="Delimiter">);</span> <span id="L438" class="LineNr">438 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*a<span class="Delimiter">.</span>type < *b<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L439" class="LineNr">439 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>*b<span class="Delimiter">.</span>type < *a<span class="Delimiter">.</span>type<span class="Delimiter">);</span> <span id="L440" class="LineNr">440 </span><span class="Delimiter">}</span> <span id="L441" class="LineNr">441 </span><span class="Normal">void</span> test_compare_lists_with_identical_structure<span class="Delimiter">()</span> <span class="Delimiter">{</span> -<span id="L442" class="LineNr">442 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:address:address"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:address:boolean"</span><span class="Delimiter">);</span> +<span id="L442" class="LineNr">442 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:<a href='043space.cc.html#L83'>address</a>:address"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:<a href='043space.cc.html#L83'>address</a>:boolean"</span><span class="Delimiter">);</span> <span id="L443" class="LineNr">443 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>*a<span class="Delimiter">.</span>type < *b<span class="Delimiter">.</span>type<span class="Delimiter">);</span> <span id="L444" class="LineNr">444 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*b<span class="Delimiter">.</span>type < *a<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L445" class="LineNr">445 </span><span class="Delimiter">}</span> <span id="L446" class="LineNr">446 </span><span class="Normal">void</span> test_compare_identical_lists<span class="Delimiter">()</span> <span class="Delimiter">{</span> -<span id="L447" class="LineNr">447 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:address:boolean"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:address:boolean"</span><span class="Delimiter">);</span> +<span id="L447" class="LineNr">447 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:<a href='043space.cc.html#L83'>address</a>:boolean"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:<a href='043space.cc.html#L83'>address</a>:boolean"</span><span class="Delimiter">);</span> <span id="L448" class="LineNr">448 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*a<span class="Delimiter">.</span>type < *b<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L449" class="LineNr">449 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*b<span class="Delimiter">.</span>type < *a<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L450" class="LineNr">450 </span><span class="Delimiter">}</span> <span id="L451" class="LineNr">451 </span><span class="Normal">void</span> test_compare_list_with_extra_element<span class="Delimiter">()</span> <span class="Delimiter">{</span> -<span id="L452" class="LineNr">452 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:address:address"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:address:address:number"</span><span class="Delimiter">);</span> +<span id="L452" class="LineNr">452 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:<a href='043space.cc.html#L83'>address</a>:address"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:<a href='043space.cc.html#L83'>address</a>:<a href='043space.cc.html#L83'>address</a>:number"</span><span class="Delimiter">);</span> <span id="L453" class="LineNr">453 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>*a<span class="Delimiter">.</span>type < *b<span class="Delimiter">.</span>type<span class="Delimiter">);</span> <span id="L454" class="LineNr">454 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*b<span class="Delimiter">.</span>type < *a<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L455" class="LineNr">455 </span><span class="Delimiter">}</span> <span id="L456" class="LineNr">456 </span><span class="Normal">void</span> test_compare_list_with_smaller_left_but_larger_right<span class="Delimiter">()</span> <span class="Delimiter">{</span> -<span id="L457" class="LineNr">457 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:address:number"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:character:array"</span><span class="Delimiter">);</span> +<span id="L457" class="LineNr">457 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:<a href='043space.cc.html#L83'>address</a>:number"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:character:array"</span><span class="Delimiter">);</span> <span id="L458" class="LineNr">458 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>*a<span class="Delimiter">.</span>type < *b<span class="Delimiter">.</span>type<span class="Delimiter">);</span> <span id="L459" class="LineNr">459 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*b<span class="Delimiter">.</span>type < *a<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L460" class="LineNr">460 </span><span class="Delimiter">}</span> <span id="L461" class="LineNr">461 </span><span class="Normal">void</span> test_compare_list_with_smaller_left_but_larger_right_identical_types<span class="Delimiter">()</span> <span class="Delimiter">{</span> -<span id="L462" class="LineNr">462 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:address:boolean"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:boolean:address"</span><span class="Delimiter">);</span> +<span id="L462" class="LineNr">462 </span> reagent a<span class="Delimiter">(</span><span class="Constant">"a:<a href='043space.cc.html#L83'>address</a>:boolean"</span><span class="Delimiter">),</span> b<span class="Delimiter">(</span><span class="Constant">"b:boolean:address"</span><span class="Delimiter">);</span> <span id="L463" class="LineNr">463 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>*a<span class="Delimiter">.</span>type < *b<span class="Delimiter">.</span>type<span class="Delimiter">);</span> <span id="L464" class="LineNr">464 </span> <a href='002test.cc.html#L24'>CHECK</a><span class="Delimiter">(</span>!<span class="Delimiter">(</span>*b<span class="Delimiter">.</span>type < *a<span class="Delimiter">.</span>type<span class="Delimiter">));</span> <span id="L465" class="LineNr">465 </span><span class="Delimiter">}</span> @@ -658,11 +658,11 @@ if ('onhashchange' in window) { <span id="L594" class="LineNr">594 </span><span class="Comment">//: Use inspect() only for emitting a canonical format that can be parsed back</span> <span id="L595" class="LineNr">595 </span><span class="Comment">//: into the value.</span> <span id="L596" class="LineNr">596 </span> -<span id="L597" class="LineNr">597 </span>string <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> recipe& r<span class="Delimiter">)</span> <span class="Delimiter">{</span> +<span id="L597" class="LineNr">597 </span>string <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> recipe& r<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L598" class="LineNr">598 </span> ostringstream out<span class="Delimiter">;</span> <span id="L599" class="LineNr">599 </span> out << <span class="Constant">"recipe "</span> << r<span class="Delimiter">.</span>name << <span class="Constant">" [</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">;</span> <span id="L600" class="LineNr">600 </span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> i = <span class="Constant">0</span><span class="Delimiter">;</span> i < <a href='001help.cc.html#L141'>SIZE</a><span class="Delimiter">(</span>r<span class="Delimiter">.</span>steps<span class="Delimiter">);</span> ++i<span class="Delimiter">)</span> -<span id="L601" class="LineNr">601 </span> <span class="Conceal">¦</span> out << <span class="Constant">" "</span> << <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>r<span class="Delimiter">.</span>steps<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">))</span> << <span class="cSpecial">'\n'</span><span class="Delimiter">;</span> +<span id="L601" class="LineNr">601 </span> <span class="Conceal">¦</span> out << <span class="Constant">" "</span> << <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span>r<span class="Delimiter">.</span>steps<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">))</span> << <span class="cSpecial">'\n'</span><span class="Delimiter">;</span> <span id="L602" class="LineNr">602 </span> out << <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">;</span> <span id="L603" class="LineNr">603 </span> <span class="Identifier">return</span> out<span class="Delimiter">.</span>str<span class="Delimiter">();</span> <span id="L604" class="LineNr">604 </span><span class="Delimiter">}</span> @@ -682,7 +682,7 @@ if ('onhashchange' in window) { <span id="L618" class="LineNr">618 </span> <span class="Comment">// Begin debug_string(recipe x)</span> <span id="L619" class="LineNr">619 </span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> index = <span class="Constant">0</span><span class="Delimiter">;</span> index < <a href='001help.cc.html#L141'>SIZE</a><span class="Delimiter">(</span>x<span class="Delimiter">.</span>steps<span class="Delimiter">);</span> ++index<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L620" class="LineNr">620 </span> <span class="Conceal">¦</span> <span class="Normal">const</span> instruction& inst = x<span class="Delimiter">.</span>steps<span class="Delimiter">.</span>at<span class="Delimiter">(</span>index<span class="Delimiter">);</span> -<span id="L621" class="LineNr">621 </span> <span class="Conceal">¦</span> out << <span class="Constant">"inst: "</span> << <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>inst<span class="Delimiter">)</span> << <span class="cSpecial">'\n'</span><span class="Delimiter">;</span> +<span id="L621" class="LineNr">621 </span> <span class="Conceal">¦</span> out << <span class="Constant">"inst: "</span> << <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span>inst<span class="Delimiter">)</span> << <span class="cSpecial">'\n'</span><span class="Delimiter">;</span> <span id="L622" class="LineNr">622 </span> <span class="Conceal">¦</span> out << <span class="Constant">" ingredients</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">;</span> <span id="L623" class="LineNr">623 </span> <span class="Conceal">¦</span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> i = <span class="Constant">0</span><span class="Delimiter">;</span> i < <a href='001help.cc.html#L141'>SIZE</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span>ingredients<span class="Delimiter">);</span> ++i<span class="Delimiter">)</span> <span id="L624" class="LineNr">624 </span> <span class="Conceal">¦</span> <span class="Conceal">¦</span> out << <span class="Constant">" "</span> << debug_string<span class="Delimiter">(</span>inst<span class="Delimiter">.</span>ingredients<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">))</span> << <span class="cSpecial">'\n'</span><span class="Delimiter">;</span> @@ -711,30 +711,30 @@ if ('onhashchange' in window) { <span id="L647" class="LineNr">647 </span> <span class="Identifier">return</span> out<span class="Delimiter">.</span>str<span class="Delimiter">();</span> <span id="L648" class="LineNr">648 </span><span class="Delimiter">}</span> <span id="L649" class="LineNr">649 </span> -<span id="L650" class="LineNr">650 </span>string <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> instruction& inst<span class="Delimiter">)</span> <span class="Delimiter">{</span> +<span id="L650" class="LineNr">650 </span>string <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> instruction& inst<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L651" class="LineNr">651 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>inst<span class="Delimiter">.</span>is_label<span class="Delimiter">)</span> <span class="Identifier">return</span> inst<span class="Delimiter">.</span>label<span class="Delimiter">;</span> <span id="L652" class="LineNr">652 </span> ostringstream out<span class="Delimiter">;</span> <span id="L653" class="LineNr">653 </span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> i = <span class="Constant">0</span><span class="Delimiter">;</span> i < <a href='001help.cc.html#L141'>SIZE</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span>products<span class="Delimiter">);</span> ++i<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L654" class="LineNr">654 </span> <span class="Conceal">¦</span> <span class="Normal">if</span> <span class="Delimiter">(</span>i > <span class="Constant">0</span><span class="Delimiter">)</span> out << <span class="Constant">", "</span><span class="Delimiter">;</span> -<span id="L655" class="LineNr">655 </span> <span class="Conceal">¦</span> out << <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span>products<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">));</span> +<span id="L655" class="LineNr">655 </span> <span class="Conceal">¦</span> out << <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span>products<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">));</span> <span id="L656" class="LineNr">656 </span> <span class="Delimiter">}</span> <span id="L657" class="LineNr">657 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!inst<span class="Delimiter">.</span>products<span class="Delimiter">.</span>empty<span class="Delimiter">())</span> out << <span class="Constant">" <- "</span><span class="Delimiter">;</span> <span id="L658" class="LineNr">658 </span> out << inst<span class="Delimiter">.</span>name << <span class="Constant">' '</span><span class="Delimiter">;</span> <span id="L659" class="LineNr">659 </span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> i = <span class="Constant">0</span><span class="Delimiter">;</span> i < <a href='001help.cc.html#L141'>SIZE</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span>ingredients<span class="Delimiter">);</span> ++i<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L660" class="LineNr">660 </span> <span class="Conceal">¦</span> <span class="Normal">if</span> <span class="Delimiter">(</span>i > <span class="Constant">0</span><span class="Delimiter">)</span> out << <span class="Constant">", "</span><span class="Delimiter">;</span> -<span id="L661" class="LineNr">661 </span> <span class="Conceal">¦</span> out << <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span>ingredients<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">));</span> +<span id="L661" class="LineNr">661 </span> <span class="Conceal">¦</span> out << <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span>inst<span class="Delimiter">.</span>ingredients<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">));</span> <span id="L662" class="LineNr">662 </span> <span class="Delimiter">}</span> <span id="L663" class="LineNr">663 </span> <span class="Identifier">return</span> out<span class="Delimiter">.</span>str<span class="Delimiter">();</span> <span id="L664" class="LineNr">664 </span><span class="Delimiter">}</span> <span id="L665" class="LineNr">665 </span> -<span id="L666" class="LineNr">666 </span>string <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> reagent& r<span class="Delimiter">)</span> <span class="Delimiter">{</span> +<span id="L666" class="LineNr">666 </span>string <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> reagent& r<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L667" class="LineNr">667 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>is_dummy<span class="Delimiter">(</span>r<span class="Delimiter">))</span> <span class="Identifier">return</span> <span class="Constant">"_"</span><span class="Delimiter">;</span> <span id="L668" class="LineNr">668 </span> ostringstream out<span class="Delimiter">;</span> <span id="L669" class="LineNr">669 </span> out << <span class="Constant">"{"</span><span class="Delimiter">;</span> <span id="L670" class="LineNr">670 </span> out << r<span class="Delimiter">.</span>name << <span class="Constant">": "</span> << names_to_string<span class="Delimiter">(</span>r<span class="Delimiter">.</span>type<span class="Delimiter">);</span> <span id="L671" class="LineNr">671 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!r<span class="Delimiter">.</span>properties<span class="Delimiter">.</span>empty<span class="Delimiter">())</span> <span class="Delimiter">{</span> <span id="L672" class="LineNr">672 </span> <span class="Conceal">¦</span> <span class="Normal">for</span> <span class="Delimiter">(</span><span class="Normal">int</span> i = <span class="Constant">0</span><span class="Delimiter">;</span> i < <a href='001help.cc.html#L141'>SIZE</a><span class="Delimiter">(</span>r<span class="Delimiter">.</span>properties<span class="Delimiter">);</span> ++i<span class="Delimiter">)</span> -<span id="L673" class="LineNr">673 </span> <span class="Conceal">¦</span> <span class="Conceal">¦</span> out << <span class="Constant">", </span><span class="cSpecial">\"</span><span class="Constant">"</span> << r<span class="Delimiter">.</span>properties<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">).</span>first << <span class="Constant">"</span><span class="cSpecial">\"</span><span class="Constant">: "</span> << <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>r<span class="Delimiter">.</span>properties<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">).</span>second<span class="Delimiter">);</span> +<span id="L673" class="LineNr">673 </span> <span class="Conceal">¦</span> <span class="Conceal">¦</span> out << <span class="Constant">", </span><span class="cSpecial">\"</span><span class="Constant">"</span> << r<span class="Delimiter">.</span>properties<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">).</span>first << <span class="Constant">"</span><span class="cSpecial">\"</span><span class="Constant">: "</span> << <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span>r<span class="Delimiter">.</span>properties<span class="Delimiter">.</span>at<span class="Delimiter">(</span>i<span class="Delimiter">).</span>second<span class="Delimiter">);</span> <span id="L674" class="LineNr">674 </span> <span class="Delimiter">}</span> <span id="L675" class="LineNr">675 </span> out << <span class="Constant">"}"</span><span class="Delimiter">;</span> <span id="L676" class="LineNr">676 </span> <span class="Identifier">return</span> out<span class="Delimiter">.</span>str<span class="Delimiter">();</span> @@ -747,11 +747,11 @@ if ('onhashchange' in window) { <span id="L683" class="LineNr">683 </span> <span id="L684" class="LineNr">684 </span>string debug_string<span class="Delimiter">(</span><span class="Normal">const</span> reagent& x<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L685" class="LineNr">685 </span> ostringstream out<span class="Delimiter">;</span> -<span id="L686" class="LineNr">686 </span> out << x<span class="Delimiter">.</span>name << <span class="Constant">": "</span> << x<span class="Delimiter">.</span>value << <span class="Constant">' '</span> << <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>x<span class="Delimiter">.</span>type<span class="Delimiter">)</span> << <span class="Constant">" -- "</span> << <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>x<span class="Delimiter">);</span> +<span id="L686" class="LineNr">686 </span> out << x<span class="Delimiter">.</span>name << <span class="Constant">": "</span> << x<span class="Delimiter">.</span>value << <span class="Constant">' '</span> << <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span>x<span class="Delimiter">.</span>type<span class="Delimiter">)</span> << <span class="Constant">" -- "</span> << <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span>x<span class="Delimiter">);</span> <span id="L687" class="LineNr">687 </span> <span class="Identifier">return</span> out<span class="Delimiter">.</span>str<span class="Delimiter">();</span> <span id="L688" class="LineNr">688 </span><span class="Delimiter">}</span> <span id="L689" class="LineNr">689 </span> -<span id="L690" class="LineNr">690 </span>string <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> string_tree* property<span class="Delimiter">)</span> <span class="Delimiter">{</span> +<span id="L690" class="LineNr">690 </span>string <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> string_tree* property<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L691" class="LineNr">691 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!property<span class="Delimiter">)</span> <span class="Identifier">return</span> <span class="Constant">"()"</span><span class="Delimiter">;</span> <span id="L692" class="LineNr">692 </span> ostringstream out<span class="Delimiter">;</span> <span id="L693" class="LineNr">693 </span> dump<span class="Delimiter">(</span>property<span class="Delimiter">,</span> out<span class="Delimiter">);</span> @@ -779,7 +779,7 @@ if ('onhashchange' in window) { <span id="L715" class="LineNr">715 </span> out << <span class="Constant">')'</span><span class="Delimiter">;</span> <span id="L716" class="LineNr">716 </span><span class="Delimiter">}</span> <span id="L717" class="LineNr">717 </span> -<span id="L718" class="LineNr">718 </span>string <a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> type_tree* type<span class="Delimiter">)</span> <span class="Delimiter">{</span> +<span id="L718" class="LineNr">718 </span>string <a href='028call_return.cc.html#L162'>to_string</a><span class="Delimiter">(</span><span class="Normal">const</span> type_tree* type<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L719" class="LineNr">719 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>type == <span class="Constant">NULL</span><span class="Delimiter">)</span> <span class="Identifier">return</span> <span class="Constant">"()"</span><span class="Delimiter">;</span> <span id="L720" class="LineNr">720 </span> ostringstream out<span class="Delimiter">;</span> <span id="L721" class="LineNr">721 </span> dump<span class="Delimiter">(</span>type<span class="Delimiter">,</span> out<span class="Delimiter">);</span> |