class KXI::CLI::AnonymousArgument
Represents anonymous argument (eg.: verb VALUE)
Public Class Methods
new(nm, desc, rq = true, df = nil, var = false, &validator)
click to toggle source
Instantiates the {KXI::CLI::AnonymousArgument} class @param nm [String] Name of argument @param desc [String] Description of argument @param rq [Bool] Indicates whether argument is required @param df Default value of argument @param var [Bool] Indicates whether argument is variadic
Calls superclass method
KXI::CLI::Argument::new
# File lib/kxi/cli/anonymous_argument.rb, line 37 def initialize(nm, desc, rq = true, df = nil, var = false, &validator) super(nm, desc, rq, 5 - (var ? 1 : 0) - (rq ? 0 : 1)) @def = df @var = var @val = validator end
Public Instance Methods
default()
click to toggle source
Gets default value of argument @return [Object] Default value of argument
# File lib/kxi/cli/anonymous_argument.rb, line 9 def default @def end
headline()
click to toggle source
Gets full descriptive name of argument @return [String] Full name of argument
Calls superclass method
KXI::CLI::Argument#headline
# File lib/kxi/cli/anonymous_argument.rb, line 27 def headline super.upcase end
syntax()
click to toggle source
Gets syntax of argument @return [String] Syntax of argument
# File lib/kxi/cli/anonymous_argument.rb, line 21 def syntax "#{required? ? '<' : '['}#{name}#{required? ? '>' : ']'}" end
validate(val)
click to toggle source
Validates value of argument @param val [String, Array<String>] Value of argument
# File lib/kxi/cli/anonymous_argument.rb, line 46 def validate(val) @val.call(val) if @val != nil end
variadic?()
click to toggle source
Gets whether argument is variadic @return [Bool] True if argument is variadic; false otherwise
# File lib/kxi/cli/anonymous_argument.rb, line 15 def variadic? @var end