Class: Gloo::Verbs::Run
- Inherits:
-
Core::Verb
- Object
- Core::Baseo
- Core::Verb
- Gloo::Verbs::Run
- Defined in:
- lib/gloo/verbs/run.rb
Constant Summary collapse
- KEYWORD =
'run'.freeze
- KEYWORD_SHORT =
'r'.freeze
- EVALUATE_RUN =
'~>'.freeze
- MISSING_EXPR_ERR =
'Missing Expression!'.freeze
Constants inherited from Core::Baseo
Core::Baseo::NOT_IMPLEMENTED_ERR
Instance Attribute Summary
Attributes inherited from Core::Verb
Attributes inherited from Core::Baseo
Class Method Summary collapse
-
.doc_data ⇒ Object
Get the verb's documentation data.
-
.keyword ⇒ Object
Get the Verb's keyword.
-
.keyword_shortcut ⇒ Object
Get the Verb's keyword shortcut.
Instance Method Summary collapse
-
#run ⇒ Object
Run the verb.
Methods inherited from Core::Verb
#display_value, help, inherited, #initialize, #type_display
Methods inherited from Core::Baseo
Constructor Details
This class inherits a constructor from Gloo::Core::Verb
Class Method Details
.doc_data ⇒ Object
Get the verb's documentation data.
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/gloo/verbs/run.rb', line 80 def self.doc_data { :name => KEYWORD, :shortcut => KEYWORD_SHORT, :description => 'Run a script or other object. This is the ' \ 'same as sending a run message to the object.', :syntax => [ 'run {path.to.object}', 'run ~> {expression}' ], :parameters => [ '{path.to.object} — Reference to the object which will be ' \ 'run. The object must be a runnable object such as a script.', '{expression} — Evaluate the expression and run it.' ], :result => 'The result depends on the object that is run.', :errors => [ "#{MISSING_EXPR_ERR} — No expression is provided as parameter to the verb." ], :examples => <<~EXAMPLES.strip > run my.script > create s as script : "show 3 + 4" > run s # Run a script in an evaluated expression: > create s as string : "show 3 + 4" > run ~> s EXAMPLES } end |
.keyword ⇒ Object
Get the Verb's keyword.
36 37 38 |
# File 'lib/gloo/verbs/run.rb', line 36 def self.keyword return KEYWORD end |
.keyword_shortcut ⇒ Object
Get the Verb's keyword shortcut.
43 44 45 |
# File 'lib/gloo/verbs/run.rb', line 43 def self.keyword_shortcut return KEYWORD_SHORT end |
Instance Method Details
#run ⇒ Object
Run the verb.
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/gloo/verbs/run.rb', line 20 def run if @tokens.token_count < 2 @engine.err MISSING_EXPR_ERR return end if @tokens.second == EVALUATE_RUN run_expression else run_script end end |