Arthas-Defaults

 view release on metacpan or  search on metacpan

lib/Arthas/Defaults/536.pm  view on Meta::CPAN

package Arthas::Defaults::536;

use v5.36;
use warnings FATAL => 'all';
no warnings 'uninitialized';
use utf8;
use feature();
use feature 'try';
no warnings 'experimental::try';
no warnings 'experimental::defer';
use version;
use Carp qw/carp croak confess cluck/;

require Exporter;
our @ISA       = ('Exporter');
our @EXPORT    = qw/
    carp croak confess cluck
/;

sub import {
    feature->import(':5.36');
    strict->import();
    warnings->import(FATAL => 'all');
    warnings->unimport('uninitialized');
    utf8->import();

    if ($^V lt v5.40.0) {
        experimental->import('try');
        experimental->import('defer');
    } else {
        feature->import('try');
        feature->import('defer');
    }

    # Export all @EXPORT
    Arthas::Defaults::536->export_to_level(1, @_);
}

sub unimport {
    feature->unimport();
    strict->unimport();
    warnings->unimport();
    utf8->unimport();

    experimental->unimport('try');
    experimental->unimport('defer');
}

1;

__END__

=head1 NAME

Arthas::Defaults::536 - Defaults for coding with perl 5.36 - Do not use if you're not Arthas

=head1 SYNOPSIS

    use Arthas::Defaults::536;

=head1 DESCRIPTION

It's like saying:

    use v5.36;
    use utf8;
    use warnings;
    no warnings 'uninitialized';
    use experimental 'signatures';
    use experimental 'try';
    use experimental 'defer';
    use Carp qw/carp croak confess cluck/;

Might change without notice, at any time. DO NOT USE!

=over

=item C<use v5.36>

This is actually C<use feature ':5.36'>. It imports some perl 5.10 -> 5.36
semantics, such as strict, given-when syntax, Unicode strings, signatures, ... See
L<feature> documentation and source code for more information.



( run in 1.599 second using v1.01-cache-2.11-cpan-f56aa216473 )