furnace-xray 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. data/.gitignore +18 -0
  2. data/Gemfile +5 -0
  3. data/LICENSE.txt +22 -0
  4. data/README.md +60 -0
  5. data/Rakefile +1 -0
  6. data/bin/furnace-xray +23 -0
  7. data/furnace-xray.gemspec +33 -0
  8. data/lib/furnace-xray.rb +1 -0
  9. data/lib/furnace-xray/app/app.rb +56 -0
  10. data/lib/furnace-xray/app/assets/images/chosen-sprite.png +0 -0
  11. data/lib/furnace-xray/app/assets/images/evil_martians_bw_logo.svg +3 -0
  12. data/lib/furnace-xray/app/assets/images/evil_martians_logo.svg +3 -0
  13. data/lib/furnace-xray/app/assets/images/ui/ui-bg_diagonal-maze_20_6e4f1c_10x10.png +0 -0
  14. data/lib/furnace-xray/app/assets/images/ui/ui-bg_diagonal-maze_40_000000_10x10.png +0 -0
  15. data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_10_eceadf_60x60.png +0 -0
  16. data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_10_f8f7f6_60x60.png +0 -0
  17. data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_eceadf_60x60.png +0 -0
  18. data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_f7f3de_60x60.png +0 -0
  19. data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_15_ffffff_60x60.png +0 -0
  20. data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_65_654b24_60x60.png +0 -0
  21. data/lib/furnace-xray/app/assets/images/ui/ui-bg_fine-grain_68_b83400_60x60.png +0 -0
  22. data/lib/furnace-xray/app/assets/images/ui/ui-icons_222222_256x240.png +0 -0
  23. data/lib/furnace-xray/app/assets/images/ui/ui-icons_3572ac_256x240.png +0 -0
  24. data/lib/furnace-xray/app/assets/images/ui/ui-icons_8c291d_256x240.png +0 -0
  25. data/lib/furnace-xray/app/assets/images/ui/ui-icons_b83400_256x240.png +0 -0
  26. data/lib/furnace-xray/app/assets/images/ui/ui-icons_fbdb93_256x240.png +0 -0
  27. data/lib/furnace-xray/app/assets/images/ui/ui-icons_ffffff_256x240.png +0 -0
  28. data/lib/furnace-xray/app/assets/javascripts/application.js.coffee +219 -0
  29. data/lib/furnace-xray/app/assets/javascripts/lib/drawer.js.coffee +206 -0
  30. data/lib/furnace-xray/app/assets/javascripts/lib/graph.js.coffee +26 -0
  31. data/lib/furnace-xray/app/assets/javascripts/lib/input.js.coffee +134 -0
  32. data/lib/furnace-xray/app/assets/javascripts/lib/input_state.js.coffee +8 -0
  33. data/lib/furnace-xray/app/assets/javascripts/lib/map.js.coffee +45 -0
  34. data/lib/furnace-xray/app/assets/javascripts/lib/nodes/argument.js.coffee +7 -0
  35. data/lib/furnace-xray/app/assets/javascripts/lib/nodes/block.js.coffee +76 -0
  36. data/lib/furnace-xray/app/assets/javascripts/lib/nodes/function.js.coffee +15 -0
  37. data/lib/furnace-xray/app/assets/javascripts/lib/nodes/instruction.js.coffee +33 -0
  38. data/lib/furnace-xray/app/assets/javascripts/lib/nodes/operand.js.coffee +21 -0
  39. data/lib/furnace-xray/app/assets/javascripts/lib/nodes/type.js.coffee +12 -0
  40. data/lib/furnace-xray/app/assets/javascripts/vendor/chosen.jquery.js +1090 -0
  41. data/lib/furnace-xray/app/assets/javascripts/vendor/d3.v3.js +7806 -0
  42. data/lib/furnace-xray/app/assets/javascripts/vendor/dagre.js +4053 -0
  43. data/lib/furnace-xray/app/assets/javascripts/vendor/hotkeys.jquery.js +106 -0
  44. data/lib/furnace-xray/app/assets/javascripts/vendor/jquery.js +9472 -0
  45. data/lib/furnace-xray/app/assets/javascripts/vendor/mustache.js +532 -0
  46. data/lib/furnace-xray/app/assets/javascripts/vendor/stacktrace-0.4.js +424 -0
  47. data/lib/furnace-xray/app/assets/javascripts/vendor/sugar-1.3.8.js +8615 -0
  48. data/lib/furnace-xray/app/assets/javascripts/vendor/ui.jquery.js +14850 -0
  49. data/lib/furnace-xray/app/assets/stylesheets/app.css.sass +199 -0
  50. data/lib/furnace-xray/app/assets/stylesheets/chosen.jquery.css +413 -0
  51. data/lib/furnace-xray/app/assets/stylesheets/elements.css.sass +31 -0
  52. data/lib/furnace-xray/app/assets/stylesheets/graph.css.sass +29 -0
  53. data/lib/furnace-xray/app/assets/stylesheets/ui.jquery.css +1174 -0
  54. data/lib/furnace-xray/app/public/fonts/iconic_stroke.afm +170 -0
  55. data/lib/furnace-xray/app/public/fonts/iconic_stroke.eot +0 -0
  56. data/lib/furnace-xray/app/public/fonts/iconic_stroke.otf +0 -0
  57. data/lib/furnace-xray/app/public/fonts/iconic_stroke.svg +553 -0
  58. data/lib/furnace-xray/app/public/fonts/iconic_stroke.ttf +0 -0
  59. data/lib/furnace-xray/app/public/fonts/iconic_stroke.woff +0 -0
  60. data/lib/furnace-xray/app/public/fonts/iconic_stroke_demo.html +1 -0
  61. data/lib/furnace-xray/app/views/index.haml +52 -0
  62. data/lib/furnace-xray/app/views/nodes/argument.jst.mustache +1 -0
  63. data/lib/furnace-xray/app/views/nodes/block.jst.mustache +4 -0
  64. data/lib/furnace-xray/app/views/nodes/diff/added_line.jst.mustache +1 -0
  65. data/lib/furnace-xray/app/views/nodes/diff/changed_line.jst.mustache +2 -0
  66. data/lib/furnace-xray/app/views/nodes/diff/removed_line.jst.mustache +1 -0
  67. data/lib/furnace-xray/app/views/nodes/diff/unchanged_line.jst.mustache +1 -0
  68. data/lib/furnace-xray/app/views/nodes/function.jst.mustache +1 -0
  69. data/lib/furnace-xray/app/views/nodes/function_removed.jst.mustache +1 -0
  70. data/lib/furnace-xray/app/views/nodes/instruction_typed.jst.mustache +3 -0
  71. data/lib/furnace-xray/app/views/nodes/instruction_void.jst.mustache +3 -0
  72. data/lib/furnace-xray/app/views/nodes/operand_argument.jst.mustache +1 -0
  73. data/lib/furnace-xray/app/views/nodes/operand_basic_block.jst.mustache +1 -0
  74. data/lib/furnace-xray/app/views/nodes/operand_constant.jst.mustache +1 -0
  75. data/lib/furnace-xray/app/views/nodes/operand_constant_function.jst.mustache +1 -0
  76. data/lib/furnace-xray/app/views/nodes/operand_instruction.jst.mustache +1 -0
  77. data/lib/furnace-xray/app/views/nodes/type_constant.jst.mustache +1 -0
  78. data/lib/furnace-xray/app/views/nodes/type_parametric.jst.mustache +3 -0
  79. data/lib/furnace-xray/lib/jst_pages.rb +226 -0
  80. data/lib/furnace-xray/version.rb +5 -0
  81. data/sample.json +1 -0
  82. metadata +251 -0
@@ -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
+ &uarr; &uarr;
37
+ %button.next
38
+ &uarr;
39
+ %input{:type => 'text', :size => 3, :value => 0}
40
+ %span#diff
41
+ .slider
42
+ #transforms
43
+ %button.prev
44
+ &darr;
45
+ %button.fprev
46
+ &darr; &darr;
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,4 @@
1
+ <div class="block">
2
+ <span class="naming link" data-naming="%{{name}}">{{name}}:</span>
3
+ {{{instructions}}}
4
+ </div>
@@ -0,0 +1 @@
1
+ <div class="line diff-added">{{{line}}}</div>
@@ -0,0 +1,2 @@
1
+ <div class="line diff-removed">{{{before}}}</div>
2
+ <div class="line diff-added">{{{after}}}</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,3 @@
1
+ <div>
2
+ {{{type}}} <span class='naming link'>%{{name}}</span> = <b>{{opcode}}</b> {{parameters}} {{{operands}}}
3
+ </div>
@@ -0,0 +1,3 @@
1
+ <div>
2
+ <b>{{opcode}}</b> {{parameters}} {{{operands}}}
3
+ </div>
@@ -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
+ <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,3 @@
1
+ <i class='type'>
2
+ {{type}}&lt;<i class='parameters'>{{{parameters}}}</i>&gt;
3
+ </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
@@ -0,0 +1,5 @@
1
+ module Furnace
2
+ module Xray
3
+ VERSION = '1.0.0'
4
+ end
5
+ end
@@ -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: