From: Brian Candler Date: 2009-05-31T03:48:16+09:00 Subject: Re: Listing an Array created within a Class Adrian Arlechin wrote: > I am learning from Programming Ruby wich comes with Ruby instalation. > In the chapter about containers - Implementing a SongList Container > I took the code in NetBeans like follows: > > require 'Baza.rb' #here is my Song class > class SongList < Song > def initialize > @songs = Array.new > end > end > > class SongList > def append(aSong) > @songs.push(aSong) > self > end > end > > list = SongList.new > list. > append(Song.new('title1', 'artist1', 1)). > append(Song.new('title2', 'artist2', 2)). > append(Song.new('title3', 'artist3', 3)). > append(Song.new('title4', 'artist4', 4)) > > ############# Here is my problem > puts list.to_a ????????? class SongList def to_a @songs end end puts list.to_a OR: class SongList attr_accessor :songs end puts list.songs OR: another way is to make your SongList class duck-type like an Array class SongList def [](elem) @songs[elem] end def []=(elem,obj) @songs[elem] = obj end # ... etc end -- Posted via http://www.ruby-forum.com/.