10 use vars qw(@ISA %EXPORT_TAGS @EXPORT_OK @EXPORT $VERSION $AUTOLOAD);
12 @ISA = qw(Exporter DynaLoader);
14 # Items to export into callers namespace by default. Note: do not export
15 # names by default without a very good reason. Use EXPORT_OK instead.
16 # Do not simply export all your public functions/methods/constants.
18 # This allows declaration use NetSNMP::ASN ':all';
19 # If you do not need this, moving things directly into @EXPORT or @EXPORT_OK
21 %EXPORT_TAGS = ( 'all' => [ qw(
44 @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } );
71 # This AUTOLOAD is used to 'autoload' constants from the constant()
72 # XS function. If a constant is not found then control is passed
73 # to the AUTOLOAD in AutoLoader.
76 ($constname = $AUTOLOAD) =~ s/.*:://;
77 croak "& not defined" if $constname eq 'constant';
78 my $val = constant($constname, @_ ? $_[0] : 0);
80 if ($! =~ /Invalid/ || $!{EINVAL}) {
81 $AutoLoader::AUTOLOAD = $AUTOLOAD;
82 goto &AutoLoader::AUTOLOAD;
85 croak "Your vendor has not defined NetSNMP::ASN macro $constname";
90 # Fixed between 5.005_53 and 5.005_61
91 # if ($] >= 5.00561) {
92 # *$AUTOLOAD = sub () { $val };
95 *$AUTOLOAD = sub { $val };
101 bootstrap NetSNMP::ASN $VERSION;
103 # Preloaded methods go here.
105 # Autoload methods go after =cut, and are processed by the autosplit program.
109 # Below is stub documentation for your module. You better edit it!
113 NetSNMP::ASN - Perl extension for blah blah blah
122 Stub documentation for NetSNMP::ASN, created by h2xs. It looks like the
123 author of the extension was negligent enough to leave the stub
132 =head2 Exportable constants
158 A. U. Thor, a.u.thor@a.galaxy.far.far.away