diff options
author | Kartik K. Agaram <vc@akkartik.com> | 2016-12-27 22:20:43 -0800 |
---|---|---|
committer | Kartik K. Agaram <vc@akkartik.com> | 2016-12-27 22:20:43 -0800 |
commit | 97eb971b7574b3f283d7111a567a301faec9912d (patch) | |
tree | 4a1f9d1987ca601efba78865c8b3d1766d23af92 /html/055shape_shifting_container.cc.html | |
parent | df0c0babff599b0ab85f56cd50ee0b4143f12886 (diff) | |
download | mu-97eb971b7574b3f283d7111a567a301faec9912d.tar.gz |
3725
More improvements to cross-linking example programs. Include their own functions as well in the tags for each program, even as you share the core .mu files everywhere.
Diffstat (limited to 'html/055shape_shifting_container.cc.html')
-rw-r--r-- | html/055shape_shifting_container.cc.html | 46 |
1 files changed, 23 insertions, 23 deletions
diff --git a/html/055shape_shifting_container.cc.html b/html/055shape_shifting_container.cc.html index c7d7842f..fb41b269 100644 --- a/html/055shape_shifting_container.cc.html +++ b/html/055shape_shifting_container.cc.html @@ -273,7 +273,7 @@ if ('onhashchange' in window) { <span id="L209" class="LineNr">209 </span> <span class="Identifier">return</span> <span class="Constant">true</span><span class="Delimiter">;</span> <span id="L210" class="LineNr">210 </span><span class="Delimiter">}</span> <span id="L211" class="LineNr">211 </span> -<span id="L212" class="LineNr">212 </span><span class="Delimiter">:(before "End <a href='030container.cc.html#L662'>insert_container</a> Special-cases")</span> +<span id="L212" class="LineNr">212 </span><span class="Delimiter">:(before "End <a href='030container.cc.html#L661'>insert_container</a> Special-cases")</span> <span id="L213" class="LineNr">213 </span><span class="Comment">// check for use of type ingredients</span> <span id="L214" class="LineNr">214 </span><span class="Normal">else</span> <span class="Normal">if</span> <span class="Delimiter">(</span>is_type_ingredient_name<span class="Delimiter">(</span>type<span class="Delimiter">-></span>name<span class="Delimiter">))</span> <span class="Delimiter">{</span> <span id="L215" class="LineNr">215 </span> type<span class="Delimiter">-></span>value = get<span class="Delimiter">(</span>info<span class="Delimiter">.</span>type_ingredient_names<span class="Delimiter">,</span> type<span class="Delimiter">-></span>name<span class="Delimiter">);</span> @@ -378,7 +378,7 @@ if ('onhashchange' in window) { <span id="L314" class="LineNr">314 </span>] <span id="L315" class="LineNr">315 </span><span class="traceContains">+mem: storing 1 in location 4</span> <span id="L316" class="LineNr">316 </span> -<span id="L317" class="LineNr">317 </span><span class="Delimiter">:(before "End <a href='030container.cc.html#L431'>element_type</a> Special-cases")</span> +<span id="L317" class="LineNr">317 </span><span class="Delimiter">:(before "End <a href='030container.cc.html#L430'>element_type</a> Special-cases")</span> <span id="L318" class="LineNr">318 </span>replace_type_ingredients<span class="Delimiter">(</span>element<span class="Delimiter">,</span> type<span class="Delimiter">,</span> info<span class="Delimiter">,</span> <span class="Constant">" while computing element type of container"</span><span class="Delimiter">);</span> <span id="L319" class="LineNr">319 </span><span class="Delimiter">:(before "Compute Container Size(element, full_type)")</span> <span id="L320" class="LineNr">320 </span>replace_type_ingredients<span class="Delimiter">(</span>element<span class="Delimiter">,</span> full_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> @@ -413,24 +413,24 @@ if ('onhashchange' in window) { <span id="L349" class="LineNr">349 </span><span class="Delimiter">}</span> <span id="L350" class="LineNr">350 </span> <span id="L351" class="LineNr">351 </span><span class="Comment">// replace all type_ingredients in element_type with corresponding elements of callsite_type</span> -<span id="L352" class="LineNr">352 </span><span class="Normal">void</span> replace_type_ingredients<span class="Delimiter">(</span>type_tree* <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">,</span> <span class="Normal">const</span> type_tree* callsite_type<span class="Delimiter">,</span> <span class="Normal">const</span> type_info& container_info<span class="Delimiter">,</span> <span class="Normal">const</span> string& location_for_error_messages<span class="Delimiter">)</span> <span class="Delimiter">{</span> +<span id="L352" class="LineNr">352 </span><span class="Normal">void</span> replace_type_ingredients<span class="Delimiter">(</span>type_tree* <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">,</span> <span class="Normal">const</span> type_tree* callsite_type<span class="Delimiter">,</span> <span class="Normal">const</span> type_info& container_info<span class="Delimiter">,</span> <span class="Normal">const</span> string& location_for_error_messages<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L353" class="LineNr">353 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!callsite_type<span class="Delimiter">)</span> <span class="Identifier">return</span><span class="Delimiter">;</span> <span class="Comment">// error but it's already been raised above</span> <span id="L354" class="LineNr">354 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!element_type<span class="Delimiter">)</span> <span class="Identifier">return</span><span class="Delimiter">;</span> <span id="L355" class="LineNr">355 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!element_type<span class="Delimiter">-></span>atom<span class="Delimiter">)</span> <span class="Delimiter">{</span> -<span id="L356" class="LineNr">356 </span> <span class="Normal">if</span> <span class="Delimiter">(</span><a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">-></span>right == <span class="Constant">NULL</span> && is_type_ingredient<span class="Delimiter">(</span><a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">-></span>left<span class="Delimiter">))</span> <span class="Delimiter">{</span> -<span id="L357" class="LineNr">357 </span> <span class="Normal">int</span> type_ingredient_index = to_type_ingredient_index<span class="Delimiter">(</span><a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">-></span>left<span class="Delimiter">);</span> +<span id="L356" class="LineNr">356 </span> <span class="Normal">if</span> <span class="Delimiter">(</span><a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">-></span>right == <span class="Constant">NULL</span> && is_type_ingredient<span class="Delimiter">(</span><a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">-></span>left<span class="Delimiter">))</span> <span class="Delimiter">{</span> +<span id="L357" class="LineNr">357 </span> <span class="Normal">int</span> type_ingredient_index = to_type_ingredient_index<span class="Delimiter">(</span><a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">-></span>left<span class="Delimiter">);</span> <span id="L358" class="LineNr">358 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>corresponding<span class="Delimiter">(</span>callsite_type<span class="Delimiter">,</span> type_ingredient_index<span class="Delimiter">,</span> is_final_type_ingredient<span class="Delimiter">(</span>type_ingredient_index<span class="Delimiter">,</span> container_info<span class="Delimiter">))-></span>right<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L359" class="LineNr">359 </span> <span class="Comment">// replacing type ingredient at end of list, and replacement is a non-degenerate compound type -- (a b) but not (a)</span> -<span id="L360" class="LineNr">360 </span> replace_type_ingredient_at<span class="Delimiter">(</span>type_ingredient_index<span class="Delimiter">,</span> <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> +<span id="L360" class="LineNr">360 </span> replace_type_ingredient_at<span class="Delimiter">(</span>type_ingredient_index<span class="Delimiter">,</span> <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> <span id="L361" class="LineNr">361 </span> <span class="Identifier">return</span><span class="Delimiter">;</span> <span id="L362" class="LineNr">362 </span> <span class="Delimiter">}</span> <span id="L363" class="LineNr">363 </span> <span class="Delimiter">}</span> -<span id="L364" class="LineNr">364 </span> replace_type_ingredients<span class="Delimiter">(</span><a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">-></span>left<span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> -<span id="L365" class="LineNr">365 </span> replace_type_ingredients<span class="Delimiter">(</span><a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">-></span>right<span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> +<span id="L364" class="LineNr">364 </span> replace_type_ingredients<span class="Delimiter">(</span><a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">-></span>left<span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> +<span id="L365" class="LineNr">365 </span> replace_type_ingredients<span class="Delimiter">(</span><a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">-></span>right<span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> <span id="L366" class="LineNr">366 </span> <span class="Identifier">return</span><span class="Delimiter">;</span> <span id="L367" class="LineNr">367 </span> <span class="Delimiter">}</span> -<span id="L368" class="LineNr">368 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>is_type_ingredient<span class="Delimiter">(</span><a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">))</span> -<span id="L369" class="LineNr">369 </span> replace_type_ingredient_at<span class="Delimiter">(</span>to_type_ingredient_index<span class="Delimiter">(</span><a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">),</span> <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> +<span id="L368" class="LineNr">368 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>is_type_ingredient<span class="Delimiter">(</span><a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">))</span> +<span id="L369" class="LineNr">369 </span> replace_type_ingredient_at<span class="Delimiter">(</span>to_type_ingredient_index<span class="Delimiter">(</span><a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">),</span> <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">,</span> callsite_type<span class="Delimiter">,</span> container_info<span class="Delimiter">,</span> location_for_error_messages<span class="Delimiter">);</span> <span id="L370" class="LineNr">370 </span><span class="Delimiter">}</span> <span id="L371" class="LineNr">371 </span> <span id="L372" class="LineNr">372 </span><span class="Normal">const</span> type_tree* corresponding<span class="Delimiter">(</span><span class="Normal">const</span> type_tree* type<span class="Delimiter">,</span> <span class="Normal">int</span> index<span class="Delimiter">,</span> <span class="Normal">bool</span> <span class="Normal">final</span><span class="Delimiter">)</span> <span class="Delimiter">{</span> @@ -451,7 +451,7 @@ if ('onhashchange' in window) { <span id="L387" class="LineNr">387 </span> <span class="Identifier">return</span> type<span class="Delimiter">-></span>value-START_TYPE_INGREDIENTS<span class="Delimiter">;</span> <span id="L388" class="LineNr">388 </span><span class="Delimiter">}</span> <span id="L389" class="LineNr">389 </span> -<span id="L390" class="LineNr">390 </span><span class="Normal">void</span> replace_type_ingredient_at<span class="Delimiter">(</span><span class="Normal">const</span> <span class="Normal">int</span> type_ingredient_index<span class="Delimiter">,</span> type_tree* <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">,</span> <span class="Normal">const</span> type_tree* callsite_type<span class="Delimiter">,</span> <span class="Normal">const</span> type_info& container_info<span class="Delimiter">,</span> <span class="Normal">const</span> string& location_for_error_messages<span class="Delimiter">)</span> <span class="Delimiter">{</span> +<span id="L390" class="LineNr">390 </span><span class="Normal">void</span> replace_type_ingredient_at<span class="Delimiter">(</span><span class="Normal">const</span> <span class="Normal">int</span> type_ingredient_index<span class="Delimiter">,</span> type_tree* <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">,</span> <span class="Normal">const</span> type_tree* callsite_type<span class="Delimiter">,</span> <span class="Normal">const</span> type_info& container_info<span class="Delimiter">,</span> <span class="Normal">const</span> string& location_for_error_messages<span class="Delimiter">)</span> <span class="Delimiter">{</span> <span id="L391" class="LineNr">391 </span> <span class="Normal">if</span> <span class="Delimiter">(</span>!has_nth_type<span class="Delimiter">(</span>callsite_type<span class="Delimiter">,</span> type_ingredient_index<span class="Delimiter">))</span> <span class="Delimiter">{</span> <span id="L392" class="LineNr">392 </span> <a href='003trace.cc.html#L178'>raise</a> << <span class="Constant">"illegal type "</span> << names_to_string<span class="Delimiter">(</span>callsite_type<span class="Delimiter">)</span> << <span class="Constant">" seems to be missing a type ingredient or three"</span> << location_for_error_messages << <span class="cSpecial">'\n'</span> << <a href='003trace.cc.html#L195'>end</a><span class="Delimiter">();</span> <span id="L393" class="LineNr">393 </span> <span class="Identifier">return</span><span class="Delimiter">;</span> @@ -491,7 +491,7 @@ if ('onhashchange' in window) { <span id="L427" class="LineNr">427 </span> <span class="Constant">" y:num</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L428" class="LineNr">428 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L429" class="LineNr">429 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"x:foo:point"</span><span class="Delimiter">);</span> -<span id="L430" class="LineNr">430 </span> reagent element = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L430" class="LineNr">430 </span> reagent element = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L431" class="LineNr">431 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element<span class="Delimiter">),</span> <span class="Constant">"{x: </span><span class="cSpecial">\"</span><span class="Constant">point</span><span class="cSpecial">\"</span><span class="Constant">}"</span><span class="Delimiter">);</span> <span id="L432" class="LineNr">432 </span><span class="Delimiter">}</span> <span id="L433" class="LineNr">433 </span> @@ -503,7 +503,7 @@ if ('onhashchange' in window) { <span id="L439" class="LineNr">439 </span> <span class="Constant">" x:foo:_elem</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L440" class="LineNr">440 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L441" class="LineNr">441 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"x:bar:point"</span><span class="Delimiter">);</span> -<span id="L442" class="LineNr">442 </span> reagent element = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L442" class="LineNr">442 </span> reagent element = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L443" class="LineNr">443 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element<span class="Delimiter">),</span> <span class="Constant">"{x: (</span><span class="cSpecial">\"</span><span class="Constant">foo</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">point</span><span class="cSpecial">\"</span><span class="Constant">)}"</span><span class="Delimiter">);</span> <span id="L444" class="LineNr">444 </span><span class="Delimiter">}</span> <span id="L445" class="LineNr">445 </span> @@ -515,7 +515,7 @@ if ('onhashchange' in window) { <span id="L451" class="LineNr">451 </span> <span class="Constant">" x:foo:_elem</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L452" class="LineNr">452 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L453" class="LineNr">453 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"x:bar:<a href='043space.cc.html#L76'>address</a>:array:character"</span><span class="Delimiter">);</span> -<span id="L454" class="LineNr">454 </span> reagent element = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L454" class="LineNr">454 </span> reagent element = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L455" class="LineNr">455 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element<span class="Delimiter">),</span> <span class="Constant">"{x: (</span><span class="cSpecial">\"</span><span class="Constant">foo</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant"><a href='043space.cc.html#L76'>address</a></span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">array</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">character</span><span class="cSpecial">\"</span><span class="Constant">)}"</span><span class="Delimiter">);</span> <span id="L456" class="LineNr">456 </span><span class="Delimiter">}</span> <span id="L457" class="LineNr">457 </span> @@ -527,7 +527,7 @@ if ('onhashchange' in window) { <span id="L463" class="LineNr">463 </span> <span class="Constant">" x:foo:_elem:num</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L464" class="LineNr">464 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L465" class="LineNr">465 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"x:bar:address"</span><span class="Delimiter">);</span> -<span id="L466" class="LineNr">466 </span> reagent element = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L466" class="LineNr">466 </span> reagent element = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L467" class="LineNr">467 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element<span class="Delimiter">),</span> <span class="Constant">"{x: (</span><span class="cSpecial">\"</span><span class="Constant">foo</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant"><a href='043space.cc.html#L76'>address</a></span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">number</span><span class="cSpecial">\"</span><span class="Constant">)}"</span><span class="Delimiter">);</span> <span id="L468" class="LineNr">468 </span><span class="Delimiter">}</span> <span id="L469" class="LineNr">469 </span> @@ -537,9 +537,9 @@ if ('onhashchange' in window) { <span id="L473" class="LineNr">473 </span> <span class="Constant">" y:_b</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L474" class="LineNr">474 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L475" class="LineNr">475 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"{f: (foo number (address array character))}"</span><span class="Delimiter">);</span> -<span id="L476" class="LineNr">476 </span> reagent element1 = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L476" class="LineNr">476 </span> reagent element1 = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L477" class="LineNr">477 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element1<span class="Delimiter">),</span> <span class="Constant">"{x: </span><span class="cSpecial">\"</span><span class="Constant">number</span><span class="cSpecial">\"</span><span class="Constant">}"</span><span class="Delimiter">);</span> -<span id="L478" class="LineNr">478 </span> reagent element2 = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">1</span><span class="Delimiter">);</span> +<span id="L478" class="LineNr">478 </span> reagent element2 = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">1</span><span class="Delimiter">);</span> <span id="L479" class="LineNr">479 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element2<span class="Delimiter">),</span> <span class="Constant">"{y: (</span><span class="cSpecial">\"</span><span class="Constant"><a href='043space.cc.html#L76'>address</a></span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">array</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">character</span><span class="cSpecial">\"</span><span class="Constant">)}"</span><span class="Delimiter">);</span> <span id="L480" class="LineNr">480 </span><span class="Delimiter">}</span> <span id="L481" class="LineNr">481 </span> @@ -548,7 +548,7 @@ if ('onhashchange' in window) { <span id="L484" class="LineNr">484 </span> <span class="Constant">" {x: (bar _a (address _b))}</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L485" class="LineNr">485 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L486" class="LineNr">486 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"f:foo:number:array:character"</span><span class="Delimiter">);</span> -<span id="L487" class="LineNr">487 </span> reagent element = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L487" class="LineNr">487 </span> reagent element = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L488" class="LineNr">488 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span>names_to_string_without_quotes<span class="Delimiter">(</span>element<span class="Delimiter">.</span>type<span class="Delimiter">),</span> <span class="Constant">"(bar number (address array character))"</span><span class="Delimiter">);</span> <span id="L489" class="LineNr">489 </span><span class="Delimiter">}</span> <span id="L490" class="LineNr">490 </span> @@ -559,11 +559,11 @@ if ('onhashchange' in window) { <span id="L495" class="LineNr">495 </span> <span class="Constant">" z:_c</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L496" class="LineNr">496 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L497" class="LineNr">497 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"{f: (foo number (address array character) boolean)}"</span><span class="Delimiter">);</span> -<span id="L498" class="LineNr">498 </span> reagent element1 = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L498" class="LineNr">498 </span> reagent element1 = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L499" class="LineNr">499 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element1<span class="Delimiter">),</span> <span class="Constant">"{x: </span><span class="cSpecial">\"</span><span class="Constant">number</span><span class="cSpecial">\"</span><span class="Constant">}"</span><span class="Delimiter">);</span> -<span id="L500" class="LineNr">500 </span> reagent element2 = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">1</span><span class="Delimiter">);</span> +<span id="L500" class="LineNr">500 </span> reagent element2 = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">1</span><span class="Delimiter">);</span> <span id="L501" class="LineNr">501 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element2<span class="Delimiter">),</span> <span class="Constant">"{y: (</span><span class="cSpecial">\"</span><span class="Constant"><a href='043space.cc.html#L76'>address</a></span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">array</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">character</span><span class="cSpecial">\"</span><span class="Constant">)}"</span><span class="Delimiter">);</span> -<span id="L502" class="LineNr">502 </span> reagent element3 = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">2</span><span class="Delimiter">);</span> +<span id="L502" class="LineNr">502 </span> reagent element3 = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">2</span><span class="Delimiter">);</span> <span id="L503" class="LineNr">503 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element3<span class="Delimiter">),</span> <span class="Constant">"{z: </span><span class="cSpecial">\"</span><span class="Constant">boolean</span><span class="cSpecial">\"</span><span class="Constant">}"</span><span class="Delimiter">);</span> <span id="L504" class="LineNr">504 </span><span class="Delimiter">}</span> <span id="L505" class="LineNr">505 </span> @@ -573,7 +573,7 @@ if ('onhashchange' in window) { <span id="L509" class="LineNr">509 </span> <span class="Constant">" value:_value</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L510" class="LineNr">510 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L511" class="LineNr">511 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"{f: (foo (address array character) number)}"</span><span class="Delimiter">);</span> -<span id="L512" class="LineNr">512 </span> reagent element = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L512" class="LineNr">512 </span> reagent element = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L513" class="LineNr">513 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element<span class="Delimiter">),</span> <span class="Constant">"{key: (</span><span class="cSpecial">\"</span><span class="Constant"><a href='043space.cc.html#L76'>address</a></span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">array</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">character</span><span class="cSpecial">\"</span><span class="Constant">)}"</span><span class="Delimiter">);</span> <span id="L514" class="LineNr">514 </span><span class="Delimiter">}</span> <span id="L515" class="LineNr">515 </span> @@ -587,7 +587,7 @@ if ('onhashchange' in window) { <span id="L523" class="LineNr">523 </span> <span class="Constant">" value:_value</span><span class="cSpecial">\n</span><span class="Constant">"</span> <span id="L524" class="LineNr">524 </span> <span class="Constant">"]</span><span class="cSpecial">\n</span><span class="Constant">"</span><span class="Delimiter">);</span> <span id="L525" class="LineNr">525 </span> reagent callsite<span class="Delimiter">(</span><span class="Constant">"{f: (foo_table (address array character) number)}"</span><span class="Delimiter">);</span> -<span id="L526" class="LineNr">526 </span> reagent element = <a href='030container.cc.html#L431'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> +<span id="L526" class="LineNr">526 </span> reagent element = <a href='030container.cc.html#L430'>element_type</a><span class="Delimiter">(</span>callsite<span class="Delimiter">.</span>type<span class="Delimiter">,</span> <span class="Constant">0</span><span class="Delimiter">);</span> <span id="L527" class="LineNr">527 </span> <a href='002test.cc.html#L32'>CHECK_EQ</a><span class="Delimiter">(</span><a href='028call_return.cc.html#L158'>to_string</a><span class="Delimiter">(</span>element<span class="Delimiter">),</span> <span class="Constant">"{data: (</span><span class="cSpecial">\"</span><span class="Constant"><a href='043space.cc.html#L76'>address</a></span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">array</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">foo_table_row</span><span class="cSpecial">\"</span><span class="Constant"> (</span><span class="cSpecial">\"</span><span class="Constant"><a href='043space.cc.html#L76'>address</a></span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">array</span><span class="cSpecial">\"</span><span class="Constant"> </span><span class="cSpecial">\"</span><span class="Constant">character</span><span class="cSpecial">\"</span><span class="Constant">) </span><span class="cSpecial">\"</span><span class="Constant">number</span><span class="cSpecial">\"</span><span class="Constant">)}"</span><span class="Delimiter">);</span> <span id="L528" class="LineNr">528 </span><span class="Delimiter">}</span> <span id="L529" class="LineNr">529 </span> |