概要
Module#attr_reader(*name) -> nil
詳細
インスタンス変数読み取り用のインスタンスメソッドを定義する。
つまり
class Person attr_reader :name def initialize(name) @name = name end end
は
class Person def initialize(name) @name = name end def name @name end end
と同じです。
サンプルコード
require 'pp' class Person attr_reader :name, :age def initialize(name, age) @name, @age = name, age end end person = Person.new('tanaka', 33) pp person
出力
$ ruby module_attr_reader.rb #<Person:0x0000060038cfd8 @age=33, @name="tanaka">