def cast(self, value, custom_formatters=None, strict=True):
        """Cast value to schema type"""
        if value is None:
            if not self.nullable:
                raise InvalidSchemaValue("Null value for non-nullable schema", value, self.type)
            return self.default

        cast_mapping = self.get_cast_mapping(
            custom_formatters=custom_formatters, strict=strict)

        if self.type is not SchemaType.STRING and value == '':
            return None

        cast_callable = cast_mapping[self.type]
        try:
            return cast_callable(value)
        except ValueError:
            raise InvalidSchemaValue(
                "Failed to cast value {value} to type {type}", value, self.type)
def cast ( self , value , custom_formatters = None , strict = True ) : if value is None : if not self . nullable : raise InvalidSchemaValue ( "Null value for non-nullable schema" , value , self . type ) return self . default cast_mapping = self . get_cast_mapping ( custom_formatters = custom_formatters , strict = strict ) if self . type is not SchemaType . STRING and value == '' : return None cast_callable = cast_mapping [ self . type ] try : return cast_callable ( value ) except ValueError : raise InvalidSchemaValue ( "Failed to cast value {value} to type {type}" , value , self . type )
Cast value to schema type