class Fried::Schema::Attribute::DefineReader
Define reader based on attribute {Definition}
Public Class Methods
build()
click to toggle source
# File lib/fried/schema/attribute/define_reader.rb, line 6 def self.build new end
call(attribute_definition, klass)
click to toggle source
# File lib/fried/schema/attribute/define_reader.rb, line 10 def self.call(attribute_definition, klass) instance = build instance.(attribute_definition, klass) end
Public Instance Methods
call(definition, klass)
click to toggle source
Creates read method @param definition [Definition] @param klass [Class, Module] @return [Definition]
# File lib/fried/schema/attribute/define_reader.rb, line 19 def call(definition, klass) variable = definition.instance_variable klass.instance_eval do define_method(definition.reader) { instance_variable_get(variable) } end end