class Contracts::Builtin::KeywordArgs
Use this for specifying contracts for keyword arguments Example: KeywordArgs[ e: Range, f: Optional[Num] ]
Attributes
options[R]
Public Class Methods
new(options)
click to toggle source
Calls superclass method
# File lib/contracts/builtin_contracts.rb, line 444 def initialize(options) super() @options = options end
Public Instance Methods
inspect()
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 462 def inspect to_s end
to_s()
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 458 def to_s "KeywordArgs[#{options}]" end
valid?(hash)
click to toggle source
# File lib/contracts/builtin_contracts.rb, line 449 def valid?(hash) return false unless hash.is_a?(Hash) return false unless hash.keys - options.keys == [] options.all? do |key, contract| Optional._valid?(hash, key, contract) end end