home *** CD-ROM | disk | FTP | other *** search
/ Australian Personal Computer 2004 July / APC0407D2.iso / workshop / apache / files / ActivePerl-5.6.1.638-MSWin32-x86.msi / _7a3755186b6bc149fee8f23354998be4 < prev    next >
Encoding:
Text File  |  2004-04-13  |  2.9 KB  |  94 lines

  1. package File::Spec;
  2.  
  3. use strict;
  4. use vars qw(@ISA $VERSION);
  5.  
  6. $VERSION = 0.82 ;
  7.  
  8. my %module = (MacOS   => 'Mac',
  9.           MSWin32 => 'Win32',
  10.           os2     => 'OS2',
  11.           VMS     => 'VMS',
  12.           epoc    => 'Epoc');
  13.  
  14. my $module = $module{$^O} || 'Unix';
  15. require "File/Spec/$module.pm";
  16. @ISA = ("File::Spec::$module");
  17.  
  18. 1;
  19. __END__
  20.  
  21. =head1 NAME
  22.  
  23. File::Spec - portably perform operations on file names
  24.  
  25. =head1 SYNOPSIS
  26.  
  27.     use File::Spec;
  28.  
  29.     $x=File::Spec->catfile('a', 'b', 'c');
  30.  
  31. which returns 'a/b/c' under Unix. Or:
  32.  
  33.     use File::Spec::Functions;
  34.  
  35.     $x = catfile('a', 'b', 'c');
  36.  
  37. =head1 DESCRIPTION
  38.  
  39. This module is designed to support operations commonly performed on file
  40. specifications (usually called "file names", but not to be confused with the
  41. contents of a file, or Perl's file handles), such as concatenating several
  42. directory and file names into a single path, or determining whether a path
  43. is rooted. It is based on code directly taken from MakeMaker 5.17, code
  44. written by Andreas KE<ouml>nig, Andy Dougherty, Charles Bailey, Ilya
  45. Zakharevich, Paul Schinder, and others.
  46.  
  47. Since these functions are different for most operating systems, each set of
  48. OS specific routines is available in a separate module, including:
  49.  
  50.     File::Spec::Unix
  51.     File::Spec::Mac
  52.     File::Spec::OS2
  53.     File::Spec::Win32
  54.     File::Spec::VMS
  55.  
  56. The module appropriate for the current OS is automatically loaded by
  57. File::Spec. Since some modules (like VMS) make use of facilities available
  58. only under that OS, it may not be possible to load all modules under all
  59. operating systems.
  60.  
  61. Since File::Spec is object oriented, subroutines should not called directly,
  62. as in:
  63.  
  64.     File::Spec::catfile('a','b');
  65.  
  66. but rather as class methods:
  67.  
  68.     File::Spec->catfile('a','b');
  69.  
  70. For simple uses, L<File::Spec::Functions> provides convenient functional
  71. forms of these methods.
  72.  
  73. For a list of available methods, please consult L<File::Spec::Unix>,
  74. which contains the entire set, and which is inherited by the modules for
  75. other platforms. For further information, please see L<File::Spec::Mac>,
  76. L<File::Spec::OS2>, L<File::Spec::Win32>, or L<File::Spec::VMS>.
  77.  
  78. =head1 SEE ALSO
  79.  
  80. File::Spec::Unix, File::Spec::Mac, File::Spec::OS2, File::Spec::Win32,
  81. File::Spec::VMS, File::Spec::Functions, ExtUtils::MakeMaker
  82.  
  83. =head1 AUTHORS
  84.  
  85. Kenneth Albanowski <F<kjahds@kjahds.com>>, Andy Dougherty
  86. <F<doughera@lafcol.lafayette.edu>>, Andreas KE<ouml>nig
  87. <F<A.Koenig@franz.ww.TU-Berlin.DE>>, Tim Bunce <F<Tim.Bunce@ig.co.uk>>. VMS
  88. support by Charles Bailey <F<bailey@newman.upenn.edu>>.  OS/2 support by
  89. Ilya Zakharevich <F<ilya@math.ohio-state.edu>>. Mac support by Paul Schinder
  90. <F<schinder@pobox.com>>.  abs2rel() and rel2abs() written by
  91. Shigio Yamaguchi <F<shigio@tamacom.com>>, modified by Barrie Slaymaker
  92. <F<barries@slaysys.com>>.  splitpath(), splitdir(), catpath() and catdir()
  93. by Barrie Slaymaker.
  94.