use strict;
use warnings;
-use Carp qw/croak/;
+use Carp ();
use Cwd qw/abs_path/;
use File::Spec::Functions qw/file_name_is_absolute/;
-use Object::Tiny qw/root git cwd_repo debug/;
-
use App::Rgit::Repository;
-use App::Rgit::Utils qw/validate :levels/;
+use App::Rgit::Utils qw/:levels/;
use constant IS_WIN32 => $^O eq 'MSWin32';
=cut
sub new {
- my ($class, %args) = &validate;
+ my $class = shift;
+ $class = ref $class || $class;
+
+ my %args = @_;
my $root = $args{root};
return unless defined $root and -d $root;
}
my $conf = 'App::Rgit::Config::Default';
- eval "require $conf; 1" or croak "Couldn't load $conf: $@";
+ eval "require $conf; 1" or Carp::confess("Couldn't load $conf: $@");
my $r = App::Rgit::Repository->new(fake => 1);
return unless defined $r;
- $conf->SUPER::new(
+ bless {
root => $root,
git => $git,
cwd_repo => $r,
debug => defined $args{debug} ? int $args{debug} : WARN,
- );
+ }, $conf;
}
=head2 C<info $msg>
=head2 C<debug>
-Accessors.
+Read-only accessors.
+
+=cut
+
+BEGIN {
+ eval "sub $_ { \$_[0]->{$_} }" for qw/root git cwd_repo debug/;
+}
=head1 SEE ALSO
=head1 AUTHOR
Vincent Pit, C<< <perl at profvince.com> >>, L<http://profvince.com>.
-
+
You can contact me by mail or on C<irc.perl.org> (vincent).
=head1 BUGS