diff options
Diffstat (limited to 'ext/Fcntl/Fcntl.pm')
-rw-r--r-- | ext/Fcntl/Fcntl.pm | 30 |
1 files changed, 22 insertions, 8 deletions
diff --git a/ext/Fcntl/Fcntl.pm b/ext/Fcntl/Fcntl.pm index 32a3194326..678b7fd897 100644 --- a/ext/Fcntl/Fcntl.pm +++ b/ext/Fcntl/Fcntl.pm @@ -7,6 +7,7 @@ Fcntl - load the C Fcntl.h defines =head1 SYNOPSIS use Fcntl; + use Fcntl qw(:DEFAULT :flock); =head1 DESCRIPTION @@ -21,15 +22,24 @@ far more likely chance of getting the numbers right. Only C<#define> symbols get translated; you must still correctly pack up your own arguments to pass as args for locking functions, etc. +=head1 EXPORTED SYMBOLS + +By default your system's F_* and O_* constants (eg, F_DUPFD and O_CREAT) +are exported into your namespace. You can request that the flock() +constants (LOCK_SH, LOCK_EX, LOCK_NB and LOCK_UN) be provided by using +the tag C<:flock>. See L<Exporter>. + +Please refer to your native fcntl() and open() documentation to see +what constants are implemented in your system. + =cut -use vars qw($VERSION @ISA @EXPORT @EXPORT_OK $AUTOLOAD); +use vars qw($VERSION @ISA @EXPORT @EXPORT_OK %EXPORT_TAGS $AUTOLOAD); require Exporter; -use AutoLoader; require DynaLoader; @ISA = qw(Exporter DynaLoader); -$VERSION = "1.00"; +$VERSION = "1.03"; # Items to export into callers namespace by default # (move infrequently used names to @EXPORT_OK below) @EXPORT = @@ -38,11 +48,19 @@ $VERSION = "1.00"; FD_CLOEXEC F_RDLCK F_UNLCK F_WRLCK O_CREAT O_EXCL O_NOCTTY O_TRUNC O_APPEND O_NONBLOCK - O_NDELAY + O_NDELAY O_DEFER O_RDONLY O_RDWR O_WRONLY + O_EXLOCK O_SHLOCK O_ASYNC O_DSYNC O_RSYNC O_SYNC + F_SETOWN F_GETOWN ); + # Other items we are prepared to export if requested @EXPORT_OK = qw( + LOCK_SH LOCK_EX LOCK_NB LOCK_UN +); +# Named groups of exports +%EXPORT_TAGS = ( + 'flock' => [qw(LOCK_SH LOCK_EX LOCK_NB LOCK_UN)], ); sub AUTOLOAD { @@ -66,8 +84,4 @@ sub AUTOLOAD { bootstrap Fcntl $VERSION; -# Preloaded methods go here. Autoload methods go after __END__, and are -# processed by the autosplit program. -package Fcntl; # return to package Fcntl so AutoSplit is happy 1; -__END__ |