module ARGV
Public Class Methods
args()
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 30 def args @args ? @args : opts && @args end
help?()
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 21 def help? !!@opts["help"] end
on_help(&block)
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 47 def on_help(&block) @help_handler = block end
opts()
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 25 def opts parse! unless @opts @opts end
parse()
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 16 def parse parse! [@opts, @args] end
parse!()
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 3 def parse! unless @opts or @args @opts, @args = partition { |arg| arg[/^--?\w{1,2}/].nil? } @opts = @opts.map { |opt| key, val = opt.strip(/^-+/).split("=") }.to_ostruct if @opts.help @help_handler.call exit end end [@opts, @args] end
paths()
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 34 def paths map(&:to_Path) end
paths_R()
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 38 def paths_R recursive_proc = proc do |paths| paths.map { |path| path.dir? ? the_expander.(path.ls_R) : path } end recursive_proc.(paths) end
Also aliased as: recursive_paths
regexes(escaped: true, case_sensitive: false)
click to toggle source
# File lib/epitools/core_ext/argv.rb, line 51 def regexes(escaped: true, case_sensitive: false) if case_sensitive map { |arg| /#{escaped ? Regexp.escape(arg) : arg}/ } # NO 'i' else map { |arg| /#{escaped ? Regexp.escape(arg) : arg}/i } end end