Class: Gloo::Verbs::Throw

Inherits:
Core::Verb show all
Defined in:
lib/gloo/verbs/throw.rb

Constant Summary collapse

KEYWORD =
'throw'.freeze
KEYWORD_SHORT =
'throw'.freeze
DEFAULT_MSG =
'Thrown by throw verb'.freeze

Constants inherited from Core::Baseo

Core::Baseo::NOT_IMPLEMENTED_ERR

Instance Attribute Summary

Attributes inherited from Core::Verb

#params, #tokens

Attributes inherited from Core::Baseo

#name

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Core::Verb

#display_value, help, inherited, #initialize, #type_display

Methods inherited from Core::Baseo

#initialize, #type_display

Constructor Details

This class inherits a constructor from Gloo::Core::Verb

Class Method Details

.doc_dataObject

Get the verb's documentation data.



60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
# File 'lib/gloo/verbs/throw.rb', line 60

def self.doc_data
  {
    :name => KEYWORD,
    :shortcut => KEYWORD_SHORT,
    :description => 'Deliberately raise a Ruby exception, to ' \
      'exercise the on_exception handling pipeline (e.g. for ' \
      'testing). Execution continues normally after the throw — ' \
      'it is not a fatal halt.',
    :syntax => [ 'throw {optional message}' ],
    :parameters => [
      "{message} — Optional. An expression evaluated and used as the thrown message. If not provided, a default message (\"#{DEFAULT_MSG}\") is used."
    ],
    :result => "Fires the app's on_exception handler, if one is " \
      'defined, with exception_data.message set to the thrown ' \
      'message. Does not fire on_error.',
    :examples => <<~EXAMPLES.strip
      > throw
      > throw "custom message"
    EXAMPLES
  }
end

.keywordObject

Get the Verb's keyword.



26
27
28
# File 'lib/gloo/verbs/throw.rb', line 26

def self.keyword
  return KEYWORD
end

.keyword_shortcutObject

Get the Verb's keyword shortcut.



33
34
35
# File 'lib/gloo/verbs/throw.rb', line 33

def self.keyword_shortcut
  return KEYWORD_SHORT
end

Instance Method Details

#runObject

Run the verb.



19
20
21
# File 'lib/gloo/verbs/throw.rb', line 19

def run
  raise message
end