Sha256: c9a587b1c6a839fbb103a68f1d0239ffa6dee7d24c26dd1e86fe2055be0ac090
Contents?: true
Size: 686 Bytes
Versions: 2
Compression:
Stored size: 686 Bytes
Contents
module Memo class Option attr_reader :namespace def initialize(args) @raw_args = args.to_a case @raw_args in [*, "-n", namespace, *] @namespace = namespace @raw_args.delete("-n") @raw_args.delete(namespace) else end @args = @raw_args.select do |s| !s.start_with? "-" end end def [](index) @args[index] end def dir? include_any? "-dir", "-d" end def all? include_any? "-all", "-a" end def copy? include_any? "-copy", "-c" end private def include_any?(*args) args.map { |a| @raw_args.include?(a) }.any? end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
ememo-0.2.1 | lib/memo/cli/arg/option.rb |
ememo-0.1.8 | lib/memo/cli/arg/option.rb |