Class: ROM::ModelBuilder::PORO

Inherits:
ROM::ModelBuilder show all
Defined in:
lib/rom/model_builder.rb

Overview

PORO model class builder

Instance Attribute Summary

Attributes inherited from ROM::ModelBuilder

#const_name, #klass, #name, #namespace

Instance Method Summary collapse

Methods inherited from ROM::ModelBuilder

[], call, #call, #define_const, #initialize

Constructor Details

This class inherits a constructor from ROM::ModelBuilder

Instance Method Details

#define_class(attrs) ⇒ Object



88
89
90
91
92
93
94
95
96
97
98
99
100
# File 'lib/rom/model_builder.rb', line 88

def define_class(attrs)
  @klass = ::Class.new

  @klass.attr_reader(*attrs)

  @klass.class_eval("    def initialize(params)                                             # def initialize(params)\n      \#{attrs.map { |name| \"@\#{name} = params[:\#{name}]\" }.join(\"\\n\")} #   @name = params[:name]\n    end                                                                # end\n  RUBY\n\n  self\nend\n", __FILE__, __LINE__ + 1)