class Kludge::Mishmash

Public Class Methods

many(name, options = {}) click to toggle source
# File lib/kludge/mishmash.rb, line 18
def self.many(name, options = {})
  parts << Many.new(name, options)
  attr_reader name

  define_method "#{name}=" do |value|
    @parts.find { |part| part.name == name }.value = value
    instance_variable_set("@#{name}", value)
  end
end
new(attributes = {}) click to toggle source
# File lib/kludge/mishmash.rb, line 28
def initialize(attributes = {})
  @parts = self.class.parts.dup
  attributes.each do |key, value|
    send("#{key}=", value)
  end
end
one(name, options = {}) click to toggle source
# File lib/kludge/mishmash.rb, line 8
def self.one(name, options = {})
  parts << One.new(name, options)
  attr_reader name

  define_method "#{name}=" do |value|
    @parts.find { |part| part.name == name }.value = value
    instance_variable_set("@#{name}", value)
  end
end
parts() click to toggle source
# File lib/kludge/mishmash.rb, line 4
def self.parts
  @parts ||= Parts.new
end

Public Instance Methods

save() click to toggle source
# File lib/kludge/mishmash.rb, line 35
def save
  @parts.save
end
valid?() click to toggle source
# File lib/kludge/mishmash.rb, line 39
def valid?
  @parts.valid?
end