Class: Envo::CmdReset
- Inherits:
-
Object
- Object
- Envo::CmdReset
- Defined in:
- lib/envo/cmd_reset.rb
Constant Summary collapse
- Name =
'reset'
Instance Attribute Summary collapse
-
#helper ⇒ Object
Returns the value of attribute helper.
-
#name ⇒ Object
Returns the value of attribute name.
Class Method Summary collapse
- .parse_cli(args) ⇒ Object
- .parse_script(args) ⇒ Object
- .parse_tokens(args, opts) ⇒ Object
- .register_cli_parser(parser) ⇒ Object
- .register_help(help) ⇒ Object
- .register_script_parser(parser) ⇒ Object
Instance Method Summary collapse
- #execute(ctx) ⇒ Object
-
#initialize(name, helper) ⇒ CmdReset
constructor
A new instance of CmdReset.
Constructor Details
#initialize(name, helper) ⇒ CmdReset
Returns a new instance of CmdReset.
46 47 48 49 |
# File 'lib/envo/cmd_reset.rb', line 46 def initialize(name, helper) @name = name @helper = helper end |
Instance Attribute Details
#helper ⇒ Object
Returns the value of attribute helper.
51 52 53 |
# File 'lib/envo/cmd_reset.rb', line 51 def helper @helper end |
#name ⇒ Object
Returns the value of attribute name.
51 52 53 |
# File 'lib/envo/cmd_reset.rb', line 51 def name @name end |
Class Method Details
.parse_cli(args) ⇒ Object
19 20 21 22 |
# File 'lib/envo/cmd_reset.rb', line 19 def self.parse_cli(args) opts = CliParser.filter_opts(args) parse_tokens(args, opts) end |
.parse_script(args) ⇒ Object
42 43 44 |
# File 'lib/envo/cmd_reset.rb', line 42 def self.parse_script(args) puts "#{Name} parse_script" end |
.parse_tokens(args, opts) ⇒ Object
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/envo/cmd_reset.rb', line 24 def self.parse_tokens(args, opts) raise Envo::Error.new "reset: missing name. Use 'reset <name> [= [<val>]]'" if args.empty? || args[0][0] == '=' if args.size == 1 arg = args[0] cnt = arg.count('=') return ParsedCmd.new(CmdReset.new(arg, nil), opts) if cnt == 0 if cnt == 1 && arg[-1] == '=' split = arg.split('=') return ParsedCmd.new(CmdReset.new(split[0], nil), opts) if split.size == 1 end elsif args.size == 2 return ParsedCmd.new(CmdReset.new(args[0], nil), opts) if args[1] == '=' end helper = CmdSet.parse_cli(args).cmd ParsedCmd.new(CmdReset.new(helper.name, helper), opts) end |
.register_cli_parser(parser) ⇒ Object
11 12 13 |
# File 'lib/envo/cmd_reset.rb', line 11 def self.register_cli_parser(parser) parser.add_cmd(Name, ->(cmd, args) { parse_cli(args) }) end |
.register_help(help) ⇒ Object
4 5 6 7 8 9 |
# File 'lib/envo/cmd_reset.rb', line 4 def self.register_help(help) help.add_cmd 'reset <name>[=[<val>]]', <<~EOF set or unset value of an existing environment variable produce an error if the variable doesn't exist EOF end |
.register_script_parser(parser) ⇒ Object
15 16 17 |
# File 'lib/envo/cmd_reset.rb', line 15 def self.register_script_parser(parser) parser.add_cmd(Name, ->(cmd, tokens, opts) { parse_tokens(tokens, opts) }) end |