Sha256: 6b6c3a58548f135f6799468a287a4a5e0356d5bdfe5aadd1b5de3f4125b0e5a9

Contents?: true

Size: 786 Bytes

Versions: 2

Compression:

Stored size: 786 Bytes

Contents

module ToFactory
  class Representation
    delegate :attributes, :to => :record
    attr_accessor :klass, :name, :parent_name, :definition, :hierarchy_order, :record

    def self.from(options)
      OptionsParser.new(options).get_instance
    end

    def initialize(name, parent_name, definition=nil, record=nil)
      @name, @parent_name, @definition, @record =
        name.to_s, parent_name.to_s, definition, record
    end

    def inspect
      "#<ToFactory::Representation:#{object_id} @name: #{@name.inspect}, @parent_name: #{@parent_name.inspect}, @klass: #{klass_name_inspect}>"
    end

    def klass_name_inspect
      @klass.name.inspect rescue "nil"
    end

    def definition
      @definition ||= ToFactory::Generation::Factory.new(self).to_factory
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
to_factory-0.2.1 lib/to_factory/representation.rb
to_factory-0.2.0 lib/to_factory/representation.rb