Provided by: liblog-report-optional-perl_1.07-2_all bug

NAME

       Log::Report::Util - helpful routines to Log::Report

INHERITANCE

        Log::Report::Util
          is a Exporter

SYNOPSIS

        my ($language, $territory, $charset, $modifier)
           = parse_locale 'nl_BE.utf-8@home';

        my @take = expand_reasons 'INFO-ERROR,PANIC';

DESCRIPTION

       This module collects a few functions and definitions which are shared between different components in the
       Log::Report infrastructure.  They should not be needed for end-user applications, although this man-page
       may contain some useful background information.

FUNCTIONS

   Reasons
       expand_reasons($reasons)
           Returns  a  sub-set  of all existing message reason labels, based on the content $reasons string. The
           following rules apply:

            REASONS     = BLOCK [ ',' BLOCKS ] | ARRAY-of-REASON
            BLOCK       = '-' TO | FROM '-' TO | ONE | SOURCE
            FROM,TO,ONE = 'TRACE' | 'ASSERT' | ,,, | 'PANIC'
            SOURCE      = 'USER' | 'PROGRAM' | 'SYSTEM' | 'FATAL' | 'ALL' | 'NONE'

           The SOURCE specification group all reasons which are usually related to  the  problem:  report  about
           problems caused by the user, reported by the program, or with system interaction.

           example: of expended REASONS

            WARNING-FAULT # == WARNING,MISTAKE,ERROR,FAULT
            WARNING,INFO  # == WARNING,INFO
            -INFO         # == TRACE-INFO
            ALERT-        # == ALERT,FAILURE,PANIC
            USER          # == MISTAKE,ERROR
            ALL           # == TRACE-PANIC
            FATAL         # == ERROR,FAULT,FAILURE,PANIC [1.07]
            NONE          # ==

       is_fatal($reason)
           Returns true if the $reason is severe enough to cause an exception (or program termination).

       is_reason($name)
           Returns true if the STRING is one of the predefined REASONS.

       use_errno($reason)

   Modes
       Run-modes are explained in Log::Report::Dispatcher.

       mode_accepts($mode)
           Returns something acceptable by expand_reasons()

       mode_number($name|$mode)
           Returns the $mode as number.

       must_show_location($mode, $reason)
       must_show_stack($mode, $reason)

   Other
       escape_chars(STRING)
           Replace  all escape characters into their readable counterpart.  For instance, a new-line is replaced
           by backslash-n.

       parse_locale(STRING)
           Decompose a locale string.

           For simplicity of the caller's code, the capatization of the returned fields is standardized  to  the
           preferred,  although the match is case- insensitive as required by the RFC. The territory in returned
           in capitals (ISO3166), the language is lower-case (ISO639),  the  script  as  upper-case  first,  the
           character-set as lower-case, and the modifier and variant unchanged.

           In  LIST  context,  four  elements  are  returned:  language, territory, character-set (codeset), and
           modifier.  Those four are important  for  the  usual  unix  translationg  infrastructure.   Only  the
           "country" is obligatory, the others can be "undef".  It may also return "C" and "POSIX".

           In  SCALAR  context,  a  HASH  is  returned  which  can  contain  more information: language, script,
           territory, variant, codeset, and modifiers.  The variant (RFC3066 is probably never used)

       pkg2domain( $package, [$domain, $filename, $line] )
           With $domain, $filename and $line, this registers a location where the textdomain is specified.  Each
           $package can only belong to one $domain.

           Without these parameters, the registered domain for the $package is returned.

       to_html($string)
           [1.02] Escape HTML volatile characters.

       unescape_chars(STRING)
           Replace all backslash-something escapes by their escape  character.   For  instance,  backslash-t  is
           replaced by a tab character.

SEE ALSO

       This module is part of Log-Report-Optional distribution version 1.07, built on January 15, 2021. Website:
       http://perl.overmeer.net/CPAN/

LICENSE

       Copyrights 2013-2021 by [Mark Overmeer <mark@overmeer.net>]. For other contributors see ChangeLog.

       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/

perl v5.36.0                                       2022-12-06                             Log::Report::Util(3pm)