Class: Gloo::Verbs::List
- Inherits:
-
Core::Verb
- Object
- Core::Baseo
- Core::Verb
- Gloo::Verbs::List
- Defined in:
- lib/gloo/verbs/list.rb
Constant Summary collapse
- KEYWORD =
'list'.freeze
- KEYWORD_SHORT =
'.'.freeze
- TARGET_MISSING_ERR =
'Object does not exist: '.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
-
#determine_target ⇒ Object
Determine the target object for the show command.
-
#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.
124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 |
# File 'lib/gloo/verbs/list.rb', line 124 def self.doc_data { :name => KEYWORD, :shortcut => KEYWORD_SHORT, :description => 'List out objects (and children) at the ' \ 'current context. When a path is provided, it will be ' \ 'listed instead of the current context. When using context, ' \ 'the current context will be shown, but when context has ' \ 'not been set, the root will be shown.', :syntax => [ 'list {path.to.object}' ], :parameters => [ '{path.to.object} — Optional path to object that will be listed. When no path is provided, the current context is used.' ], :result => 'Object and children are listed out in the CLI.', :errors => [ "#{TARGET_MISSING_ERR}{path.to.object} — The object specified that is to be listed could not be found." ], :examples => <<~EXAMPLES.strip > list > list my.container > list root EXAMPLES } end |
.keyword ⇒ Object
Get the Verb's keyword.
43 44 45 |
# File 'lib/gloo/verbs/list.rb', line 43 def self.keyword return KEYWORD end |
.keyword_shortcut ⇒ Object
Get the Verb's keyword shortcut.
50 51 52 |
# File 'lib/gloo/verbs/list.rb', line 50 def self.keyword_shortcut return KEYWORD_SHORT end |
Instance Method Details
#determine_target ⇒ Object
Determine the target object for the show command.
34 35 36 37 38 |
# File 'lib/gloo/verbs/list.rb', line 34 def determine_target return @engine.heap.context if @tokens.token_count == 1 return Gloo::Core::Pn.new( @engine, @tokens.second ) end |
#run ⇒ Object
Run the verb.
18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/gloo/verbs/list.rb', line 18 def run levels = determine_levels target = self.determine_target indent = self.determine_indent obj = target.resolve if obj show_target( obj, levels, indent ) else @engine.err "#{TARGET_MISSING_ERR} #{target}" end end |