Exception: LocalJumpError
- Inherits:
- 
      StandardError
      
        - Object
- Exception
- StandardError
- LocalJumpError
 
- Defined in:
- proc.c,
 proc.c
Overview
Raised when Ruby can’t yield as requested.
A typical scenario is attempting to yield when no block is given:
def call_block
  yield 42
end
call_block
raises the exception:
LocalJumpError: no block given (yield)
A more subtle example:
def get_me_a_return
  Proc.new { return 42 }
end
get_me_a_return.call
raises the exception:
LocalJumpError: unexpected return
Instance Method Summary collapse
- 
  
    
      #exit_value  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    Returns the exit value associated with this LocalJumpError.
- 
  
    
      #reason  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    The reason this block was terminated: :break, :redo, :retry, :next, :return, or :noreason. 
Methods inherited from Exception
#==, #backtrace, #backtrace_locations, #cause, #detailed_message, #exception, exception, #full_message, #initialize, #inspect, #message, #set_backtrace, #to_s, to_tty?
Constructor Details
This class inherits a constructor from Exception
Instance Method Details
#exit_value ⇒ Object
Returns the exit value associated with this LocalJumpError.
| 3448 3449 3450 3451 3452 | # File 'proc.c', line 3448 static VALUE localjump_xvalue(VALUE exc) { return rb_iv_get(exc, "@exit_value"); } | 
#reason ⇒ Object
The reason this block was terminated: :break, :redo, :retry, :next, :return, or :noreason.
| 3462 3463 3464 3465 3466 | # File 'proc.c', line 3462 static VALUE localjump_reason(VALUE exc) { return rb_iv_get(exc, "@reason"); } |