module Genericer::General

Public Class Methods

general(name, value) click to toggle source
# File lib/generic/routing.rb, line 24
def self.general(name, value)
  @g ||= []
  @g << name
  self.class.send(:attr_accessor, name)
  self.send("#{name}=", value)
end
included(base) click to toggle source
# File lib/generic/routing.rb, line 22
def self.included(base)
  base.class_eval do
    def self.general(name, value)
      @g ||= []
      @g << name
      self.class.send(:attr_accessor, name)
      self.send("#{name}=", value)
    end

    def self.inherited(sc)
      @g.each do |a|
        sc.general(a, self.send(a).deep_dup)
      end
    end
  end
end
inherited(sc) click to toggle source
# File lib/generic/routing.rb, line 31
def self.inherited(sc)
  @g.each do |a|
    sc.general(a, self.send(a).deep_dup)
  end
end