# Copyright (c) 2000-2004 Graham Barr . All rights reserved. # This program is free software; you can redistribute it and/or # modify it under the same terms as Perl itself. package Net::LDAP::Extra; use strict; use vars qw($VERSION); require Net::LDAP; require Carp; $VERSION = "0.01"; sub import { shift; local $SIG{__DIE__} = \&Carp::croak; foreach (@_) { my $file = "Net/LDAP/Extra/$_.pm"; next if exists $INC{$file}; require $file; "Net::LDAP::Extra::$_"->import; } } 1; __END__ =head1 NAME Net::LDAP::Extra -- Load extra Net::LDAP methods =head1 SYNOPSIS use Net::LDAP::Extra qw(my_extn); $ldap = Net::LDAP->new( ... ); $ldap->my_extn( ... ); =head1 DESCRIPTION C allows extra methods to be added to Net::LDAP. Normally such methods would be added by sub-classing Net::LDAP, but this proves to get messy as different people write different additions and others want to use multiple of these sub-classes. Users end up having to create sub-classes of their own which inherit from all the extension sub-classes just so they can get all the features. C allows methods to be added directly to all Net::LDAP objects. This can be done by creating a class C which exports functions. A C will then make these functions avaliable as a methods on all C objects. Care should be taken when choosing names for the functions to export to ensure that they do not clash with others. =cut