module Convection::DSL::ClassHelpers

Methods for defining DSL/Models

Public Instance Methods

attribute(attribute_name) click to toggle source
# File lib/convection/dsl/helpers.rb, line 10
def attribute(attribute_name)
  attr_writer attribute_name
  define_method(attribute_name) do |value = nil|
    instance_variable_set("@#{ attribute_name }", value) unless value.nil?
    instance_variable_get("@#{ attribute_name }")
  end
end
list(attribute_name) click to toggle source
# File lib/convection/dsl/helpers.rb, line 18
def list(attribute_name)
  define_method(attribute_name) do |value = nil|
    collection = instance_variable_get("@#{ attribute_name }")
    collection << value unless value.nil?
    collection
  end
end