📄 localtime.pm
字号:
package Time::localtime;use strict;use 5.006_001;use Time::tm;our(@ISA, @EXPORT, @EXPORT_OK, %EXPORT_TAGS, $VERSION);BEGIN { use Exporter (); @ISA = qw(Exporter Time::tm); @EXPORT = qw(localtime ctime); @EXPORT_OK = qw( $tm_sec $tm_min $tm_hour $tm_mday $tm_mon $tm_year $tm_wday $tm_yday $tm_isdst ); %EXPORT_TAGS = ( FIELDS => [ @EXPORT_OK, @EXPORT ] ); $VERSION = 1.02;}use vars @EXPORT_OK;sub populate (@) { return unless @_; my $tmob = Time::tm->new(); @$tmob = ( $tm_sec, $tm_min, $tm_hour, $tm_mday, $tm_mon, $tm_year, $tm_wday, $tm_yday, $tm_isdst ) = @_; return $tmob;} sub localtime (;$) { populate CORE::localtime(@_ ? shift : time)}sub ctime (;$) { scalar CORE::localtime(@_ ? shift : time) } 1;__END__=head1 NAMETime::localtime - by-name interface to Perl's built-in localtime() function=head1 SYNOPSIS use Time::localtime; printf "Year is %d\n", localtime->year() + 1900; $now = ctime(); use Time::localtime; use File::stat; $date_string = ctime(stat($file)->mtime);=head1 DESCRIPTIONThis module's default exports override the core localtime() function,replacing it with a version that returns "Time::tm" objects.This object has methods that return the similarly named structure fieldname from the C's tm structure from F<time.h>; namely sec, min, hour,mday, mon, year, wday, yday, and isdst.You may also import all the structure fields directly into your namespaceas regular variables using the :FIELDS import tag. (Note that this stilloverrides your core functions.) Access these fields asvariables named with a preceding C<tm_> in front their method names.Thus, C<$tm_obj-E<gt>mday()> corresponds to $tm_mday if you importthe fields.The ctime() function provides a way of getting at the scalar sense of the original CORE::localtime() function.To access this functionality without the core overrides,pass the C<use> an empty import list, and then accessfunction functions with their full qualified names.On the other hand, the built-ins are still availablevia the C<CORE::> pseudo-package.=head1 NOTEWhile this class is currently implemented using the Class::Structmodule to build a struct-like class, you shouldn't rely upon this.=head1 AUTHORTom Christiansen
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -