class ViewModel::Record::AttributeData

Attributes

attribute_serializer[R]
attribute_viewmodel[R]
model_attr_name[R]
name[R]

Public Class Methods

new(name:, model_attr_name:, attribute_viewmodel:, attribute_serializer:, array:, read_only:, write_once:) click to toggle source
# File lib/view_model/record/attribute_data.rb, line 6
def initialize(name:,
               model_attr_name:,
               attribute_viewmodel:,
               attribute_serializer:,
               array:,
               read_only:,
               write_once:)
  @name                 = name
  @model_attr_name      = model_attr_name
  @attribute_viewmodel  = attribute_viewmodel
  @attribute_serializer = attribute_serializer
  @array                = array
  @read_only            = read_only
  @write_once           = write_once
end

Public Instance Methods

array?() click to toggle source
# File lib/view_model/record/attribute_data.rb, line 26
def array?
  @array
end
association?() click to toggle source
# File lib/view_model/record/attribute_data.rb, line 22
def association?
  false
end
map_value(value) { |v| ... } click to toggle source
# File lib/view_model/record/attribute_data.rb, line 46
def map_value(value)
  if array?
    value.map { |v| yield(v) }
  else
    yield(value)
  end
end
read_only?() click to toggle source
# File lib/view_model/record/attribute_data.rb, line 30
def read_only?
  @read_only
end
using_serializer?() click to toggle source
# File lib/view_model/record/attribute_data.rb, line 38
def using_serializer?
  !@attribute_serializer.nil?
end
using_viewmodel?() click to toggle source
# File lib/view_model/record/attribute_data.rb, line 42
def using_viewmodel?
  !@attribute_viewmodel.nil?
end
write_once?() click to toggle source
# File lib/view_model/record/attribute_data.rb, line 34
def write_once?
  @write_once
end