Class: GitSwitch::Options
- Inherits:
-
Object
- Object
- GitSwitch::Options
- Defined in:
- lib/git_switch/options.rb
Instance Attribute Summary collapse
-
#args ⇒ Object
readonly
Returns the value of attribute args.
Instance Method Summary collapse
- #config? ⇒ Boolean
- #edit? ⇒ Boolean
- #flags ⇒ Object
- #global? ⇒ Boolean
-
#initialize(args) ⇒ Options
constructor
A new instance of Options.
- #list? ⇒ Boolean
- #usage? ⇒ Boolean
- #valid_args? ⇒ Boolean
- #verbose? ⇒ Boolean
- #version? ⇒ Boolean
Constructor Details
#initialize(args) ⇒ Options
Returns a new instance of Options.
4 5 6 |
# File 'lib/git_switch/options.rb', line 4 def initialize(args) @args = args end |
Instance Attribute Details
#args ⇒ Object (readonly)
Returns the value of attribute args.
3 4 5 |
# File 'lib/git_switch/options.rb', line 3 def args @args end |
Instance Method Details
#config? ⇒ Boolean
42 43 44 |
# File 'lib/git_switch/options.rb', line 42 def config? config_flag? && args.count == 1 end |
#edit? ⇒ Boolean
46 47 48 |
# File 'lib/git_switch/options.rb', line 46 def edit? edit_flag? && args.count == 1 end |
#flags ⇒ Object
8 9 10 11 12 13 |
# File 'lib/git_switch/options.rb', line 8 def flags @flags ||= args.select do |arg| arg.match(/\A\-[ceglv]{1}\z/) || arg.match(/\A\-\-(config|edit|global|list|verbose|version){1}\z/) end end |
#global? ⇒ Boolean
58 59 60 |
# File 'lib/git_switch/options.rb', line 58 def global? (flags.include? '-g') || (flags.include? '--global') end |
#list? ⇒ Boolean
50 51 52 |
# File 'lib/git_switch/options.rb', line 50 def list? list_flag? && args.count == 1 end |
#usage? ⇒ Boolean
38 39 40 |
# File 'lib/git_switch/options.rb', line 38 def usage? args.count == 0 end |
#valid_args? ⇒ Boolean
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/git_switch/options.rb', line 15 def valid_args? if config? return true elsif edit? return true elsif list? return true elsif version? return true elsif verbose? return true elsif no_flags? return true elsif one_flag? && !flag_only? return true elsif usage? return true else puts "Invalid args" return false end end |
#verbose? ⇒ Boolean
62 63 64 |
# File 'lib/git_switch/options.rb', line 62 def verbose? verbose_flag? && args.count > 1 end |
#version? ⇒ Boolean
54 55 56 |
# File 'lib/git_switch/options.rb', line 54 def version? version_flag? && args.count == 1 end |