From: sur max Date: 2007-02-19T00:54:53+09:00 Subject: Re: Instance variable exists? ------=_Part_16867_4741189.1171814088840 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Rdoc is there !! >>ri instance_variable_get ------------------------------------------- Object#instance_variable_get obj.instance_variable_get(symbol) => obj ------------------------------------------------------------------------ Returns the value of the given instance variable (or throws a +NameError+ exception). The +@+ part of the variable name should be included for regular instance variables class Fred def initialize(p1, p2) @a, @b = p1, p2 end end fred = Fred.new('cat', 99) fred.instance_variable_get(:@a) #=> "cat" fred.instance_variable_get("@b") #=> 99 On 2/18/07, Jason Mayer wrote: > > On 2/18/07, SonOfLilit wrote: > > > > aur-sarafs-computer:~ aursaraf$ ri Object#instance_variable_get -T > > ------------------------------------------- Object#instance_variable_get > > instance_variable_get(ivarname) > > ------------------------------------------------------------------------ > > (no description...) > > aur-sarafs-computer:~ aursaraf$ ruby -v > > ruby 1.8.5 (2006-12-04 patchlevel 2) [i686-darwin8.8.1] > > > > > As you're hopefully aware, though, it's probably not particularly > > > straightforward because it's discouraged in general. Peeking at an > > > object's instance variables is kinda intruding on its privacy. There > > > are some valid uses to be sure, but usually I think you're better off > > > providing accessors for anything of interest outside the object. > > > > > > > Question: Why does Object#instance_varialbe_get have no > documentation? > > > > It's behaviour isn't that clear in cases like > > > > > > Where are you looking? "ri instance_variable_get" gives me docs. > > > FYI I get the same thing. > E:\Documents and Settings\Jason>ri instance_variable_get > ------------------------------------------- Object#instance_variable_get > instance_variable_get(ivarname) > ------------------------------------------------------------------------ > (no description...) > > E:\Documents and Settings\Jason>ruby -v > ruby 1.8.5 (2006-08-25) [i386-mswin32] > > documentation here: > http://www.ruby-doc.org/core/classes/Object.src/M000323.html > -- sur http://expressica.com ------=_Part_16867_4741189.1171814088840--