NAME

Quiq::Debug - Hilfe beim Debuggen von Programmen

BASE CLASS

Quiq::Object

METHODS

Datenstrukturen

dump() - Liefere Datenstruktur in lesbarer Form

Synopsis

$str = $this->dump($ref,@opt);

Arguments

$ref

Referenz auf eine Datenstruktur.

@opt

Optionen der Funktion np() des Moduls Data::Printer. Dokumentation siehe dort.

Description

Liefere eine Perl-Datenstruktur beliebiger Tiefe in lesbarer Form als Zeichenkette, so dass sie zu Debugzwecken ausgegeben werden kann. Die Methode nutzt das Modul Data::Printer und davon die Funktion np(). Die Optionen @opt werden an diese Funktion weiter geleitet.

Example

Quiq::Debug->dump($obj,colored=>1))

Module

modulePaths() - Pfade der geladenen Perl Moduldateien

Synopsis

$str = $this->modulePaths;

Description

Liefere eine Aufstellung der Pfade der aktuell geladenen Perl Moduldateien. Ein Modulpfad pro Zeile, alphabetisch sortiert.

Example

Die aktuell geladenen Moduldateien auf STDOUT ausgeben:

print Quiq::Debug->modulePaths;
==>
/home/fs/lib/perl5/Quiq/Debug.pm
/home/fs/lib/perl5/Quiq/Object.pm
/home/fs/lib/perl5/Perl/Quiq/Stacktrace.pm
/usr/share/perl/5.20/base.pm
/usr/share/perl/5.20/strict.pm
/usr/share/perl/5.20/vars.pm
/usr/share/perl/5.20/warnings.pm
/usr/share/perl/5.20/warnings/register.pm

Subroutines

findSubroutine() - Suche Subroutine

Synopsis

@arr | $str = $this->findSubroutine($pattern);

Description

Suche die Subroutines, die den Pattern $pattern erfüllen, in den Moduldateien (.pm) entlang der Pfade in @INC. Im Array-Kontext liefere die Liste der Modulnamen, im Skalarkontext die Liste als Zeichenkette (ein Modulpfad pro Zeile).

Example

ANPASSEN

Die aktuell geladenen Moduldateien auf STDOUT ausgeben:

print Quiq::Debug->findSubroutine;
==>
/home/fs/lib/perl5/Quiq/Debug.pm
/home/fs/lib/perl5/Quiq/Object.pm
/home/fs/lib/perl5/Perl/Quiq/Stacktrace.pm
/usr/share/perl/5.20/base.pm
/usr/share/perl/5.20/strict.pm
/usr/share/perl/5.20/vars.pm
/usr/share/perl/5.20/warnings.pm
/usr/share/perl/5.20/warnings/register.pm

VERSION

1.222

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2024 Frank Seitz

LICENSE

This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.