NAME
Quiq::Debug - Hilfe beim Debuggen von Programmen
BASE CLASS
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
Textvergleich
showDiff() - Zeige Differenz zwischen zwei Dateien
Synopsis
$str = $this->showDiff($file1,$file2,@opt);
Options
Description
Zeige die Differenz zwischen zwei Dateien. Die Anzeige wird auf die Breite des Terminals eingestellt.
Example
perl -MQuiq::Debug -E 'print Quiq::Debug->showDiff($file1,$file2)' | less
showRdiff() - Zeige Differenz einer Datei in zwei Verzeichnissen, lokal und remote
Synopsis
$str = $this->showRdiff($lRoot,$rRoot,$file,%options);
Arguments
Options
Returns
(String) Differenz, wie sie von diff(1) dargestellt wird.
Description
Das Kommando ermittelt die Differenz einer Datei in zwei Verzeichnissen mit der gleichen Struktur, wobei das eine Verzeichnis lokal und das andere remote ist, und liefert diese Differenz zurück.
Example
Differenz einer Datei in ZUGFeRD-Installation in Entwicklungs- und Produktivumgebung:
$ perl -MQuiq::Debug -E 'print Quiq::Debug->showRdiff($ENV{"ZUGFERD_HOME"},"z3po\@z3po:/opt/Zugferd","etc/niederlassung.csv")'
VERSION
1.236
AUTHOR
Frank Seitz, http://fseitz.de/
COPYRIGHT
Copyright (C) 2026 Frank Seitz
LICENSE
This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.