qbit - Setup envirement to development modern perl applications and add some functions.


Using this pragma is equivalent:

 use strict;
 use warnings FATAL => 'all';
 use utf8;
 use open qw(:std utf8);

 use Scalar::Util qw(set_prototype blessed dualvar isweak readonly refaddr reftype tainted weaken isvstring looks_like_number);
 use Data::Dumper qw(Dumper);
 use Clone        qw(clone);

 use qbit::Exceptions;
 use qbit::Log;
 use qbit::Array;
 use qbit::Hash;
 use qbit::GetText;
 use qbit::Packages;
 use qbit::StringUtils;
 use qbit::Date;
 use qbit::File;


 use qbit;

 sub myfunc {
     my ($a1, $a2) = @_;

     throw Exception::BadArguments gettext('First argument must be defined')
         unless defined($a1);

     return ....

 try {
    my $data = myfunc(@ARGV);
 } catch Exception::BadArguments with {
     l shift->as_string();

Internal packages

qbit::Exceptions - realize base classes and functions to use exception in perl;
qbit::Log - there're some function to simple logging;
qbit::Array - there're some function to working with arrays;
qbit::Hash - there're some function to working with hashes;
qbit::GetText - there're some function to internationalization your's software;
qbit::Packages - there're some function to access package internals;
qbit::StringUtils - there're some function to working with strings;
qbit::Date - there're some function to working with dates;
qbit::File - there're some function to manage files.