[bcn-pm] sobre $DB::single i perl debugger
Alex Muntada
alexm a alexm.org
dic nov 5 15:56:55 PST 2008
* Albert Vilella <avilella a gmail.com>:
> Una pregunta sobre $DB::single i el debugger de perl.
> Si afegeixo una linia en el meu codi com:
>
> $DB::single=1;1;
>
> Puc aturar el debugger quan corre amb "perl -d".
No ho sabia. És molt interessant això, m'has tingut una bona estona
distret avui :-)
> Una vegada el debugger s'ha aturat en la linia, es pot desactivar
> el breakpoint d'alguna manera sense eliminar la linia i reiniciar el
> debugger?
Amb «$DB::single = 1» no pots canviar-ho. Però remenant per google
he anat a petar a un article del diari d'en shwern que explica que
$DB::single també admet expressions. Així el que tu necessites és:
my $stop = 1;
$DB::single = $stop;
I quan ets dins el debugger, quan ja no vulguis aturar-te més només
et cal dir-li això al debugger:
$stop = 0
Aleshores ja pots continuar l'execució de forma normal.
L'article d'en schwern (Data::Dump::Streamer + $DB::single):
http://use.perl.org/~schwern/journal/35427
--
Alex Muntada <alexm a alexm.org>
http://alexm.org/
Més informació sobre la llista de correu Barcelona-pm