in reply to monitor STDOUT in scalar
You should be able to inherit from Tie::Handle (part of the
standard distribution) and override any methods you wish to
define yourself:
For example, maybe you want to trap every call to STDOUT and prefix each argument with a string of your own:package MySTDOUT; use Tie::Handle; @ISA = qw/Tie::Handle/; sub TIEHANDLE { my $class = shift; bless {}, $class; } package main; tie *STDOUT, 'MySTDOUT';
Printspackage MySTDOUT; use Tie::Handle; @ISA = qw/Tie::Handle/; sub TIEHANDLE { my $class = shift; bless {}, $class; } sub PRINT { my $self = shift; my $caller = caller; print STDERR map "$caller: $_", @_; } package main; tie *STDOUT, 'MySTDOUT'; print "Foo";
Take a look at the Apache module and Apache::Filter for some examples of tying STDOUT.main: Foo
|
---|
Replies are listed 'Best First'. | |
---|---|
RE: Re: monitor STDOUT in scalar
by Adam (Vicar) on Aug 10, 2000 at 20:14 UTC | |
by btrott (Parson) on Aug 11, 2000 at 03:08 UTC | |
by Adam (Vicar) on Aug 11, 2000 at 04:58 UTC |
In Section
Seekers of Perl Wisdom