Sha256: ee16782b0d3ab2cfa61bdbc00c87a98700b50552ecf9e367f6dff4a0e13305ae
Contents?: true
Size: 636 Bytes
Versions: 6
Compression:
Stored size: 636 Bytes
Contents
# frozen_string_literal: true module LB class Persistence module Model # Helper for dry-struct attributes module Attributes def delete_attribute(name) @schema.delete(name) equalizer.instance_variable_get('@keys').delete(name) superclass.instance_variable_get('@schema').delete(name) @constructor = Dry::Types['coercible.hash'] .public_send(constructor_type, @schema) self end def redefine_attribute(name, type) delete_attribute(name) attribute(name, type) end end end end end
Version data entries
6 entries across 6 versions & 1 rubygems