Sha256: b12e46d2ebbd8c00bb4eee7c70645ac75c09aa1bb6b3cc8b8186249dd4b973df
Contents?: true
Size: 1.38 KB
Versions: 2
Compression:
Stored size: 1.38 KB
Contents
# frozen_string_literal: true require 'eac_cli/runner/argument_option' require 'eac_cli/runner/boolean_option' require 'eac_cli/runner/positional_argument' require 'eac_ruby_utils/core_ext' module EacCli module Runner class Definition require_sub __FILE__ attr_accessor :description attr_accessor :options_argument def initialize self.description = '-- NO DESCRIPTION SET --' self.options_argument = true end def alt(&block) r = ::EacCli::Runner::Definition.new r.instance_eval(&block) alternatives << r r end def alternatives @alternatives ||= [] end def arg_opt(short, long, description, option_options = {}) options << ArgumentOption.new(short, long, description, option_options) end def bool_opt(short, long, description, option_options = {}) options << BooleanOption.new(short, long, description, option_options) end def desc(description) self.description = description end def options_arg(options_argument) self.options_argument = options_argument end def options @options ||= [] end def pos_arg(name, arg_options = {}) positional << PositionalArgument.new(name, arg_options) end def positional @positional ||= [] end end end end
Version data entries
2 entries across 2 versions & 2 rubygems
Version | Path |
---|---|
ehbrs-tools-0.3.0 | vendor/eac_cli/lib/eac_cli/runner/definition.rb |
eac_cli-0.2.0 | lib/eac_cli/runner/definition.rb |