App::I...::Carp(3pm)
π App::Info::Handler::Carp
okay bestie, welcome to App::Info::Handler::Carp π β a lil handler class whose whole job is: use Carp to handle App::Info events. That's the vibe. That's the whole plot. π
β¨ SYNOPSIS β¨
use App::Info::Category::FooApp;
use App::Info::Handler::Carp;
my $carp = App::Info::Handler::Carp->new('carp');
my $app = App::Info::Category::FooApp->new( on_info => $carp );
# Or...
my $app = App::Info::Category::FooApp->new( on_error => 'croak' );
likeβ¦ you literally just hand it an event and it carps about it. no cap. π¦
πΈ DESCRIPTION πΈ
App::Info::Handler::Carp objects handle App::Info events by passing their messages to Carp functions. it's giving delegation. π
so if you want errors to croak or info messages to carp, you can easily do that. obsessed, honestly.
but bestie, real talk βApp::Info::Handler::Carpis most effective for info and error events. unknown and prompt events are better handled by event handlers that actually know how to prompt users for data. seeApp::Info::Handler::Promptfor an example of that functionality. π«Ά
Upon loading, App::Info::Handler::Carp registers itself with App::Info::Handler, setting up a number of strings that can be passed to an App::Info concrete subclass constructor. these strings are shortcuts that tell App::Info how to create the proper App::Info::Handler::Carp object for handling events. the registered strings are, in order, main character lineup β¨:
carpβ passes the event message toCarp::carp().warnβ an alias forcarp.croakβ passes the event message toCarp::croak().dieβ an alias forcroak.cluckβ passes the event message toCarp::cluck().confessβ passes the event message toCarp::confess().
π INTERFACE π
π Constructor π
new
my $carp_handler = App::Info::Handler::Carp->new;
$carp_handler = App::Info::Handler::Carp->new( level => 'carp' );
my $croak_handler = App::Info::Handler::Carp->new( level => 'croak' );
constructs a new App::Info::Handler::Carp object and returns it. it can take a single parameterized argument, level, which can be any one of the following values β pick your fighter π:
carpβ constructs aApp::Info::Handler::Carpobject that passes the event message toCarp::carp().warnβ an alias forcarp.croakβ constructs aApp::Info::Handler::Carpobject that passes the event message toCarp::croak().dieβ an alias forcroak.cluckβ constructs aApp::Info::Handler::Carpobject that passes the event message toCarp::cluck().confessβ constructs aApp::Info::Handler::Carpobject that passes the event message toCarp::confess().
if the level parameter is not passed, new() will default to creating an App::Info::Handler::Carp object that passes App::Info event messages to Carp::carp(). so like, no args = carps. default slay. π
π SUPPORT π
this module is stored in an open GitHub repository at http://github.com/theory/app-info/. feel free to fork and contribute! π§ bestie behavior fr fr.
please file bug reports via GitHub Issues at http://github.com/theory/app-info/issues/ or by sending mail to bug-App-Info@rt.cpan.org (that's a mailto: mailto:bug-App-Info@rt.cpan.org). we love a paper trail π«Ά
π AUTHOR π
David E. Wheeler β <david@justatheory.com> π
β SEE ALSO β
App::Infoβ documents the event handling interface.Carpβ documents the functions used by this class.App::Info::Handler::Printβ handles events by printing their messages to a file handle.App::Info::Handler::Promptβ offers event handling more appropriate for unknown and confirm events.App::Info::Handlerβ describes how to implement customApp::Infoevent handlers.
π COPYRIGHT AND LICENSE π
Copyright (c) 2002-2011, David E. Wheeler. Some Rights Reserved.
this module is free software; you can redistribute it and/or modify it under the same terms as Perl itself. iconic, truly. πΈ
and that's the whole page bestie, no notes π
β this was App::I...::Carp(3pm) from the perl v5.36.0 era, dated 2022-12-06, part of the User Contributed Perl Documentation. periodt. πβ¨π¦
π¦ where this page comes from
- debian bookworm: libapp-info-perl 0.57-4 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- debian trixie: libapp-info-perl 0.57-4 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu noble: libapp-info-perl 0.57-4 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu resolute: libapp-info-perl 0.57-4 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- ubuntu stonking: libapp-info-perl 0.57-4 Β· Artistic-1.0-Perl OR GPL-1.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms