module StrictOptions
Public Instance Methods
strict_options!(*opts, exception_class: ArgumentError, exception_message: nil)
click to toggle source
# File lib/strict_options.rb, line 2 def strict_options!(*opts, exception_class: ArgumentError, exception_message: nil) @missings = [] opts.each { |opt| @missings << ":#{opt}" unless @options[opt] } msg = exception_message || "option#{s} #{@missings.join(', ')} #{is_or_are} missing" raise exception_class, msg if @missings.size > 0 end
Private Instance Methods
is_or_are()
click to toggle source
# File lib/strict_options.rb, line 12 def is_or_are return if @missings.empty? @missings.size > 1 ? 'are' : 'is' end
s()
click to toggle source
# File lib/strict_options.rb, line 18 def s return if @missings.empty? @missings.size > 1 ? 's' : '' end