module Odex::Init
Initializer
Public Class Methods
included(base)
click to toggle source
# File lib/odex/app.rb, line 120 def self.included(base) base.class_eval do def self.init_methods name, value @_methods ||= [] @_methods << name self.class.send(:attr_accessor, name) self.send("#{name}=", value) end def self.inherited(subclass) @_methods.each do |attr| subclass.init_methods attr, self.send(attr).deep_dup end end end end
inherited(subclass)
click to toggle source
# File lib/odex/app.rb, line 129 def self.inherited(subclass) @_methods.each do |attr| subclass.init_methods attr, self.send(attr).deep_dup end end
init_methods(name, value)
click to toggle source
# File lib/odex/app.rb, line 122 def self.init_methods name, value @_methods ||= [] @_methods << name self.class.send(:attr_accessor, name) self.send("#{name}=", value) end