Method: Module#_attr_accessor

Defined in:
lib/kiss/ext/core.rb

#_attr_accessor(*syms) ⇒ Object

protected attribute (ivar) accessor



67
68
69
70
71
72
73
74
75
76
77
# File 'lib/kiss/ext/core.rb', line 67

def _attr_accessor(*syms)
  class_eval(
    syms.flatten.map do |sym|
      sym.is_a?(Hash) ? '' : %Q(
        @_#{sym} = nil unless defined? @_#{sym}
        def #{sym}; @_#{sym}; end
        def #{sym}=(v); @_#{sym} = v; end
      )
    end.join, __FILE__, __LINE__
  )
end