Provided by: libtest-simple-perl_1.302125-1_all bug

NAME

       Test2::EventFacet::Trace - Debug information for events

DESCRIPTION

       The Test2::API::Context object, as well as all Test2::Event types need to have access to
       information about where they were created.  This object represents that information.

SYNOPSIS

           use Test2::EventFacet::Trace;

           my $trace = Test2::EventFacet::Trace->new(
               frame => [$package, $file, $line, $subname],
           );

FACET FIELDS

       $string = $trace->{details}
       $string = $trace->details()
           Used as a custom trace message that will be used INSTEAD of "at <FILE> line <LINE>"
           when calling "$trace->debug".

       $frame = $trace->{frame}
       $frame = $trace->frame()
           Get the call frame arrayref.

       $int = $trace->{pid}
       $int = $trace->pid()
           The process ID in which the event was generated.

       $int = $trace->{tid}
       $int = $trace->tid()
           The thread ID in which the event was generated.

       $id = $trace->{cid}
       $id = $trace->cid()
           The ID of the context that was used to create the event.

       $hid = $trace->{hid}
       $hid = $trace->hid()
           The ID of the hub that was current when the event was created.

       $int = $trace->{nested}
       $int = $trace->nested()
           How deeply nested the event is.

       $bool = $trace->{buffered}
       $bool = $trace->buffered()
           True if the event was buffered and not sent to the formatter independent of a parent
           (This should never be set when nested is 0 or "undef").

METHODS

       Note: All facet frames are also methods.

       $trace->set_detail($msg)
       $msg = $trace->detail
           Used to get/set a custom trace message that will be used INSTEAD of "at <FILE> line
           <LINE>" when calling "$trace->debug".

           "detail()" is an alias to the "details" facet field for backwards compatibility.

       $str = $trace->debug
           Typically returns the string "at <FILE> line <LINE>". If "detail" is set then its
           value will be returned instead.

       $trace->alert($MESSAGE)
           This issues a warning at the frame (filename and line number where errors should be
           reported).

       $trace->throw($MESSAGE)
           This throws an exception at the frame (filename and line number where errors should be
           reported).

       ($package, $file, $line, $subname) = $trace->call()
           Get the caller details for the debug-info. This is where errors should be reported.

       $pkg = $trace->package
           Get the debug-info package.

       $file = $trace->file
           Get the debug-info filename.

       $line = $trace->line
           Get the debug-info line number.

       $subname = $trace->subname
           Get the debug-info subroutine name.

       $sig = trace->signature
           Get a signature string that identifies this trace. This is used to check if multiple
           events are related. The Trace includes pid, tid, file, line number, and the cid which
           is 'C\d+' for traces created by a context, or 'T\d+' for traces created by "new()".

SOURCE

       The source code repository for Test2 can be found at
       http://github.com/Test-More/test-more/.

MAINTAINERS

       Chad Granum <exodist@cpan.org>

AUTHORS

       Chad Granum <exodist@cpan.org>

COPYRIGHT

       Copyright 2018 Chad Granum <exodist@cpan.org>.

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

       See http://dev.perl.org/licenses/