Method: FormatTime#get_strftime_string

Defined in:
lib/formatted_times/format_time.rb

#get_strftime_string(name, *args) ⇒ Object

Raises:

  • (::ArgumentError)


78
79
80
81
82
83
84
85
86
87
88
89
# File 'lib/formatted_times/format_time.rb', line 78

def get_strftime_string(name, *args)
  separator = args[0] || '/'
  multiple_separator=  args[1] || false
  options = name.split('_')
  options.shift

  invalid_options = options - FORMATTING_OPTIONS.keys
  raise ::ArgumentError, "Options #{invalid_options.join(', ')} are invalid." unless invalid_options.empty?

  strf_options = options.collect{ |option| FORMATTING_OPTIONS[option] }
  multiple_separator ? strf_options.zip(separator.chars).flatten.compact.join : strf_options.join(separator)
end