--- !ruby/object:RI::MethodDescription 
aliases: []

block_params: 
comment: 
- !ruby/struct:SM::Flow::P 
  body: Converts <em>block</em> to a <tt>Proc</tt> object (and therefore binds it at the point of call) and registers it for execution when the program exits. If multiple handlers are registered, they are executed in reverse order of registration.
- !ruby/struct:SM::Flow::VERB 
  body: "   def do_at_exit(str1)\n     at_exit { print str1 }\n   end\n   at_exit { puts &quot;cruel world&quot; }\n   do_at_exit(&quot;goodbye &quot;)\n   exit\n"
- !ruby/struct:SM::Flow::P 
  body: <em>produces:</em>
- !ruby/struct:SM::Flow::VERB 
  body: "   goodbye cruel world\n"
full_name: Kernel#at_exit
is_singleton: false
name: at_exit
params: |
  at_exit { block } -> proc

visibility: public
