From: Walton Hoops Date: 2009-09-23T06:50:36+09:00 Subject: Re: redirect STDOUT to function? Why not just override the puts/gets function to your liking? irb(main):001:0> def puts(str) irb(main):002:1> :foo irb(main):003:1> end => nil irb(main):004:0> puts "Hello World" => :foo > -----Original Message----- > From: Jonathan Castello [mailto:solugon@hotmail.com] > Sent: Monday, September 21, 2009 8:21 PM > To: ruby-talk ML > Subject: Re: redirect STDOUT to function? > > > Hmm, what do you mean by "backed by the function you want"? My whole > problem is that I don't know what function(s) to redefine in order for > the object to work reliably. For example, do all of the methods rely on > just one to access the data directly, or are there multiple such > methods I'd need to account for? > > Date: Tue, 22 Sep 2009 11:08:42 +0900 > > From: kbloom@gmail.com > > Subject: Re: redirect STDOUT to function? > > To: ruby-talk@ruby-lang.org > > > > On Tue, 22 Sep 2009 10:07:16 +0900, Jonathan Castello wrote: > > > > > Hello, > > > I'm using Ruby as a scripting language for a program that supports > the > > > WSH scripting interface, and I have a small problem: 'puts' and > other > > > output functions don't work (because STDOUT is invalid), as with > 'gets' > > > (but with STDIN). I'd like to redirect all accesses to STDOUT and > STDIN > > > to my own functions, which would handle the IO through the main > > > application's scripting interface. I know that $stdout and others > can be > > > reassigned to other IO objects, but I haven't yet found a way to > > > reliably redirect through a function instead. Of course, this is > > > probably because I'm relatively new to Ruby. Does anyone know how I > > > could do something like this?~Jonathan Castello > > > > Create a brand new IO object that's backed by the function you want. > > (Maybe a thread and a StringIO would do the trick.) > > > > --Ken > > > > -- > > Chanoch (Ken) Bloom. PhD candidate. Linguistic Cognition Laboratory. > > Department of Computer Science. Illinois Institute of Technology. > > http://www.iit.edu/~kbloom1/ > > > > > > _________________________________________________________________ > Bing brings you health info from trusted sources. > http://www.bing.com/search?q=pet+allergy&form=MHEINA&publ=WLHMTAG&crea= > TXT_MHEINA_Health_Health_PetAllergy_1x1