lepsi varianta $^S (virtualizace)
Honza Pazdziora
adelton na fi.muni.cz
Úterý Říjen 25 11:23:50 MEST 2005
On Tue, Oct 25, 2005 at 10:55:42AM +0200, Jan Kasprzak wrote:
>
> existuje nejaka lepsi varianta $^S ktera by mi rekla, v kolikatem
> vnorenem eval { } se nachazim, pripadne jeste lepe, neco co by se
> zavolalo pri vstupu a opusteni eval { } ?
>
> Mam snahu zachycovat chybovy vystup (vychazim z Tie::STDERR),
> ale chtel bych, aby tohle zachyceni fungovalo i ve vecech, ktere
> bezi uvnitr evalu (cili treba ModPerl::Registry), ale zase abych
> nesebral chybovy vystup tem pode mnou, co ho chteji taky zachycovat
> (cili vnoreny eval { } a vyjimky).
Jde Ti o chybovy vystup, nebo o ty vyjimky (nebo o oboji)? Pokud
o vyjimky, tak $SIG{__DIE__}:
$ perl
$SIG{__DIE__} = sub { print "siged [@_]\n"; };
eval {
eval {
die "Krtek";
};
print "evaled2 [$@]\n";
DBI->connect;
};
print "evaled1 [$@]\n";
__END__
siged [Krtek at - line 4.
]
evaled2 [Krtek at - line 4.
]
siged [Can't locate object method "connect" via package "DBI" (perhaps you forgot to load "DBI"?) at - line 7.
]
evaled1 [Can't locate object method "connect" via package "DBI" (perhaps you forgot to load "DBI"?) at - line 7.
]
Pokud Ti jde o STDERR, tak by melo zabrat to tie STDERR.
Kdyztak dej priklad situaci, kdy se to ma jak chovat.
--
------------------------------------------------------------------------
Honza Pazdziora | adelton na fi.muni.cz | http://www.fi.muni.cz/~adelton/
.project: Perl, mod_perl, DBI, Oracle, large Web systems, XML/XSL, ...
Only self-confident people can be simple.
Další informace o konferenci Perl