Class: Trollop::DateOption

Inherits:
Option
  • Object
show all
Defined in:
lib/rbcli/util/trollop.rb

Overview

Option for dates. Uses Chronic if it exists.

Direct Known Subclasses

DateArrayOption

Instance Attribute Summary

Attributes inherited from Option

#default, #long, #multi_given, #name, #permitted, #short

Instance Method Summary collapse

Methods inherited from Option

#array_default?, #callback, create, #desc, #description_with_default, #description_with_permitted, #educate, #flag?, #full_description, #initialize, #multi, #multi_arg?, #opts, #opts=, register_alias, #required?, #short?, #single_arg?

Constructor Details

This class inherits a constructor from Trollop::Option

Instance Method Details

#parse(paramlist, _neg_given) ⇒ Object



865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
# File 'lib/rbcli/util/trollop.rb', line 865

def parse(paramlist, _neg_given)
	paramlist.map do |pg|
		pg.map do |param|
			next param if param.is_a?(Date)
			begin
				begin
					require 'chronic'
					time = Chronic.parse(param)
				rescue LoadError
					# chronic is not available
				end
				time ? Date.new(time.year, time.month, time.day) : Date.parse(param)
			rescue ArgumentError
				raise CommandlineError, "option '#{self.name}' needs a date"
			end
		end
	end
end

#type_formatObject



864
# File 'lib/rbcli/util/trollop.rb', line 864

def type_format ; "=<date>" ; end