Sha256: 14fe5a50880622474a5ba251d3576ebb3424beb79f804daad783c10d99f75e4f
Contents?: true
Size: 911 Bytes
Versions: 11
Compression:
Stored size: 911 Bytes
Contents
require 'tempfile' module Attributor class Tempfile include Attributor::Type def self.native_type ::Tempfile end def self.example(context = Attributor::DEFAULT_ROOT_CONTEXT, options: {}) file = ::Tempfile.new(Attributor.humanize_context(context)) file.write Randgen.sentence file.write '.' file.rewind file end def self.dump(value, **_opts) value && value.read end def self.load(value, context = Attributor::DEFAULT_ROOT_CONTEXT, **options) # TODO: handle additional cases that make sense case value when ::String name = Attributor.humanize_context(context) file = ::Tempfile.new(name) file.write(value) file.rewind return file end super end def self.family String.family end def self.json_schema_type :string end end end
Version data entries
11 entries across 11 versions & 1 rubygems