Class: Hash
- Inherits:
-
Object
- Object
- Hash
- Defined in:
- lib/hash_plus.rb
Instance Method Summary collapse
- #missing(*cols) ⇒ Object
-
#missing_fields(*cols) ⇒ Object
Return the missing columns.
-
#requires(*cols) ⇒ Object
Short hand methods.
-
#requires_fields(*cols) ⇒ Object
Raise an ArgumentError if there are missing columns.
Instance Method Details
#missing(*cols) ⇒ Object
4 |
# File 'lib/hash_plus.rb', line 4 def missing(*cols); missing_fields(cols); end |
#missing_fields(*cols) ⇒ Object
Return the missing columns
15 16 17 |
# File 'lib/hash_plus.rb', line 15 def missing_fields(*cols) cols.select { |required_key| self[required_key].nil? } end |
#requires(*cols) ⇒ Object
Short hand methods
3 |
# File 'lib/hash_plus.rb', line 3 def requires(*cols); requires_fields(cols); end |
#requires_fields(*cols) ⇒ Object
Raise an ArgumentError if there are missing columns
7 8 9 10 11 12 |
# File 'lib/hash_plus.rb', line 7 def requires_fields(*cols) missing = missing_fields(cols) unless missing.empty? raise ArgumentError, "Missing value for keys=#{missing.join(',')} in opts=#{self.inspect}" end end |