]> wagnertech.de Git - mfinanz.git/blobdiff - SL/LXDebug.pm
Funktion zum Dumpen von Objekten via YAML hinzugefügt. Ist manchmal besser lesbar...
[mfinanz.git] / SL / LXDebug.pm
index 76edd8257b93193bc18daa3f172ea79dcb300d37..cbb32f9cde37eeab7f720bdf9342ee022507fd7e 100644 (file)
@@ -14,6 +14,8 @@ use constant STDERR_TARGET => 1;
 
 use POSIX qw(strftime);
 
+use YAML;
+
 my $data_dumper_available;
 
 our $global_level;
@@ -108,7 +110,7 @@ sub show_backtrace {
   $self->message(BACKTRACE_ON_ERROR, "Starting full caller dump:");
   my $level = 0;
   while (my ($dummy, $filename, $line, $subroutine) = caller $level) {
-    $self->message(BACKTRACE_ON_ERROR, "${subroutine} from ${filename}:${line}");
+    $self->message(BACKTRACE_ON_ERROR, "  ${subroutine} from ${filename}:${line}");
     $level++;
   }
 
@@ -133,6 +135,12 @@ sub dump {
   }
 }
 
+sub dump_yaml {
+  my ($self, $level, $name, $variable) = @_;
+
+  $self->message($level, "dumping ${name}:\n" . YAML::Dump($variable));
+}
+
 sub enable_sub_tracing {
   my ($self) = @_;
   $self->{level} | TRACE;