1#line 1 "inc/Module/Install/Base.pm - /home/ivan/lib/perl5/site_perl/5.8.0/Module/Install/Base.pm"
2# $File: //depot/cpan/Module-Install/lib/Module/Install/Base.pm $ $Author: autrijus $
3# $Revision: #10 $ $Change: 1847 $ $DateTime: 2003/12/31 23:14:54 $ vim: expandtab shiftwidth=4
4
5package Module::Install::Base;
6
7#line 31
8
9sub new {
10    my ($class, %args) = @_;
11
12    foreach my $method (qw(call load)) {
13        *{"$class\::$method"} = sub {
14            +shift->_top->$method(@_);
15        } unless defined &{"$class\::$method"};
16    }
17
18    bless(\%args, $class);
19}
20
21#line 49
22
23sub AUTOLOAD {
24    my $self = shift;
25    goto &{$self->_top->autoload};
26}
27
28#line 60
29
30sub _top { $_[0]->{_top} }
31
32#line 71
33
34sub admin {
35    my $self = shift;
36    $self->_top->{admin} or Module::Install::Base::FakeAdmin->new;
37}
38
39sub is_admin {
40    my $self = shift;
41    $self->admin->VERSION;
42}
43
44sub DESTROY {}
45
46package Module::Install::Base::FakeAdmin;
47
48my $Fake;
49sub new { $Fake ||= bless(\@_, $_[0]) }
50sub AUTOLOAD {}
51sub DESTROY {}
52
531;
54
55__END__
56
57#line 115
58