module Kind::ImmutableAttributes::ClassMethods
Public Instance Methods
attribute(name, kind = nil, default: UNDEFINED, visibility: :public)
click to toggle source
# File lib/kind/immutable_attributes.rb, line 16 def attribute(name, kind = nil, default: UNDEFINED, visibility: :public) __attributes__[ATTRIBUTES.name!(name)] = ATTRIBUTES.value(kind, default, visibility) attr_reader(name) private(name) if visibility == :private protected(name) if visibility == :protected name end