⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cygwin.pm

📁 视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.
💻 PM
字号:
package File::Spec::Cygwin;use strict;use vars qw(@ISA $VERSION);require File::Spec::Unix;$VERSION = '3.27';@ISA = qw(File::Spec::Unix);=head1 NAMEFile::Spec::Cygwin - methods for Cygwin file specs=head1 SYNOPSIS require File::Spec::Cygwin; # Done internally by File::Spec if needed=head1 DESCRIPTIONSee L<File::Spec> and L<File::Spec::Unix>.  This package overrides theimplementation of these methods, not the semantics.This module is still in beta.  Cygwin-knowledgeable folks are invitedto offer patches and suggestions.=cut=pod=over 4=item canonpathAny C<\> (backslashes) are converted to C</> (forward slashes),and then File::Spec::Unix canonpath() is called on the result.=cutsub canonpath {    my($self,$path) = @_;    return unless defined $path;    $path =~ s|\\|/|g;    # Handle network path names beginning with double slash    my $node = '';    if ( $path =~ s@^(//[^/]+)(?:/|\z)@/@s ) {        $node = $1;    }    return $node . $self->SUPER::canonpath($path);}sub catdir {    my $self = shift;    return unless @_;    # Don't create something that looks like a //network/path    if ($_[0] and ($_[0] eq '/' or $_[0] eq '\\')) {        shift;        return $self->SUPER::catdir('', @_);    }    $self->SUPER::catdir(@_);}=pod=item file_name_is_absoluteTrue is returned if the file name begins with C<drive_letter:>,and if not, File::Spec::Unix file_name_is_absolute() is called.=cutsub file_name_is_absolute {    my ($self,$file) = @_;    return 1 if $file =~ m{^([a-z]:)?[\\/]}is; # C:/test    return $self->SUPER::file_name_is_absolute($file);}=item tmpdir (override)Returns a string representation of the first existing directoryfrom the following list:    $ENV{TMPDIR}    /tmp    $ENV{'TMP'}    $ENV{'TEMP'}    C:/tempSince Perl 5.8.0, if running under taint mode, and if the environmentvariables are tainted, they are not used.=cutmy $tmpdir;sub tmpdir {    return $tmpdir if defined $tmpdir;    $tmpdir = $_[0]->_tmpdir( $ENV{TMPDIR}, "/tmp", $ENV{'TMP'}, $ENV{'TEMP'}, 'C:/temp' );}=item case_tolerantOverride Unix. Cygwin case-tolerance depends on managed mount settings andas with MsWin32 on GetVolumeInformation() $ouFsFlags == FS_CASE_SENSITIVE,indicating the case significance when comparing file specifications.Default: 1=cutsub case_tolerant () {  return 1 unless $^O eq 'cygwin'    and defined &Cygwin::mount_flags;  my $drive = shift;  if (! $drive) {      my @flags = split(/,/, Cygwin::mount_flags('/cygwin'));      my $prefix = pop(@flags);      if (! $prefix || $prefix eq 'cygdrive') {          $drive = '/cygdrive/c';      } elsif ($prefix eq '/') {          $drive = '/c';      } else {          $drive = "$prefix/c";      }  }  my $mntopts = Cygwin::mount_flags($drive);  if ($mntopts and ($mntopts =~ /,managed/)) {    return 0;  }  eval { require Win32API::File; } or return 1;  my $osFsType = "\0"x256;  my $osVolName = "\0"x256;  my $ouFsFlags = 0;  Win32API::File::GetVolumeInformation($drive, $osVolName, 256, [], [], $ouFsFlags, $osFsType, 256 );  if ($ouFsFlags & Win32API::File::FS_CASE_SENSITIVE()) { return 0; }  else { return 1; }}=back=head1 COPYRIGHTCopyright (c) 2004,2007 by the Perl 5 Porters.  All rights reserved.This program is free software; you can redistribute it and/or modifyit under the same terms as Perl itself.=cut1;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -