Module: InputSanitizer::V1
- Defined in:
- lib/input_sanitizer/v1.rb,
lib/input_sanitizer/v1/default_converters.rb
Defined Under Namespace
Modules: AllowNil Classes: BooleanConverter, DateConverter, IntegerConverter, Sanitizer, StringConverter, TimeConverter
Constant Summary collapse
- CleanField =
MethodStruct.new(:data, :has_key, :converter, :required, :collection, :namespace, :default, :provide, :allow) do def call if has_key convert elsif default converter.call(default) elsif required raise InputSanitizer::ValueMissingError else raise InputSanitizer::OptionalValueOmitted end end private def convert if collection data.map { |value| convert_single(value) } else convert_single(data) end end def convert_single(value) if namespace { namespace => convert_value(value[namespace]) } else convert_value(value) end end def convert_value(value) if provide converter.call(value, provide) else converter.call(value) end end end