Sha256: 05651e3c74db73c07c63881644c098d82eb3b68460008659c67de176fef5b3c2
Contents?: true
Size: 633 Bytes
Versions: 2
Compression:
Stored size: 633 Bytes
Contents
require_relative '../abstract_validator' require_relative 'hash_validator' module StValidation module Validators # Use this when you don't care if there're extra keys set class HashSubsetValidator < AbstractValidator def initialize(blueprint, factory = StValidation.basic_factory) @keys = blueprint.keys @hash_validator = StValidation::Validators::HashValidator.new(blueprint, factory) end def call(value) return false unless value.is_a?(Hash) @hash_validator.call(value.slice(*keys)) end private attr_reader :keys, :hash_validator end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
st_validation-0.2.0 | lib/st_validation/validators/hash_subset_validator.rb |
st_validation-0.1.0 | lib/st_validation/validators/hash_subset_validator.rb |