furnace-xray 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +18 -0
- data/Gemfile +5 -0
- data/LICENSE.txt +22 -0
- data/README.md +60 -0
- data/Rakefile +1 -0
- data/bin/furnace-xray +23 -0
- data/furnace-xray.gemspec +33 -0
- data/lib/furnace-xray.rb +1 -0
- data/lib/furnace-xray/app/app.rb +56 -0
- data/lib/furnace-xray/app/assets/images/chosen-sprite.png +0 -0
- data/lib/furnace-xray/app/assets/images/evil_martians_bw_logo.svg +3 -0
- data/lib/furnace-xray/app/assets/images/evil_martians_logo.svg +3 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_diagonal-maze_20_6e4f1c_10x10.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_diagonal-maze_40_000000_10x10.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_10_eceadf_60x60.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_10_f8f7f6_60x60.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_eceadf_60x60.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_f7f3de_60x60.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_ffffff_60x60.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_65_654b24_60x60.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_68_b83400_60x60.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-icons_222222_256x240.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-icons_3572ac_256x240.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-icons_8c291d_256x240.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-icons_b83400_256x240.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-icons_fbdb93_256x240.png +0 -0
- data/lib/furnace-xray/app/assets/images/ui/ui-icons_ffffff_256x240.png +0 -0
- data/lib/furnace-xray/app/assets/javascripts/application.js.coffee +219 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/drawer.js.coffee +206 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/graph.js.coffee +26 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/input.js.coffee +134 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/input_state.js.coffee +8 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/map.js.coffee +45 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/nodes/argument.js.coffee +7 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/nodes/block.js.coffee +76 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/nodes/function.js.coffee +15 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/nodes/instruction.js.coffee +33 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/nodes/operand.js.coffee +21 -0
- data/lib/furnace-xray/app/assets/javascripts/lib/nodes/type.js.coffee +12 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/chosen.jquery.js +1090 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/d3.v3.js +7806 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/dagre.js +4053 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/hotkeys.jquery.js +106 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/jquery.js +9472 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/mustache.js +532 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/stacktrace-0.4.js +424 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/sugar-1.3.8.js +8615 -0
- data/lib/furnace-xray/app/assets/javascripts/vendor/ui.jquery.js +14850 -0
- data/lib/furnace-xray/app/assets/stylesheets/app.css.sass +199 -0
- data/lib/furnace-xray/app/assets/stylesheets/chosen.jquery.css +413 -0
- data/lib/furnace-xray/app/assets/stylesheets/elements.css.sass +31 -0
- data/lib/furnace-xray/app/assets/stylesheets/graph.css.sass +29 -0
- data/lib/furnace-xray/app/assets/stylesheets/ui.jquery.css +1174 -0
- data/lib/furnace-xray/app/public/fonts/iconic_stroke.afm +170 -0
- data/lib/furnace-xray/app/public/fonts/iconic_stroke.eot +0 -0
- data/lib/furnace-xray/app/public/fonts/iconic_stroke.otf +0 -0
- data/lib/furnace-xray/app/public/fonts/iconic_stroke.svg +553 -0
- data/lib/furnace-xray/app/public/fonts/iconic_stroke.ttf +0 -0
- data/lib/furnace-xray/app/public/fonts/iconic_stroke.woff +0 -0
- data/lib/furnace-xray/app/public/fonts/iconic_stroke_demo.html +1 -0
- data/lib/furnace-xray/app/views/index.haml +52 -0
- data/lib/furnace-xray/app/views/nodes/argument.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/block.jst.mustache +4 -0
- data/lib/furnace-xray/app/views/nodes/diff/added_line.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/diff/changed_line.jst.mustache +2 -0
- data/lib/furnace-xray/app/views/nodes/diff/removed_line.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/diff/unchanged_line.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/function.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/function_removed.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/instruction_typed.jst.mustache +3 -0
- data/lib/furnace-xray/app/views/nodes/instruction_void.jst.mustache +3 -0
- data/lib/furnace-xray/app/views/nodes/operand_argument.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/operand_basic_block.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/operand_constant.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/operand_constant_function.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/operand_instruction.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/type_constant.jst.mustache +1 -0
- data/lib/furnace-xray/app/views/nodes/type_parametric.jst.mustache +3 -0
- data/lib/furnace-xray/lib/jst_pages.rb +226 -0
- data/lib/furnace-xray/version.rb +5 -0
- data/sample.json +1 -0
- metadata +251 -0
Binary file
|
Binary file
|
@@ -0,0 +1 @@
|
|
1
|
+
<html><head><title>Iconic Font-embedding demo</title><link rel='stylesheet' href='iconic_stroke.css' type='text/css' media='screen' /><style> body {font-family:'Helvetica', arial, sans-serif;} span { font-size:36px; }</style><body><table><tr><th>Name</th><th>Iconic Icon</th><th>Unicode Icon</th><th>Hexidecimal Code</th><tr><td>lightbulb</td><td><span class='iconic lightbulb'></span></td><td><span class='lightbulb'></span></td><td>e063</td></tr><tr><td>equalizer</td><td><span class='iconic equalizer'></span></td><td><span class='equalizer'></span></td><td>e052</td></tr><tr><td>map_pin_stroke</td><td><span class='iconic map_pin_stroke'></span></td><td><span class='map_pin_stroke'></span></td><td>e068</td></tr><tr><td>brush_alt</td><td><span class='iconic brush_alt'></span></td><td><span class='brush_alt'></span></td><td>e01c</td></tr><tr><td>move</td><td><span class='iconic move'></span></td><td><span class='move'></span></td><td>e03e</td></tr><tr><td>paperclip</td><td><span class='iconic paperclip'></span></td><td><span class='paperclip'></span></td><td>e08a</td></tr><tr><td>pen_alt_stroke</td><td><span class='iconic pen_alt_stroke'></span></td><td><span class='pen_alt_stroke'></span></td><td>e005</td></tr><tr><td>move_vertical</td><td><span class='iconic move_vertical'></span></td><td><span class='move_vertical'></span></td><td>e03b</td></tr><tr><td>book_alt2</td><td><span class='iconic book_alt2'></span></td><td><span class='book_alt2'></span></td><td>e06a</td></tr><tr><td>layers</td><td><span class='iconic layers'></span></td><td><span class='layers'></span></td><td>e01f</td></tr><tr><td>pause</td><td><span class='iconic pause'></span></td><td><span class='pause'></span></td><td>e049</td></tr><tr><td>layers_alt</td><td><span class='iconic layers_alt'></span></td><td><span class='layers_alt'></span></td><td>e020</td></tr><tr><td>cloud_upload</td><td><span class='iconic cloud_upload'></span></td><td><span class='cloud_upload'></span></td><td>e045</td></tr><tr><td>chart_alt</td><td><span class='iconic chart_alt'></span></td><td><span class='chart_alt'></span></td><td>e029</td></tr><tr><td>fullscreen_exit_alt</td><td><span class='iconic fullscreen_exit_alt'></span></td><td><span class='fullscreen_exit_alt'></span></td><td>e051</td></tr><tr><td>cloud_download</td><td><span class='iconic cloud_download'></span></td><td><span class='cloud_download'></span></td><td>e044</td></tr><tr><td>comment_alt2_stroke</td><td><span class='iconic comment_alt2_stroke'></span></td><td><span class='comment_alt2_stroke'></span></td><td>e004</td></tr><tr><td>mail</td><td><span class='iconic mail'></span></td><td><span class='mail'></span></td><td>2709</td></tr><tr><td>check_alt</td><td><span class='iconic check_alt'></span></td><td><span class='check_alt'></span></td><td>2714</td></tr><tr><td>document_stroke</td><td><span class='iconic document_stroke'></span></td><td><span class='document_stroke'></span></td><td>e066</td></tr><tr><td>battery_charging</td><td><span class='iconic battery_charging'></span></td><td><span class='battery_charging'></span></td><td>e05d</td></tr><tr><td>stop</td><td><span class='iconic stop'></span></td><td><span class='stop'></span></td><td>e04a</td></tr><tr><td>arrow_up</td><td><span class='iconic arrow_up'></span></td><td><span class='arrow_up'></span></td><td>2191</td></tr><tr><td>move_horizontal</td><td><span class='iconic move_horizontal'></span></td><td><span class='move_horizontal'></span></td><td>e038</td></tr><tr><td>compass</td><td><span class='iconic compass'></span></td><td><span class='compass'></span></td><td>e021</td></tr><tr><td>minus_alt</td><td><span class='iconic minus_alt'></span></td><td><span class='minus_alt'></span></td><td>e009</td></tr><tr><td>battery_empty</td><td><span class='iconic battery_empty'></span></td><td><span class='battery_empty'></span></td><td>e05c</td></tr><tr><td>map_pin_alt</td><td><span class='iconic map_pin_alt'></span></td><td><span class='map_pin_alt'></span></td><td>e002</td></tr><tr><td>unlock_stroke</td><td><span class='iconic unlock_stroke'></span></td><td><span class='unlock_stroke'></span></td><td>e076</td></tr><tr><td>lock_stroke</td><td><span class='iconic lock_stroke'></span></td><td><span class='lock_stroke'></span></td><td>e075</td></tr><tr><td>question_mark</td><td><span class='iconic question_mark'></span></td><td><span class='question_mark'></span></td><td>003f</td></tr><tr><td>list</td><td><span class='iconic list'></span></td><td><span class='list'></span></td><td>e055</td></tr><tr><td>upload</td><td><span class='iconic upload'></span></td><td><span class='upload'></span></td><td>e043</td></tr><tr><td>reload</td><td><span class='iconic reload'></span></td><td><span class='reload'></span></td><td>e030</td></tr><tr><td>loop_alt4</td><td><span class='iconic loop_alt4'></span></td><td><span class='loop_alt4'></span></td><td>e035</td></tr><tr><td>loop_alt3</td><td><span class='iconic loop_alt3'></span></td><td><span class='loop_alt3'></span></td><td>e034</td></tr><tr><td>loop_alt2</td><td><span class='iconic loop_alt2'></span></td><td><span class='loop_alt2'></span></td><td>e033</td></tr><tr><td>loop_alt1</td><td><span class='iconic loop_alt1'></span></td><td><span class='loop_alt1'></span></td><td>e032</td></tr><tr><td>left_quote</td><td><span class='iconic left_quote'></span></td><td><span class='left_quote'></span></td><td>275d</td></tr><tr><td>x</td><td><span class='iconic x'></span></td><td><span class='x'></span></td><td>2717</td></tr><tr><td>last</td><td><span class='iconic last'></span></td><td><span class='last'></span></td><td>e04d</td></tr><tr><td>document_alt_stroke</td><td><span class='iconic document_alt_stroke'></span></td><td><span class='document_alt_stroke'></span></td><td>e000</td></tr><tr><td>bars</td><td><span class='iconic bars'></span></td><td><span class='bars'></span></td><td>e06f</td></tr><tr><td>arrow_left</td><td><span class='iconic arrow_left'></span></td><td><span class='arrow_left'></span></td><td>2190</td></tr><tr><td>arrow_down</td><td><span class='iconic arrow_down'></span></td><td><span class='arrow_down'></span></td><td>2193</td></tr><tr><td>download</td><td><span class='iconic download'></span></td><td><span class='download'></span></td><td>e042</td></tr><tr><td>home</td><td><span class='iconic home'></span></td><td><span class='home'></span></td><td>2302</td></tr><tr><td>calendar</td><td><span class='iconic calendar'></span></td><td><span class='calendar'></span></td><td>e001</td></tr><tr><td>right_quote_alt</td><td><span class='iconic right_quote_alt'></span></td><td><span class='right_quote_alt'></span></td><td>e012</td></tr><tr><td>fullscreen</td><td><span class='iconic fullscreen'></span></td><td><span class='fullscreen'></span></td><td>e04e</td></tr><tr><td>dial</td><td><span class='iconic dial'></span></td><td><span class='dial'></span></td><td>e058</td></tr><tr><td>plus_alt</td><td><span class='iconic plus_alt'></span></td><td><span class='plus_alt'></span></td><td>e008</td></tr><tr><td>clock</td><td><span class='iconic clock'></span></td><td><span class='clock'></span></td><td>e079</td></tr><tr><td>movie</td><td><span class='iconic movie'></span></td><td><span class='movie'></span></td><td>e060</td></tr><tr><td>steering_wheel</td><td><span class='iconic steering_wheel'></span></td><td><span class='steering_wheel'></span></td><td>e024</td></tr><tr><td>pen</td><td><span class='iconic pen'></span></td><td><span class='pen'></span></td><td>270e</td></tr><tr><td>tag_stroke</td><td><span class='iconic tag_stroke'></span></td><td><span class='tag_stroke'></span></td><td>e02b</td></tr><tr><td>pin</td><td><span class='iconic pin'></span></td><td><span class='pin'></span></td><td>e067</td></tr><tr><td>denied</td><td><span class='iconic denied'></span></td><td><span class='denied'></span></td><td>26d4</td></tr><tr><td>left_quote_alt</td><td><span class='iconic left_quote_alt'></span></td><td><span class='left_quote_alt'></span></td><td>e011</td></tr><tr><td>volume_mute</td><td><span class='iconic volume_mute'></span></td><td><span class='volume_mute'></span></td><td>e071</td></tr><tr><td>arrow_up_alt2</td><td><span class='iconic arrow_up_alt2'></span></td><td><span class='arrow_up_alt2'></span></td><td>e018</td></tr><tr><td>list_nested</td><td><span class='iconic list_nested'></span></td><td><span class='list_nested'></span></td><td>e056</td></tr><tr><td>arrow_up_alt1</td><td><span class='iconic arrow_up_alt1'></span></td><td><span class='arrow_up_alt1'></span></td><td>e014</td></tr><tr><td>comment_stroke</td><td><span class='iconic comment_stroke'></span></td><td><span class='comment_stroke'></span></td><td>e06d</td></tr><tr><td>undo</td><td><span class='iconic undo'></span></td><td><span class='undo'></span></td><td>e02f</td></tr><tr><td>umbrella</td><td><span class='iconic umbrella'></span></td><td><span class='umbrella'></span></td><td>2602</td></tr><tr><td>bolt</td><td><span class='iconic bolt'></span></td><td><span class='bolt'></span></td><td>26a1</td></tr><tr><td>article</td><td><span class='iconic article'></span></td><td><span class='article'></span></td><td>e053</td></tr><tr><td>read_more</td><td><span class='iconic read_more'></span></td><td><span class='read_more'></span></td><td>e054</td></tr><tr><td>beaker</td><td><span class='iconic beaker'></span></td><td><span class='beaker'></span></td><td>e023</td></tr><tr><td>beaker_alt</td><td><span class='iconic beaker_alt'></span></td><td><span class='beaker_alt'></span></td><td>e010</td></tr><tr><td>battery_full</td><td><span class='iconic battery_full'></span></td><td><span class='battery_full'></span></td><td>e073</td></tr><tr><td>arrow_right</td><td><span class='iconic arrow_right'></span></td><td><span class='arrow_right'></span></td><td>2192</td></tr><tr><td>new_window</td><td><span class='iconic new_window'></span></td><td><span class='new_window'></span></td><td>e059</td></tr><tr><td>plus</td><td><span class='iconic plus'></span></td><td><span class='plus'></span></td><td>2795</td></tr><tr><td>cog</td><td><span class='iconic cog'></span></td><td><span class='cog'></span></td><td>2699</td></tr><tr><td>key_stroke</td><td><span class='iconic key_stroke'></span></td><td><span class='key_stroke'></span></td><td>26bf</td></tr><tr><td>first</td><td><span class='iconic first'></span></td><td><span class='first'></span></td><td>e04c</td></tr><tr><td>comment_alt1_stroke</td><td><span class='iconic comment_alt1_stroke'></span></td><td><span class='comment_alt1_stroke'></span></td><td>e003</td></tr><tr><td>trash_stroke</td><td><span class='iconic trash_stroke'></span></td><td><span class='trash_stroke'></span></td><td>e05a</td></tr><tr><td>image</td><td><span class='iconic image'></span></td><td><span class='image'></span></td><td>e027</td></tr><tr><td>chat_alt_stroke</td><td><span class='iconic chat_alt_stroke'></span></td><td><span class='chat_alt_stroke'></span></td><td>e007</td></tr><tr><td>cd</td><td><span class='iconic cd'></span></td><td><span class='cd'></span></td><td>e064</td></tr><tr><td>right_quote</td><td><span class='iconic right_quote'></span></td><td><span class='right_quote'></span></td><td>275e</td></tr><tr><td>brush</td><td><span class='iconic brush'></span></td><td><span class='brush'></span></td><td>e01b</td></tr><tr><td>cloud</td><td><span class='iconic cloud'></span></td><td><span class='cloud'></span></td><td>2601</td></tr><tr><td>eye</td><td><span class='iconic eye'></span></td><td><span class='eye'></span></td><td>e025</td></tr><tr><td>play_alt</td><td><span class='iconic play_alt'></span></td><td><span class='play_alt'></span></td><td>e048</td></tr><tr><td>transfer</td><td><span class='iconic transfer'></span></td><td><span class='transfer'></span></td><td>e041</td></tr><tr><td>pen_alt2</td><td><span class='iconic pen_alt2'></span></td><td><span class='pen_alt2'></span></td><td>e006</td></tr><tr><td>camera</td><td><span class='iconic camera'></span></td><td><span class='camera'></span></td><td>e070</td></tr><tr><td>move_horizontal_alt2</td><td><span class='iconic move_horizontal_alt2'></span></td><td><span class='move_horizontal_alt2'></span></td><td>e03a</td></tr><tr><td>curved_arrow</td><td><span class='iconic curved_arrow'></span></td><td><span class='curved_arrow'></span></td><td>2935</td></tr><tr><td>move_horizontal_alt1</td><td><span class='iconic move_horizontal_alt1'></span></td><td><span class='move_horizontal_alt1'></span></td><td>e039</td></tr><tr><td>aperture</td><td><span class='iconic aperture'></span></td><td><span class='aperture'></span></td><td>e026</td></tr><tr><td>reload_alt</td><td><span class='iconic reload_alt'></span></td><td><span class='reload_alt'></span></td><td>e031</td></tr><tr><td>magnifying_glass</td><td><span class='iconic magnifying_glass'></span></td><td><span class='magnifying_glass'></span></td><td>e074</td></tr><tr><td>iphone</td><td><span class='iconic iphone'></span></td><td><span class='iphone'></span></td><td>e06e</td></tr><tr><td>fork</td><td><span class='iconic fork'></span></td><td><span class='fork'></span></td><td>e046</td></tr><tr><td>box</td><td><span class='iconic box'></span></td><td><span class='box'></span></td><td>e06b</td></tr><tr><td>bars_alt</td><td><span class='iconic bars_alt'></span></td><td><span class='bars_alt'></span></td><td>e00a</td></tr><tr><td>heart_stroke</td><td><span class='iconic heart_stroke'></span></td><td><span class='heart_stroke'></span></td><td>2764</td></tr><tr><td>volume</td><td><span class='iconic volume'></span></td><td><span class='volume'></span></td><td>e072</td></tr><tr><td>x_alt</td><td><span class='iconic x_alt'></span></td><td><span class='x_alt'></span></td><td>2718</td></tr><tr><td>link</td><td><span class='iconic link'></span></td><td><span class='link'></span></td><td>e077</td></tr><tr><td>moon_stroke</td><td><span class='iconic moon_stroke'></span></td><td><span class='moon_stroke'></span></td><td>263e</td></tr><tr><td>eyedropper</td><td><span class='iconic eyedropper'></span></td><td><span class='eyedropper'></span></td><td>e01e</td></tr><tr><td>spin</td><td><span class='iconic spin'></span></td><td><span class='spin'></span></td><td>e036</td></tr><tr><td>rss</td><td><span class='iconic rss'></span></td><td><span class='rss'></span></td><td>e02c</td></tr><tr><td>info</td><td><span class='iconic info'></span></td><td><span class='info'></span></td><td>2139</td></tr><tr><td>target</td><td><span class='iconic target'></span></td><td><span class='target'></span></td><td>e02a</td></tr><tr><td>cursor</td><td><span class='iconic cursor'></span></td><td><span class='cursor'></span></td><td>e057</td></tr><tr><td>minus</td><td><span class='iconic minus'></span></td><td><span class='minus'></span></td><td>2796</td></tr><tr><td>book_alt</td><td><span class='iconic book_alt'></span></td><td><span class='book_alt'></span></td><td>e00b</td></tr><tr><td>headphones</td><td><span class='iconic headphones'></span></td><td><span class='headphones'></span></td><td>e061</td></tr><tr><td>hash</td><td><span class='iconic hash'></span></td><td><span class='hash'></span></td><td>0023</td></tr><tr><td>arrow_left_alt1</td><td><span class='iconic arrow_left_alt1'></span></td><td><span class='arrow_left_alt1'></span></td><td>e013</td></tr><tr><td>arrow_left_alt2</td><td><span class='iconic arrow_left_alt2'></span></td><td><span class='arrow_left_alt2'></span></td><td>e017</td></tr><tr><td>fullscreen_exit</td><td><span class='iconic fullscreen_exit'></span></td><td><span class='fullscreen_exit'></span></td><td>e050</td></tr><tr><td>share</td><td><span class='iconic share'></span></td><td><span class='share'></span></td><td>e02e</td></tr><tr><td>fullscreen_alt</td><td><span class='iconic fullscreen_alt'></span></td><td><span class='fullscreen_alt'></span></td><td>e04f</td></tr><tr><td>at</td><td><span class='iconic at'></span></td><td><span class='at'></span></td><td>0040</td></tr><tr><td>chat</td><td><span class='iconic chat'></span></td><td><span class='chat'></span></td><td>e05e</td></tr><tr><td>move_vertical_alt2</td><td><span class='iconic move_vertical_alt2'></span></td><td><span class='move_vertical_alt2'></span></td><td>e03d</td></tr><tr><td>move_vertical_alt1</td><td><span class='iconic move_vertical_alt1'></span></td><td><span class='move_vertical_alt1'></span></td><td>e03c</td></tr><tr><td>check</td><td><span class='iconic check'></span></td><td><span class='check'></span></td><td>2713</td></tr><tr><td>mic</td><td><span class='iconic mic'></span></td><td><span class='mic'></span></td><td>e05f</td></tr><tr><td>calendar_alt_stroke</td><td><span class='iconic calendar_alt_stroke'></span></td><td><span class='calendar_alt_stroke'></span></td><td>e06c</td></tr><tr><td>book</td><td><span class='iconic book'></span></td><td><span class='book'></span></td><td>e069</td></tr><tr><td>move_alt1</td><td><span class='iconic move_alt1'></span></td><td><span class='move_alt1'></span></td><td>e03f</td></tr><tr><td>move_alt2</td><td><span class='iconic move_alt2'></span></td><td><span class='move_alt2'></span></td><td>e040</td></tr><tr><td>award_stroke</td><td><span class='iconic award_stroke'></span></td><td><span class='award_stroke'></span></td><td>e022</td></tr><tr><td>wrench</td><td><span class='iconic wrench'></span></td><td><span class='wrench'></span></td><td>e078</td></tr><tr><td>play</td><td><span class='iconic play'></span></td><td><span class='play'></span></td><td>e047</td></tr><tr><td>star</td><td><span class='iconic star'></span></td><td><span class='star'></span></td><td>2605</td></tr><tr><td>chart</td><td><span class='iconic chart'></span></td><td><span class='chart'></span></td><td>e028</td></tr><tr><td>rain</td><td><span class='iconic rain'></span></td><td><span class='rain'></span></td><td>26c6</td></tr><tr><td>folder_stroke</td><td><span class='iconic folder_stroke'></span></td><td><span class='folder_stroke'></span></td><td>e065</td></tr><tr><td>sun_stroke</td><td><span class='iconic sun_stroke'></span></td><td><span class='sun_stroke'></span></td><td>2600</td></tr><tr><td>user</td><td><span class='iconic user'></span></td><td><span class='user'></span></td><td>e062</td></tr><tr><td>battery_half</td><td><span class='iconic battery_half'></span></td><td><span class='battery_half'></span></td><td>e05b</td></tr><tr><td>aperture_alt</td><td><span class='iconic aperture_alt'></span></td><td><span class='aperture_alt'></span></td><td>e00c</td></tr><tr><td>eject</td><td><span class='iconic eject'></span></td><td><span class='eject'></span></td><td>e04b</td></tr><tr><td>arrow_down_alt1</td><td><span class='iconic arrow_down_alt1'></span></td><td><span class='arrow_down_alt1'></span></td><td>e016</td></tr><tr><td>pilcrow</td><td><span class='iconic pilcrow'></span></td><td><span class='pilcrow'></span></td><td>00b6</td></tr><tr><td>arrow_down_alt2</td><td><span class='iconic arrow_down_alt2'></span></td><td><span class='arrow_down_alt2'></span></td><td>e01a</td></tr><tr><td>arrow_right_alt1</td><td><span class='iconic arrow_right_alt1'></span></td><td><span class='arrow_right_alt1'></span></td><td>e015</td></tr><tr><td>arrow_right_alt2</td><td><span class='iconic arrow_right_alt2'></span></td><td><span class='arrow_right_alt2'></span></td><td>e019</td></tr><tr><td>rss_alt</td><td><span class='iconic rss_alt'></span></td><td><span class='rss_alt'></span></td><td>e02d</td></tr><tr><td>spin_alt</td><td><span class='iconic spin_alt'></span></td><td><span class='spin_alt'></span></td><td>e037</td></tr></table></body></html>
|
@@ -0,0 +1,52 @@
|
|
1
|
+
!!!
|
2
|
+
%html
|
3
|
+
%head
|
4
|
+
%title Furnace Xray
|
5
|
+
|
6
|
+
%link{:href => "data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQEAYAAABPYyMiAAAABmJLR0T///////8JWPfcAAAACXBIWXMAAABIAAAASABGyWs+AAAAF0lEQVRIx2NgGAWjYBSMglEwCkbBSAcACBAAAeaR9cIAAAAASUVORK5CYII=", :rel => "icon", :type => "image/x-icon"}
|
7
|
+
|
8
|
+
= javascript_include_tag 'application'
|
9
|
+
= javascript_include_tag '/jst'
|
10
|
+
= stylesheet_link_tag 'app'
|
11
|
+
|
12
|
+
:javascript
|
13
|
+
window.data = Input.normalize(#{File.read settings.json_location})
|
14
|
+
%body
|
15
|
+
|
16
|
+
#toolbar
|
17
|
+
#tools
|
18
|
+
#functions
|
19
|
+
%select
|
20
|
+
#title
|
21
|
+
|
22
|
+
#logo
|
23
|
+
%h1 Furnace X-Ray
|
24
|
+
%h2 version: #{Furnace::Xray::VERSION}
|
25
|
+
%img.evil_martians-logo{:src => '/assets/evil_martians_logo.svg'}
|
26
|
+
|
27
|
+
%br{:style => 'clear:both'}
|
28
|
+
|
29
|
+
%table#container
|
30
|
+
%tr
|
31
|
+
%td#timeline
|
32
|
+
%div.stretch
|
33
|
+
#zoom
|
34
|
+
%button
|
35
|
+
%button.fnext
|
36
|
+
↑ ↑
|
37
|
+
%button.next
|
38
|
+
↑
|
39
|
+
%input{:type => 'text', :size => 3, :value => 0}
|
40
|
+
%span#diff
|
41
|
+
.slider
|
42
|
+
#transforms
|
43
|
+
%button.prev
|
44
|
+
↓
|
45
|
+
%button.fprev
|
46
|
+
↓ ↓
|
47
|
+
%td#canvas
|
48
|
+
#transform
|
49
|
+
%svg.stretch
|
50
|
+
%defs
|
51
|
+
%marker#arrowhead{:markerHeight => "5", :markerUnits => "strokeWidth", :markerWidth => "8", :orient => "auto", :refX => "8", :refY => "5", :style => "fill: #333", :viewBox => "0 0 10 10"}
|
52
|
+
%path{:d => "M 0 0 L 10 5 L 0 10 z"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{{{type}}} <span class='naming link'>%{{name}}</span>
|
@@ -0,0 +1 @@
|
|
1
|
+
<div class="line diff-added">{{{line}}}</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
<div class="line diff-removed">{{{line}}}</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
<div class="line">{{{line}}}</div>
|
@@ -0,0 +1 @@
|
|
1
|
+
{{{type}}} <b>{{name}}</b>({{{arguments}}})
|
@@ -0,0 +1 @@
|
|
1
|
+
{{{type}}} <b>{{name}}</b>({{{arguments}}}) <sup style="color: red">removed</sup>
|
@@ -0,0 +1 @@
|
|
1
|
+
<span class='naming link'>%{{name}}</span>
|
@@ -0,0 +1 @@
|
|
1
|
+
<a href="javascript:app.jumpToBlock('{{name}}')">label <span class="naming">%{{name}}</span></a>
|
@@ -0,0 +1 @@
|
|
1
|
+
{{{type}}} {{value}}
|
@@ -0,0 +1 @@
|
|
1
|
+
<a href="javascript:app.jumpTo('{{parsedValue}}')">{{{type}}} {{value}}</a>
|
@@ -0,0 +1 @@
|
|
1
|
+
<span class='naming link'>%{{name}}</span>
|
@@ -0,0 +1 @@
|
|
1
|
+
<i class='type'>{{type}}</i>
|
@@ -0,0 +1,226 @@
|
|
1
|
+
# ## Sinatra::JstPages [module]
|
2
|
+
# A Sinatra plugin that adds support for JST (JavaScript Server Templates).
|
3
|
+
# See [JstPages example][jstx] for a full example application.
|
4
|
+
#
|
5
|
+
# #### Basic usage
|
6
|
+
# Register the `Sinatra::JstPages` plugin in your application, and use
|
7
|
+
# `serve_jst`. This example serves all JST files found in `/views/**/*.jst.*`
|
8
|
+
# (where `/views` is your views directory as defined in Sinatra's
|
9
|
+
# `settings.views`) as `http://localhost:4567/jst.js`.
|
10
|
+
#
|
11
|
+
# require 'sinatra/jstpages'
|
12
|
+
#
|
13
|
+
# class App < Sinatra::Base
|
14
|
+
# register Sinatra::JstPages
|
15
|
+
# serve_jst '/jst.js'
|
16
|
+
# end
|
17
|
+
#
|
18
|
+
# You will need to link to the JST route in your layout. Make a `<script>` tag
|
19
|
+
# where the `src='...'` attribute is the same path you provide to `serve_jst`.
|
20
|
+
#
|
21
|
+
# <script type='text/javascript' src='/jst.js'></script>
|
22
|
+
#
|
23
|
+
# So, if you have a JST view placed in `views/editor/edit.jst.tpl`:
|
24
|
+
#
|
25
|
+
# # views/editor/edit.jst.tpl
|
26
|
+
# <h1>Edit <%= name %></h1>
|
27
|
+
# <form>
|
28
|
+
# <button>Save</button>
|
29
|
+
# </form>
|
30
|
+
#
|
31
|
+
# Now in your browser you may invoke `JST['templatename']`:
|
32
|
+
#
|
33
|
+
# // Renders the editor/edit template
|
34
|
+
# JST['editor/edit']();
|
35
|
+
#
|
36
|
+
# // Renders the editor/edit template with template parameters
|
37
|
+
# JST['editor/edit']({name: 'Item Name'});
|
38
|
+
#
|
39
|
+
# #### Using Sinatra-AssetPack?
|
40
|
+
#
|
41
|
+
# __TIP:__ If you're using the [sinatra-assetpack][sap] gem, just add `/jst.js`
|
42
|
+
# to a package. (If you're not using Sinatra AssetPack yet, you probably
|
43
|
+
# should.)
|
44
|
+
#
|
45
|
+
# [sap]: http://ricostacruz.com/sinatra-assetpack
|
46
|
+
#
|
47
|
+
# #### Supported templates
|
48
|
+
#
|
49
|
+
# __[Jade][jade]__ (`.jst.jade`) -- Jade templates. This requires
|
50
|
+
# [jade.js][jade]. For older browsers, you will also need [json2.js][json2],
|
51
|
+
# and an implementation of [String.prototype.trim][trim].
|
52
|
+
#
|
53
|
+
# # views/editor/edit.jst.jade
|
54
|
+
# h1= "Edit "+name
|
55
|
+
# form
|
56
|
+
# button Save
|
57
|
+
#
|
58
|
+
# __[Underscore templates][under_tpl]__ (`.jst.tpl`) -- Simple templates by
|
59
|
+
# underscore. This requires [underscore.js][under], which Backbone also
|
60
|
+
# requires.
|
61
|
+
#
|
62
|
+
# # views/editor/edit.jst.tpl
|
63
|
+
# <h1>Edit <%= name %></h1>
|
64
|
+
# <form>
|
65
|
+
# <button>Save</button>
|
66
|
+
# </form>
|
67
|
+
#
|
68
|
+
# __[Haml.js][haml]__ (`.jst.haml`) -- A JavaScript implementation of Haml.
|
69
|
+
# Requires [haml.js][haml].
|
70
|
+
#
|
71
|
+
# # views/editor/edit.jst.haml
|
72
|
+
# %h1= "Edit "+name
|
73
|
+
# %form
|
74
|
+
# %button Save
|
75
|
+
#
|
76
|
+
# __[Eco][eco]__ (`.jst.eco`) -- Embedded CoffeeScript templates. Requires
|
77
|
+
# [eco.js][eco] and [coffee-script.js][cs].
|
78
|
+
#
|
79
|
+
# # views/editor/edit.jst.eco
|
80
|
+
# <h1>Edit <%= name %></h1>
|
81
|
+
# <form>
|
82
|
+
# <button>Save</button>
|
83
|
+
# </form>
|
84
|
+
#
|
85
|
+
# You can add support for more templates by subclassing the `Engine` class.
|
86
|
+
#
|
87
|
+
# [jade]: http://github.com/visionmedia/jade
|
88
|
+
# [json2]: https://github.com/douglascrockford/JSON-js
|
89
|
+
# [trim]: http://snippets.dzone.com/posts/show/701
|
90
|
+
# [under_tpl]: http://documentcloud.github.com/underscore/#template
|
91
|
+
# [under]: http://documentcloud.github.com/underscore
|
92
|
+
# [haml]: https://github.com/creationix/haml-js
|
93
|
+
# [eco]: https://github.com/sstephenson/eco
|
94
|
+
# [cs]: http://coffeescript.org
|
95
|
+
# [jstx]: https://github.com/rstacruz/sinatra-backbone/tree/master/examples/jstpages
|
96
|
+
#
|
97
|
+
module Sinatra
|
98
|
+
module JstPages
|
99
|
+
def self.registered(app)
|
100
|
+
app.extend ClassMethods
|
101
|
+
app.helpers Helpers
|
102
|
+
end
|
103
|
+
|
104
|
+
# Returns a hash to determine which engine is mapped onto a given extension.
|
105
|
+
def self.mappings
|
106
|
+
@mappings ||= Hash.new
|
107
|
+
end
|
108
|
+
|
109
|
+
def self.register(ext, engine)
|
110
|
+
mappings[ext] = engine
|
111
|
+
end
|
112
|
+
|
113
|
+
module Helpers
|
114
|
+
# Returns a list of JST files.
|
115
|
+
def jst_files
|
116
|
+
# Tuples of [ name, Engine instance ]
|
117
|
+
tuples = Dir.chdir(settings.views) {
|
118
|
+
Dir["**/*.jst.*"].map { |fn|
|
119
|
+
fn =~ %r{^(.*)\.jst\.([^\.]+)$}
|
120
|
+
name, ext = $1, $2
|
121
|
+
engine = JstPages.mappings[ext]
|
122
|
+
|
123
|
+
[ name, engine.new(File.join(settings.views, fn)) ] if engine
|
124
|
+
}.compact
|
125
|
+
}
|
126
|
+
|
127
|
+
Hash[*tuples.flatten]
|
128
|
+
end
|
129
|
+
end
|
130
|
+
|
131
|
+
module ClassMethods
|
132
|
+
# ### serve_jst(path, [options]) [class method]
|
133
|
+
# Serves JST files in given `path`.
|
134
|
+
#
|
135
|
+
def serve_jst(path, options={})
|
136
|
+
get path do
|
137
|
+
content_type :js
|
138
|
+
jsts = jst_files.map { |(name, engine)|
|
139
|
+
%{
|
140
|
+
JST[#{name.inspect}] = (#{engine.function});
|
141
|
+
}.strip.gsub(/^ {12}/, '')
|
142
|
+
}
|
143
|
+
|
144
|
+
%{
|
145
|
+
(function(){
|
146
|
+
var c = {};
|
147
|
+
if (!window.JST) window.JST = {};
|
148
|
+
#{jsts.join("\n ")}
|
149
|
+
})();
|
150
|
+
}.strip.gsub(/^ {12}/, '')
|
151
|
+
end
|
152
|
+
end
|
153
|
+
end
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
|
158
|
+
# ## Sinatra::JstPages::Engine [class]
|
159
|
+
# A template engine.
|
160
|
+
#
|
161
|
+
# #### Adding support for new template engines
|
162
|
+
# You will need to subclass `Engine`, override at least the `function` method,
|
163
|
+
# then use `JstPages.register`.
|
164
|
+
#
|
165
|
+
# This example will register `.jst.my` files to a new engine that uses
|
166
|
+
# `My.compile`.
|
167
|
+
#
|
168
|
+
# module Sinatra::JstPages
|
169
|
+
# class MyEngine < Engine
|
170
|
+
# def function() "My.compile(#{contents.inspect})"; end
|
171
|
+
# end
|
172
|
+
#
|
173
|
+
# register 'my', MyEngine
|
174
|
+
# end
|
175
|
+
#
|
176
|
+
module Sinatra::JstPages
|
177
|
+
class Engine
|
178
|
+
# ### file [attribute]
|
179
|
+
# The string path of the template file.
|
180
|
+
attr_reader :file
|
181
|
+
def initialize(file)
|
182
|
+
@file = file
|
183
|
+
end
|
184
|
+
|
185
|
+
# ### contents [method]
|
186
|
+
# Returns the contents of the template file as a string.
|
187
|
+
def contents
|
188
|
+
File.read(@file)
|
189
|
+
end
|
190
|
+
|
191
|
+
# ### function [method]
|
192
|
+
# The JavaScript function to invoke on the precompile'd object.
|
193
|
+
#
|
194
|
+
# What this returns should, in JavaScript, return a function that can be
|
195
|
+
# called with an object hash of the params to be passed onto the template.
|
196
|
+
def function
|
197
|
+
"_.template(#{contents.inspect})"
|
198
|
+
end
|
199
|
+
end
|
200
|
+
|
201
|
+
class HamlEngine < Engine
|
202
|
+
def function() "Haml(#{contents.inspect})"; end
|
203
|
+
end
|
204
|
+
|
205
|
+
class JadeEngine < Engine
|
206
|
+
def function() "require('jade').compile(#{contents.inspect})"; end
|
207
|
+
end
|
208
|
+
|
209
|
+
class EcoEngine < Engine
|
210
|
+
def function
|
211
|
+
"function() { var a = arguments.slice(); a.unshift(#{contents.inspect}); return eco.compile.apply(eco, a); }"
|
212
|
+
end
|
213
|
+
end
|
214
|
+
|
215
|
+
class MustacheEngine < Engine
|
216
|
+
def function
|
217
|
+
"Mustache.compile(#{contents.inspect})"
|
218
|
+
end
|
219
|
+
end
|
220
|
+
|
221
|
+
register 'tpl', Engine
|
222
|
+
register 'jade', JadeEngine
|
223
|
+
register 'haml', HamlEngine
|
224
|
+
register 'eco', EcoEngine
|
225
|
+
register 'mustache', MustacheEngine
|
226
|
+
end
|
data/sample.json
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
[{"name":"main","events":[{"event":"set_arguments","arguments":[]},{"event":"type","id":0,"kind":"void"},{"event":"set_return_type","return_type":0},{"event":"set_arguments","arguments":[]},{"event":"add_basic_block","name":"1"},{"event":"type","id":1,"kind":"monotype","name":"^Object"},{"event":"type","id":2,"kind":"monotype","name":"^Symbol"},{"event":"type","id":3,"kind":"monotype","name":"function"},{"event":"update_instruction","name":"2","opcode":"resolve_method","parameters":"","operands":[{"kind":"constant","type":1,"value":"{Object:12071180}"},{"kind":"constant","type":2,"value":"{:main}"}],"type":3},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":4,"kind":"monotype","name":"tuple<>"},{"event":"type","id":5,"kind":"monotype","name":"^NilClass"},{"event":"update_instruction","name":"3","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"2"},{"kind":"constant","type":1,"value":"{Object:12071180}"},{"kind":"constant","type":4,"value":"{Tuple []}"},{"kind":"constant","type":5,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"3","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"2"},{"kind":"constant","type":1,"value":"{Object:12071180}"},{"kind":"constant","type":4,"value":"{Tuple []}"},{"kind":"constant","type":5,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"type","id":6,"kind":"void"},{"event":"update_instruction","name":"4","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"3"}],"type":6},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"transform_start","name":"ResolveMethods"},{"event":"update_instruction","name":"3","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":3,"value":"\"Object:main\""},{"kind":"constant","type":1,"value":"{Object:12071180}"},{"kind":"constant","type":4,"value":"{Tuple []}"},{"kind":"constant","type":5,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"2"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"update_instruction","name":"3","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":3,"value":"\"Object:main;1\""},{"kind":"constant","type":1,"value":"{Object:12071180}"},{"kind":"constant","type":4,"value":"{Tuple []}"},{"kind":"constant","type":5,"value":"{nil}"}],"type":0},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"update_instruction","name":"3","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":3,"value":"\"Object:main;1\""},{"kind":"constant","type":1,"value":"{Object:12071180}"},{"kind":"constant","type":4,"value":"{Tuple []}"},{"kind":"constant","type":5,"value":"{nil}"}],"type":5},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":5},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":true},{"name":"Object:main","events":[{"event":"set_arguments","arguments":[]},{"event":"type","id":0,"kind":"void"},{"event":"set_return_type","return_type":0},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Object, &block: ^NilClass, Defn: ^Singleton<{class Object}>, Cref: tuple<^Singleton<{class Object}>>>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, i: <?>, j: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :i, :j chain","operands":[{"kind":"constant","type":3,"value":"{Binding:19444380}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"0..0 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"type","id":6,"kind":"monotype","name":"^Integer"},{"event":"update_instruction","name":"6","opcode":"lvar_store","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"constant","type":6,"value":"{0}"}],"type":5},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"constant","type":6,"value":"{10}"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"add_basic_block","name":"8"},{"event":"update_instruction","name":"9","opcode":"branch","parameters":"","operands":[{"kind":"basic_block","name":"8"}],"type":5},{"event":"add_instruction","name":"9","basic_block":"1","index":6},{"event":"update_instruction","name":"i","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"i","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"i","basic_block":"8","index":0},{"event":"type","id":7,"kind":"monotype","name":"^Symbol"},{"event":"type","id":8,"kind":"monotype","name":"function"},{"event":"update_instruction","name":"10","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"i"},{"kind":"constant","type":7,"value":"{:<}"}],"type":8},{"event":"add_instruction","name":"10","basic_block":"8","index":1},{"event":"type","id":9,"kind":"monotype","name":"tuple<^Integer>"},{"event":"type","id":10,"kind":"monotype","name":"^NilClass"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"10"},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"10"},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"11","basic_block":"8","index":2},{"event":"add_basic_block","name":"12"},{"event":"add_basic_block","name":"13"},{"event":"update_instruction","name":"self.14","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"self.14","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.14","basic_block":"13","index":0},{"event":"update_instruction","name":"i.15","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"i.15","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"i.15","basic_block":"13","index":1},{"event":"type","id":11,"kind":"monotype","name":"tuple<<?>>"},{"event":"update_instruction","name":"16","opcode":"tuple","parameters":"","operands":[{"kind":"instruction","name":"i.15"}],"type":11},{"event":"add_instruction","name":"16","basic_block":"13","index":2},{"event":"update_instruction","name":"17","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"self.14"},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"add_instruction","name":"17","basic_block":"13","index":3},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"17"},{"kind":"instruction","name":"self.14"},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"17"},{"kind":"instruction","name":"self.14"},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"18","basic_block":"13","index":4},{"event":"update_instruction","name":"self.19","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"self.19","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.19","basic_block":"13","index":5},{"event":"update_instruction","name":"j","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"j","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"j","basic_block":"13","index":6},{"event":"update_instruction","name":"20","opcode":"tuple","parameters":"","operands":[{"kind":"instruction","name":"j"}],"type":11},{"event":"add_instruction","name":"20","basic_block":"13","index":7},{"event":"update_instruction","name":"21","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"self.19"},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"add_instruction","name":"21","basic_block":"13","index":8},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"21"},{"kind":"instruction","name":"self.19"},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"21"},{"kind":"instruction","name":"self.19"},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"22","basic_block":"13","index":9},{"event":"update_instruction","name":"j.23","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"j.23","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"j.23","basic_block":"13","index":10},{"event":"update_instruction","name":"24","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"j.23"},{"kind":"constant","type":7,"value":"{:+}"}],"type":8},{"event":"add_instruction","name":"24","basic_block":"13","index":11},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"24"},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"24"},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"25","basic_block":"13","index":12},{"event":"update_instruction","name":"26","opcode":"lvar_store","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"25"}],"type":5},{"event":"add_instruction","name":"26","basic_block":"13","index":13},{"event":"update_instruction","name":"i.27","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"i.27","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"i.27","basic_block":"13","index":14},{"event":"update_instruction","name":"j.28","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"j.28","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"j.28","basic_block":"13","index":15},{"event":"update_instruction","name":"29","opcode":"tuple","parameters":"","operands":[{"kind":"instruction","name":"j.28"}],"type":11},{"event":"add_instruction","name":"29","basic_block":"13","index":16},{"event":"update_instruction","name":"30","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"i.27"},{"kind":"constant","type":7,"value":"{:+}"}],"type":8},{"event":"add_instruction","name":"30","basic_block":"13","index":17},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"30"},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"30"},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"31","basic_block":"13","index":18},{"event":"update_instruction","name":"32","opcode":"lvar_store","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"31"}],"type":5},{"event":"add_instruction","name":"32","basic_block":"13","index":19},{"event":"update_instruction","name":"33","opcode":"branch","parameters":"","operands":[{"kind":"basic_block","name":"8"}],"type":5},{"event":"add_instruction","name":"33","basic_block":"13","index":20},{"event":"update_instruction","name":"34","opcode":"branch_if","parameters":"","operands":[{"kind":"instruction","name":"11"},{"kind":"basic_block","name":"13"},{"kind":"basic_block","name":"12"}],"type":5},{"event":"add_instruction","name":"34","basic_block":"8","index":3},{"event":"update_instruction","name":"35","opcode":"phi","parameters":"","operands":{"13":{"kind":"constant","type":10,"value":"{nil}"},"8":{"kind":"constant","type":10,"value":"{nil}"}},"type":0},{"event":"update_instruction","name":"35","opcode":"phi","parameters":"","operands":{"13":{"kind":"constant","type":10,"value":"{nil}"},"8":{"kind":"constant","type":10,"value":"{nil}"}},"type":0},{"event":"add_instruction","name":"35","basic_block":"12","index":0},{"event":"update_instruction","name":"36","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"35"}],"type":5},{"event":"add_instruction","name":"36","basic_block":"12","index":1},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"update_instruction","name":"35","opcode":"phi","parameters":"","operands":{"13":{"kind":"constant","type":10,"value":"{nil}"},"8":{"kind":"constant","type":10,"value":"{nil}"}},"type":10},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":10},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"update_instruction","name":"17","opcode":"resolve_method","parameters":"","operands":[{"kind":"argument","name":"self","type":0},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"17"},{"kind":"argument","name":"self","type":0},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"self.14"},{"event":"update_instruction","name":"21","opcode":"resolve_method","parameters":"","operands":[{"kind":"argument","name":"self","type":0},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"21"},{"kind":"argument","name":"self","type":0},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"self.19"},{"event":"remove_instruction","name":"4"},{"event":"type","id":12,"kind":"monotype","name":"binding<i: ^Integer, j: ^Integer, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":i, :j chain","operands":[{"kind":"constant","type":5,"value":"nil"}],"type":12},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"update_instruction","name":"36","opcode":"return","parameters":"","operands":[{"kind":"constant","type":10,"value":"{nil}"}],"type":5},{"event":"remove_instruction","name":"35"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:<\""},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"10"},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+\""},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"24"},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+\""},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"30"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:<;2\""},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"type","id":13,"kind":"monotype","name":"^Object"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:<;2\""},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":13},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":6},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":6},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":false},{"name":"Object:main;1","events":[{"event":"type","id":0,"kind":"void"},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"add_basic_block","name":"8"},{"event":"add_basic_block","name":"12"},{"event":"add_basic_block","name":"13"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Object, &block: ^NilClass, Defn: ^Singleton<{class Object}>, Cref: tuple<^Singleton<{class Object}>>>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, i: <?>, j: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :i, :j chain","operands":[{"kind":"constant","type":3,"value":"{Binding:19444380}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"0..0 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"type","id":6,"kind":"monotype","name":"^Integer"},{"event":"update_instruction","name":"6","opcode":"lvar_store","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"constant","type":6,"value":"{0}"}],"type":5},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"constant","type":6,"value":"{10}"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"update_instruction","name":"9","opcode":"branch","parameters":"","operands":[{"kind":"basic_block","name":"8"}],"type":5},{"event":"add_instruction","name":"9","basic_block":"1","index":6},{"event":"update_instruction","name":"i","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"i","basic_block":"8","index":0},{"event":"type","id":7,"kind":"monotype","name":"^Symbol"},{"event":"type","id":8,"kind":"monotype","name":"function"},{"event":"update_instruction","name":"10","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"i"},{"kind":"constant","type":7,"value":"{:<}"}],"type":8},{"event":"add_instruction","name":"10","basic_block":"8","index":1},{"event":"type","id":9,"kind":"monotype","name":"tuple<^Integer>"},{"event":"type","id":10,"kind":"monotype","name":"^NilClass"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"10"},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"11","basic_block":"8","index":2},{"event":"update_instruction","name":"34","opcode":"branch_if","parameters":"","operands":[{"kind":"instruction","name":"11"},{"kind":"basic_block","name":"13"},{"kind":"basic_block","name":"12"}],"type":5},{"event":"add_instruction","name":"34","basic_block":"8","index":3},{"event":"update_instruction","name":"35","opcode":"phi","parameters":"","operands":{"13":{"kind":"constant","type":10,"value":"{nil}"},"8":{"kind":"constant","type":10,"value":"{nil}"}},"type":0},{"event":"add_instruction","name":"35","basic_block":"12","index":0},{"event":"update_instruction","name":"36","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"35"}],"type":5},{"event":"add_instruction","name":"36","basic_block":"12","index":1},{"event":"update_instruction","name":"self.14","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.14","basic_block":"13","index":0},{"event":"update_instruction","name":"i.15","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"i.15","basic_block":"13","index":1},{"event":"type","id":11,"kind":"monotype","name":"tuple<<?>>"},{"event":"update_instruction","name":"16","opcode":"tuple","parameters":"","operands":[{"kind":"instruction","name":"i.15"}],"type":11},{"event":"add_instruction","name":"16","basic_block":"13","index":2},{"event":"update_instruction","name":"17","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"self.14"},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"add_instruction","name":"17","basic_block":"13","index":3},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"17"},{"kind":"instruction","name":"self.14"},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"18","basic_block":"13","index":4},{"event":"update_instruction","name":"self.19","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.19","basic_block":"13","index":5},{"event":"update_instruction","name":"j","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"j","basic_block":"13","index":6},{"event":"update_instruction","name":"20","opcode":"tuple","parameters":"","operands":[{"kind":"instruction","name":"j"}],"type":11},{"event":"add_instruction","name":"20","basic_block":"13","index":7},{"event":"update_instruction","name":"21","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"self.19"},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"add_instruction","name":"21","basic_block":"13","index":8},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"21"},{"kind":"instruction","name":"self.19"},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"22","basic_block":"13","index":9},{"event":"update_instruction","name":"j.23","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"j.23","basic_block":"13","index":10},{"event":"update_instruction","name":"24","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"j.23"},{"kind":"constant","type":7,"value":"{:+}"}],"type":8},{"event":"add_instruction","name":"24","basic_block":"13","index":11},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"24"},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"25","basic_block":"13","index":12},{"event":"update_instruction","name":"26","opcode":"lvar_store","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"25"}],"type":5},{"event":"add_instruction","name":"26","basic_block":"13","index":13},{"event":"update_instruction","name":"i.27","opcode":"lvar_load","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"i.27","basic_block":"13","index":14},{"event":"update_instruction","name":"j.28","opcode":"lvar_load","parameters":":j at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"j.28","basic_block":"13","index":15},{"event":"update_instruction","name":"29","opcode":"tuple","parameters":"","operands":[{"kind":"instruction","name":"j.28"}],"type":11},{"event":"add_instruction","name":"29","basic_block":"13","index":16},{"event":"update_instruction","name":"30","opcode":"resolve_method","parameters":"","operands":[{"kind":"instruction","name":"i.27"},{"kind":"constant","type":7,"value":"{:+}"}],"type":8},{"event":"add_instruction","name":"30","basic_block":"13","index":17},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"30"},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"add_instruction","name":"31","basic_block":"13","index":18},{"event":"update_instruction","name":"32","opcode":"lvar_store","parameters":":i at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"31"}],"type":5},{"event":"add_instruction","name":"32","basic_block":"13","index":19},{"event":"update_instruction","name":"33","opcode":"branch","parameters":"","operands":[{"kind":"basic_block","name":"8"}],"type":5},{"event":"add_instruction","name":"33","basic_block":"13","index":20},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"update_instruction","name":"36","opcode":"return","parameters":"","operands":[{"kind":"constant","type":10,"value":"{nil}"}],"type":5},{"event":"remove_instruction","name":"35"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"remove_instruction","name":"5"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":10},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"type","id":12,"kind":"monotype","name":"^Object"},{"event":"update_instruction","name":"17","opcode":"resolve_method","parameters":"","operands":[{"kind":"argument","name":"self","type":12},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"17"},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"self.14"},{"event":"update_instruction","name":"21","opcode":"resolve_method","parameters":"","operands":[{"kind":"argument","name":"self","type":12},{"kind":"constant","type":7,"value":"{:trace}"}],"type":8},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"instruction","name":"21"},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"self.19"},{"event":"remove_instruction","name":"4"},{"event":"type","id":13,"kind":"monotype","name":"binding<i: <?>, j: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":i, :j chain","operands":[{"kind":"constant","type":5,"value":"nil"}],"type":13},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:<\""},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"10"},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Kernel:trace\""},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"17"},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Kernel:trace\""},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"21"},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+\""},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"24"},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+\""},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"remove_instruction","name":"30"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:<;2\""},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Kernel:trace;4\""},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Kernel:trace;4\""},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":0},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"update_instruction","name":"11","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:<;2\""},{"kind":"instruction","name":"i"},{"kind":"constant","type":9,"value":"{Tuple [{5}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":12},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"update_instruction","name":"25","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"j.23"},{"kind":"constant","type":9,"value":"{Tuple [{1}]}"},{"kind":"constant","type":10,"value":"{nil}"}],"type":6},{"event":"update_instruction","name":"31","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Integer:+;3\""},{"kind":"instruction","name":"i.27"},{"kind":"instruction","name":"29"},{"kind":"constant","type":10,"value":"{nil}"}],"type":6},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"update_instruction","name":"18","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Kernel:trace;4\""},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"16"},{"kind":"constant","type":10,"value":"{nil}"}],"type":5},{"event":"update_instruction","name":"22","opcode":"invoke","parameters":"","operands":[{"kind":"constant","type":8,"value":"\"Kernel:trace;4\""},{"kind":"argument","name":"self","type":12},{"kind":"instruction","name":"20"},{"kind":"constant","type":10,"value":"{nil}"}],"type":5},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":true},{"name":"Integer:<","events":[{"event":"set_arguments","arguments":[]},{"event":"type","id":0,"kind":"void"},{"event":"set_return_type","return_type":0},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Singleton<{class Integer}>, &block: ^NilClass, Defn: ^Singleton<{class Integer}>, Cref: tuple<^Singleton<{class Object}>, ^Singleton<{class Integer}>>, ...>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, other: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :other chain","operands":[{"kind":"constant","type":3,"value":"{Binding:18541560}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"1..1 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"update_instruction","name":"6","opcode":"tuple_ref","parameters":"0,","operands":[{"kind":"argument","name":"args","type":1}],"type":0},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"6"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"update_instruction","name":"self.8","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"self.8","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.8","basic_block":"1","index":6},{"event":"update_instruction","name":"other","opcode":"lvar_load","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"other","opcode":"lvar_load","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"other","basic_block":"1","index":7},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"","operands":[{"kind":"instruction","name":"self.8"},{"kind":"instruction","name":"other"}],"type":0},{"event":"add_instruction","name":"9","basic_block":"1","index":8},{"event":"update_instruction","name":"10","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"9"}],"type":5},{"event":"add_instruction","name":"10","basic_block":"1","index":9},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"type","id":6,"kind":"monotype","name":"^Object"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"<","operands":[{"kind":"argument","name":"self","type":0},{"kind":"instruction","name":"other"}],"type":6},{"event":"remove_instruction","name":"self.8"},{"event":"remove_instruction","name":"4"},{"event":"remove_instruction","name":"7"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"<","operands":[{"kind":"argument","name":"self","type":0},{"kind":"instruction","name":"6"}],"type":6},{"event":"remove_instruction","name":"other"},{"event":"remove_instruction","name":"2"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":6},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":false},{"name":"Integer:+","events":[{"event":"set_arguments","arguments":[]},{"event":"type","id":0,"kind":"void"},{"event":"set_return_type","return_type":0},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Singleton<{class Integer}>, &block: ^NilClass, Defn: ^Singleton<{class Integer}>, Cref: tuple<^Singleton<{class Object}>, ^Singleton<{class Integer}>>, ...>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, other: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :other chain","operands":[{"kind":"constant","type":3,"value":"{Binding:18541560}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"1..1 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"update_instruction","name":"6","opcode":"tuple_ref","parameters":"0,","operands":[{"kind":"argument","name":"args","type":1}],"type":0},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"6"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"update_instruction","name":"self.8","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"self.8","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.8","basic_block":"1","index":6},{"event":"update_instruction","name":"other","opcode":"lvar_load","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"other","opcode":"lvar_load","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"other","basic_block":"1","index":7},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"","operands":[{"kind":"instruction","name":"self.8"},{"kind":"instruction","name":"other"}],"type":0},{"event":"add_instruction","name":"9","basic_block":"1","index":8},{"event":"update_instruction","name":"10","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"9"}],"type":5},{"event":"add_instruction","name":"10","basic_block":"1","index":9},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"type","id":6,"kind":"monotype","name":"^Integer"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"+","operands":[{"kind":"argument","name":"self","type":0},{"kind":"instruction","name":"other"}],"type":6},{"event":"remove_instruction","name":"self.8"},{"event":"remove_instruction","name":"4"},{"event":"remove_instruction","name":"7"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"+","operands":[{"kind":"argument","name":"self","type":0},{"kind":"instruction","name":"6"}],"type":6},{"event":"remove_instruction","name":"other"},{"event":"remove_instruction","name":"2"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":6},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":false},{"name":"Integer:<;2","events":[{"event":"type","id":0,"kind":"void"},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Singleton<{class Integer}>, &block: ^NilClass, Defn: ^Singleton<{class Integer}>, Cref: tuple<^Singleton<{class Object}>, ^Singleton<{class Integer}>>, ...>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, other: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :other chain","operands":[{"kind":"constant","type":3,"value":"{Binding:18541560}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"1..1 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"update_instruction","name":"6","opcode":"tuple_ref","parameters":"0,","operands":[{"kind":"argument","name":"args","type":1}],"type":0},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"6"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"update_instruction","name":"self.8","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.8","basic_block":"1","index":6},{"event":"update_instruction","name":"other","opcode":"lvar_load","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"other","basic_block":"1","index":7},{"event":"type","id":6,"kind":"monotype","name":"^Object"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"<","operands":[{"kind":"instruction","name":"self.8"},{"kind":"instruction","name":"other"}],"type":6},{"event":"add_instruction","name":"9","basic_block":"1","index":8},{"event":"update_instruction","name":"10","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"9"}],"type":5},{"event":"add_instruction","name":"10","basic_block":"1","index":9},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"remove_instruction","name":"5"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"type","id":7,"kind":"monotype","name":"^Integer"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"<","operands":[{"kind":"argument","name":"self","type":7},{"kind":"instruction","name":"other"}],"type":6},{"event":"remove_instruction","name":"self.8"},{"event":"remove_instruction","name":"4"},{"event":"remove_instruction","name":"7"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"<","operands":[{"kind":"argument","name":"self","type":7},{"kind":"instruction","name":"6"}],"type":6},{"event":"remove_instruction","name":"other"},{"event":"remove_instruction","name":"2"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":6},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":true},{"name":"Integer:+;3","events":[{"event":"type","id":0,"kind":"void"},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Singleton<{class Integer}>, &block: ^NilClass, Defn: ^Singleton<{class Integer}>, Cref: tuple<^Singleton<{class Object}>, ^Singleton<{class Integer}>>, ...>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, other: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :other chain","operands":[{"kind":"constant","type":3,"value":"{Binding:18541560}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"1..1 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"update_instruction","name":"6","opcode":"tuple_ref","parameters":"0,","operands":[{"kind":"argument","name":"args","type":1}],"type":0},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"6"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"update_instruction","name":"self.8","opcode":"lvar_load","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"self.8","basic_block":"1","index":6},{"event":"update_instruction","name":"other","opcode":"lvar_load","parameters":":other at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"other","basic_block":"1","index":7},{"event":"type","id":6,"kind":"monotype","name":"^Integer"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"+","operands":[{"kind":"instruction","name":"self.8"},{"kind":"instruction","name":"other"}],"type":6},{"event":"add_instruction","name":"9","basic_block":"1","index":8},{"event":"update_instruction","name":"10","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"9"}],"type":5},{"event":"add_instruction","name":"10","basic_block":"1","index":9},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"remove_instruction","name":"5"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"+","operands":[{"kind":"argument","name":"self","type":6},{"kind":"instruction","name":"other"}],"type":6},{"event":"remove_instruction","name":"self.8"},{"event":"remove_instruction","name":"4"},{"event":"remove_instruction","name":"7"},{"event":"update_instruction","name":"9","opcode":"integer_op","parameters":"+","operands":[{"kind":"argument","name":"self","type":6},{"kind":"instruction","name":"6"}],"type":6},{"event":"remove_instruction","name":"other"},{"event":"remove_instruction","name":"2"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":6},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":true},{"name":"Kernel:trace","events":[{"event":"set_arguments","arguments":[]},{"event":"type","id":0,"kind":"void"},{"event":"set_return_type","return_type":0},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Module, &block: ^NilClass, Defn: ^Module, Cref: tuple<^Singleton<{class Object}>, ^Module>, ...>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, obj: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :obj chain","operands":[{"kind":"constant","type":3,"value":"{Binding:21002680}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"1..1 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"update_instruction","name":"6","opcode":"tuple_ref","parameters":"0,","operands":[{"kind":"argument","name":"args","type":1}],"type":0},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":obj at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"6"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"update_instruction","name":"obj","opcode":"lvar_load","parameters":":obj at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"update_instruction","name":"obj","opcode":"lvar_load","parameters":":obj at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"obj","basic_block":"1","index":6},{"event":"update_instruction","name":"8","opcode":"trace","parameters":"","operands":[{"kind":"instruction","name":"obj"}],"type":5},{"event":"add_instruction","name":"8","basic_block":"1","index":7},{"event":"update_instruction","name":"9","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"8"}],"type":5},{"event":"add_instruction","name":"9","basic_block":"1","index":8},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"remove_instruction","name":"4"},{"event":"remove_instruction","name":"7"},{"event":"update_instruction","name":"8","opcode":"trace","parameters":"","operands":[{"kind":"instruction","name":"6"}],"type":5},{"event":"remove_instruction","name":"obj"},{"event":"remove_instruction","name":"2"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":5},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":false},{"name":"Kernel:trace;4","events":[{"event":"type","id":0,"kind":"void"},{"event":"type","id":1,"kind":"monotype","name":"tuple<?>"},{"event":"type","id":2,"kind":"monotype","name":"^Proc"},{"event":"set_arguments","arguments":[{"kind":"argument","name":"self","type":0},{"kind":"argument","name":"args","type":1},{"kind":"argument","name":"block","type":2}]},{"event":"add_basic_block","name":"1"},{"event":"type","id":3,"kind":"monotype","name":"binding<self: ^Module, &block: ^NilClass, Defn: ^Module, Cref: tuple<^Singleton<{class Object}>, ^Module>, ...>"},{"event":"type","id":4,"kind":"monotype","name":"binding<self: <?>, &block: <?>, obj: <?>, ...>"},{"event":"update_instruction","name":"2","opcode":"binding","parameters":":self, :\"&block\", :obj chain","operands":[{"kind":"constant","type":3,"value":"{Binding:21002680}"}],"type":4},{"event":"add_instruction","name":"2","basic_block":"1","index":0},{"event":"type","id":5,"kind":"void"},{"event":"update_instruction","name":"3","opcode":"lvar_store","parameters":":self at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"self","type":0}],"type":5},{"event":"add_instruction","name":"3","basic_block":"1","index":1},{"event":"update_instruction","name":"4","opcode":"lvar_store","parameters":":\"&block\" at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"argument","name":"block","type":2}],"type":5},{"event":"add_instruction","name":"4","basic_block":"1","index":2},{"event":"update_instruction","name":"5","opcode":"check_arity","parameters":"1..1 of","operands":[{"kind":"argument","name":"args","type":1}],"type":5},{"event":"add_instruction","name":"5","basic_block":"1","index":3},{"event":"update_instruction","name":"6","opcode":"tuple_ref","parameters":"0,","operands":[{"kind":"argument","name":"args","type":1}],"type":0},{"event":"add_instruction","name":"6","basic_block":"1","index":4},{"event":"update_instruction","name":"7","opcode":"lvar_store","parameters":":obj at 0 in","operands":[{"kind":"instruction","name":"2"},{"kind":"instruction","name":"6"}],"type":5},{"event":"add_instruction","name":"7","basic_block":"1","index":5},{"event":"update_instruction","name":"obj","opcode":"lvar_load","parameters":":obj at 0 in","operands":[{"kind":"instruction","name":"2"}],"type":0},{"event":"add_instruction","name":"obj","basic_block":"1","index":6},{"event":"update_instruction","name":"8","opcode":"trace","parameters":"","operands":[{"kind":"instruction","name":"obj"}],"type":5},{"event":"add_instruction","name":"8","basic_block":"1","index":7},{"event":"update_instruction","name":"9","opcode":"return","parameters":"","operands":[{"kind":"instruction","name":"8"}],"type":5},{"event":"add_instruction","name":"9","basic_block":"1","index":8},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"remove_instruction","name":"5"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"remove_instruction","name":"3"},{"event":"remove_instruction","name":"4"},{"event":"remove_instruction","name":"7"},{"event":"update_instruction","name":"8","opcode":"trace","parameters":"","operands":[{"kind":"instruction","name":"6"}],"type":5},{"event":"remove_instruction","name":"obj"},{"event":"remove_instruction","name":"2"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"set_return_type","return_type":5},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"},{"event":"transform_start","name":"ResolveMethods"},{"event":"transform_start","name":"SpecializeMethods"},{"event":"transform_start","name":"LocalTypeInference"},{"event":"transform_start","name":"ReturnTypeInference"},{"event":"transform_start","name":"BindingSimplification"},{"event":"transform_start","name":"SparseConditionalConstantPropagation"},{"event":"transform_start","name":"DeadCodeElimination"},{"event":"transform_start","name":"BasicBlockMerging"}],"present":true}]
|
metadata
ADDED
@@ -0,0 +1,251 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: furnace-xray
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 1.0.0
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Boris Staal
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-01-27 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: trollop
|
16
|
+
requirement: &70220406738380 !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: *70220406738380
|
25
|
+
- !ruby/object:Gem::Dependency
|
26
|
+
name: sprockets
|
27
|
+
requirement: &70220406737540 !ruby/object:Gem::Requirement
|
28
|
+
none: false
|
29
|
+
requirements:
|
30
|
+
- - ~>
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.0.0
|
33
|
+
type: :runtime
|
34
|
+
prerelease: false
|
35
|
+
version_requirements: *70220406737540
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: sinatra
|
38
|
+
requirement: &70220406737020 !ruby/object:Gem::Requirement
|
39
|
+
none: false
|
40
|
+
requirements:
|
41
|
+
- - ! '>='
|
42
|
+
- !ruby/object:Gem::Version
|
43
|
+
version: '0'
|
44
|
+
type: :runtime
|
45
|
+
prerelease: false
|
46
|
+
version_requirements: *70220406737020
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: sinatra-sprockets-ext
|
49
|
+
requirement: &70220406736100 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :runtime
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: *70220406736100
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: activesupport
|
60
|
+
requirement: &70220406735100 !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
type: :runtime
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *70220406735100
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: sprockets-vendor_gems
|
71
|
+
requirement: &70220406734200 !ruby/object:Gem::Requirement
|
72
|
+
none: false
|
73
|
+
requirements:
|
74
|
+
- - ! '>='
|
75
|
+
- !ruby/object:Gem::Version
|
76
|
+
version: '0'
|
77
|
+
type: :runtime
|
78
|
+
prerelease: false
|
79
|
+
version_requirements: *70220406734200
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: haml
|
82
|
+
requirement: &70220406733660 !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
type: :runtime
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *70220406733660
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: sass
|
93
|
+
requirement: &70220406733100 !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
95
|
+
requirements:
|
96
|
+
- - ! '>='
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
type: :runtime
|
100
|
+
prerelease: false
|
101
|
+
version_requirements: *70220406733100
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: sprockets-sass
|
104
|
+
requirement: &70220406731920 !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0'
|
110
|
+
type: :runtime
|
111
|
+
prerelease: false
|
112
|
+
version_requirements: *70220406731920
|
113
|
+
- !ruby/object:Gem::Dependency
|
114
|
+
name: compass
|
115
|
+
requirement: &70220406730900 !ruby/object:Gem::Requirement
|
116
|
+
none: false
|
117
|
+
requirements:
|
118
|
+
- - ! '>='
|
119
|
+
- !ruby/object:Gem::Version
|
120
|
+
version: '0'
|
121
|
+
type: :runtime
|
122
|
+
prerelease: false
|
123
|
+
version_requirements: *70220406730900
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
name: coffee-script
|
126
|
+
requirement: &70220406752600 !ruby/object:Gem::Requirement
|
127
|
+
none: false
|
128
|
+
requirements:
|
129
|
+
- - ! '>='
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: '0'
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: *70220406752600
|
135
|
+
description: A visualizer for transformations of code in Static Single Assignment
|
136
|
+
form based on the Furnace library.
|
137
|
+
email:
|
138
|
+
- staal@evl.ms
|
139
|
+
executables:
|
140
|
+
- furnace-xray
|
141
|
+
extensions: []
|
142
|
+
extra_rdoc_files: []
|
143
|
+
files:
|
144
|
+
- .gitignore
|
145
|
+
- Gemfile
|
146
|
+
- LICENSE.txt
|
147
|
+
- README.md
|
148
|
+
- Rakefile
|
149
|
+
- bin/furnace-xray
|
150
|
+
- furnace-xray.gemspec
|
151
|
+
- lib/furnace-xray.rb
|
152
|
+
- lib/furnace-xray/app/app.rb
|
153
|
+
- lib/furnace-xray/app/assets/images/chosen-sprite.png
|
154
|
+
- lib/furnace-xray/app/assets/images/evil_martians_bw_logo.svg
|
155
|
+
- lib/furnace-xray/app/assets/images/evil_martians_logo.svg
|
156
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_diagonal-maze_20_6e4f1c_10x10.png
|
157
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_diagonal-maze_40_000000_10x10.png
|
158
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_10_eceadf_60x60.png
|
159
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_10_f8f7f6_60x60.png
|
160
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_eceadf_60x60.png
|
161
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_f7f3de_60x60.png
|
162
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_ffffff_60x60.png
|
163
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_65_654b24_60x60.png
|
164
|
+
- lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_68_b83400_60x60.png
|
165
|
+
- lib/furnace-xray/app/assets/images/ui/ui-icons_222222_256x240.png
|
166
|
+
- lib/furnace-xray/app/assets/images/ui/ui-icons_3572ac_256x240.png
|
167
|
+
- lib/furnace-xray/app/assets/images/ui/ui-icons_8c291d_256x240.png
|
168
|
+
- lib/furnace-xray/app/assets/images/ui/ui-icons_b83400_256x240.png
|
169
|
+
- lib/furnace-xray/app/assets/images/ui/ui-icons_fbdb93_256x240.png
|
170
|
+
- lib/furnace-xray/app/assets/images/ui/ui-icons_ffffff_256x240.png
|
171
|
+
- lib/furnace-xray/app/assets/javascripts/application.js.coffee
|
172
|
+
- lib/furnace-xray/app/assets/javascripts/lib/drawer.js.coffee
|
173
|
+
- lib/furnace-xray/app/assets/javascripts/lib/graph.js.coffee
|
174
|
+
- lib/furnace-xray/app/assets/javascripts/lib/input.js.coffee
|
175
|
+
- lib/furnace-xray/app/assets/javascripts/lib/input_state.js.coffee
|
176
|
+
- lib/furnace-xray/app/assets/javascripts/lib/map.js.coffee
|
177
|
+
- lib/furnace-xray/app/assets/javascripts/lib/nodes/argument.js.coffee
|
178
|
+
- lib/furnace-xray/app/assets/javascripts/lib/nodes/block.js.coffee
|
179
|
+
- lib/furnace-xray/app/assets/javascripts/lib/nodes/function.js.coffee
|
180
|
+
- lib/furnace-xray/app/assets/javascripts/lib/nodes/instruction.js.coffee
|
181
|
+
- lib/furnace-xray/app/assets/javascripts/lib/nodes/operand.js.coffee
|
182
|
+
- lib/furnace-xray/app/assets/javascripts/lib/nodes/type.js.coffee
|
183
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/chosen.jquery.js
|
184
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/d3.v3.js
|
185
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/dagre.js
|
186
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/hotkeys.jquery.js
|
187
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/jquery.js
|
188
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/mustache.js
|
189
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/stacktrace-0.4.js
|
190
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/sugar-1.3.8.js
|
191
|
+
- lib/furnace-xray/app/assets/javascripts/vendor/ui.jquery.js
|
192
|
+
- lib/furnace-xray/app/assets/stylesheets/app.css.sass
|
193
|
+
- lib/furnace-xray/app/assets/stylesheets/chosen.jquery.css
|
194
|
+
- lib/furnace-xray/app/assets/stylesheets/elements.css.sass
|
195
|
+
- lib/furnace-xray/app/assets/stylesheets/graph.css.sass
|
196
|
+
- lib/furnace-xray/app/assets/stylesheets/ui.jquery.css
|
197
|
+
- lib/furnace-xray/app/public/fonts/iconic_stroke.afm
|
198
|
+
- lib/furnace-xray/app/public/fonts/iconic_stroke.eot
|
199
|
+
- lib/furnace-xray/app/public/fonts/iconic_stroke.otf
|
200
|
+
- lib/furnace-xray/app/public/fonts/iconic_stroke.svg
|
201
|
+
- lib/furnace-xray/app/public/fonts/iconic_stroke.ttf
|
202
|
+
- lib/furnace-xray/app/public/fonts/iconic_stroke.woff
|
203
|
+
- lib/furnace-xray/app/public/fonts/iconic_stroke_demo.html
|
204
|
+
- lib/furnace-xray/app/views/index.haml
|
205
|
+
- lib/furnace-xray/app/views/nodes/argument.jst.mustache
|
206
|
+
- lib/furnace-xray/app/views/nodes/block.jst.mustache
|
207
|
+
- lib/furnace-xray/app/views/nodes/diff/added_line.jst.mustache
|
208
|
+
- lib/furnace-xray/app/views/nodes/diff/changed_line.jst.mustache
|
209
|
+
- lib/furnace-xray/app/views/nodes/diff/removed_line.jst.mustache
|
210
|
+
- lib/furnace-xray/app/views/nodes/diff/unchanged_line.jst.mustache
|
211
|
+
- lib/furnace-xray/app/views/nodes/function.jst.mustache
|
212
|
+
- lib/furnace-xray/app/views/nodes/function_removed.jst.mustache
|
213
|
+
- lib/furnace-xray/app/views/nodes/instruction_typed.jst.mustache
|
214
|
+
- lib/furnace-xray/app/views/nodes/instruction_void.jst.mustache
|
215
|
+
- lib/furnace-xray/app/views/nodes/operand_argument.jst.mustache
|
216
|
+
- lib/furnace-xray/app/views/nodes/operand_basic_block.jst.mustache
|
217
|
+
- lib/furnace-xray/app/views/nodes/operand_constant.jst.mustache
|
218
|
+
- lib/furnace-xray/app/views/nodes/operand_constant_function.jst.mustache
|
219
|
+
- lib/furnace-xray/app/views/nodes/operand_instruction.jst.mustache
|
220
|
+
- lib/furnace-xray/app/views/nodes/type_constant.jst.mustache
|
221
|
+
- lib/furnace-xray/app/views/nodes/type_parametric.jst.mustache
|
222
|
+
- lib/furnace-xray/lib/jst_pages.rb
|
223
|
+
- lib/furnace-xray/version.rb
|
224
|
+
- sample.json
|
225
|
+
homepage: https://github.com/evilmartians/furnace-xray
|
226
|
+
licenses: []
|
227
|
+
post_install_message:
|
228
|
+
rdoc_options: []
|
229
|
+
require_paths:
|
230
|
+
- lib
|
231
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
232
|
+
none: false
|
233
|
+
requirements:
|
234
|
+
- - ! '>='
|
235
|
+
- !ruby/object:Gem::Version
|
236
|
+
version: '0'
|
237
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
238
|
+
none: false
|
239
|
+
requirements:
|
240
|
+
- - ! '>='
|
241
|
+
- !ruby/object:Gem::Version
|
242
|
+
version: '0'
|
243
|
+
requirements: []
|
244
|
+
rubyforge_project:
|
245
|
+
rubygems_version: 1.8.15
|
246
|
+
signing_key:
|
247
|
+
specification_version: 3
|
248
|
+
summary: A visualizer for transformations of code in Static Single Assignment form
|
249
|
+
based on the Furnace library.
|
250
|
+
test_files: []
|
251
|
+
has_rdoc:
|