Method: Module#_attr_reader

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

#_attr_reader(*syms) ⇒ Object

protected attribute (ivar) reader



55
56
57
58
59
60
61
62
63
64
# File 'lib/kiss/ext/core.rb', line 55

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