Module: StrictStruct::Helper
- Defined in:
- lib/strict_struct.rb
Class Method Summary collapse
Class Method Details
.assert_keyword_error(type, keywords) ⇒ Object
5 6 7 8 9 10 11 |
# File 'lib/strict_struct.rb', line 5 def self.assert_keyword_error type, keywords if keywords.length == 1 raise ArgumentError, "#{type} keyword: " + keywords.first.to_s elsif keywords.length > 1 raise ArgumentError, "#{type} keywords: " + keywords.join(', ') end end |
.validate_arguments(given, expected) ⇒ Object
13 14 15 16 17 18 19 |
# File 'lib/strict_struct.rb', line 13 def self.validate_arguments given, expected missing_arguments = expected.reject {|name| given.include? name } Helper.assert_keyword_error "missing", missing_arguments extra_arguments = given.reject {|name| expected.include? name } Helper.assert_keyword_error "unknown", extra_arguments end |