category changes
authorClaus Gittinger <cg@exept.de>
Fri, 21 Mar 2003 11:21:09 +0100
changeset 7120 da18863f943b
parent 7119 75dea3234f70
child 7121 5ce61b826f0e
category changes
Filename.st
--- a/Filename.st	Thu Mar 20 10:35:36 2003 +0100
+++ b/Filename.st	Fri Mar 21 11:21:09 2003 +0100
@@ -3314,38 +3314,6 @@
     "Modified: / 3.8.1998 / 21:22:30 / cg"
 !
 
-isAbsolute
-    "return true, if the receiver represents an absolute pathname
-     (in contrast to one relative to the current directory)."
-
-    (nameString startsWith:self class separator) ifTrue:[^ true].
-    ^ self isVolumeAbsolute
-
-    "
-     '/foo/bar' asFilename isAbsolute   
-     '..' asFilename isAbsolute         
-     '..' asAbsoluteFilename isAbsolute         
-     'source/SBrowser.st' asFilename isAbsolute  
-    "
-!
-
-isDirectory
-    "return true, if the receiver represents an existing,
-     readable directories pathname."
-
-    ^ OperatingSystem isDirectory:(self osNameForAccess)
-
-    "
-     '/foo/bar' asFilename isDirectory
-     '/tmp' asFilename isDirectory
-     'Makefile' asFilename isDirectory   
-     'c:\' asFilename isDirectory   
-     'd:\' asFilename isDirectory   
-    "
-
-    "Modified: / 21.9.1998 / 15:53:10 / cg"
-!
-
 isExecutable
     "return true, if such a file exists and is executable (by Unix's definition).
      For directories, true is returned if the directory can be entered.
@@ -3379,13 +3347,6 @@
     "
 !
 
-isExplicitRelative
-    "return true, if this name is an explicit relative name
-     (i.e. starts with './' or '../', to avoid path-prepending)"
-
-    ^ false
-!
-
 isHidden
     "return true, if the receiver represents a hidden file.
      The definitions of hidden files depends on the OS used;
@@ -3396,16 +3357,6 @@
     ^ false
 !
 
-isImplicit
-    "return true, if the receiver represents a builtin file.
-     The definitions of builtin files depends on the OS used;
-     on UNIX, '.' and '..' are builtin names."
-
-    ^ false
-
-    "Created: 18.9.1997 / 18:04:51 / stefan"
-!
-
 isMountPoint:aPathName
     "return true, if I represent a mount-point.
      Warning: 
@@ -3420,32 +3371,6 @@
     ^ OperatingSystem isMountPoint:(self name)
 !
 
-isNonEmptyDirectory
-    "return true, if the receiver represents an existing,
-     readable directories pathname, and the directory is not empty."
-
-    [
-        self directoryContentsDo:[:pathString|
-            ^ true
-        ].
-    ] on:FileStream openErrorSignal do:[
-        ^ false
-    ].
-    ^ false.
-
-    "
-     '/foo/bar' asFilename isNonEmptyDirectory
-     '/tmp' asFilename isNonEmptyDirectory
-     '/tmp/empty' asFilename makeDirectory; isNonEmptyDirectory.
-     '/tmp/empty' asFilename removeDirectory.
-     'Makefile' asFilename isNonEmptyDirectory   
-     'c:\' asFilename isNonEmptyDirectory   
-     'd:\' asFilename isNonEmptyDirectory   
-    "
-
-    "Modified: / 21.9.1998 / 15:53:10 / cg"
-!
-
 isReadable
     "return true, if such a file exists and is readable."
 
@@ -3458,83 +3383,6 @@
     "
 !
 
-isRelative
-    "return true, if this name is interpreted relative to some
-     directory (opposite of absolute)"
-
-    ^ self isAbsolute not
-
-    "
-     './foo/bar' asFilename isRelative
-     '../../foo/bar' asFilename isRelative
-     '/foo/bar' asFilename isRelative     
-     'bar' asFilename isRelative          
-    "
-
-    "Modified: 16.1.1997 / 01:19:14 / cg"
-!
-
-isRootDirectory
-    "return true, if I represent the root directory 
-     (i.e. I have no parentDir)"
-
-    "/ mhmh - should we use:
-    "/
-    "/ parentDir := self construct:'..'.
-    "/ (parentDir exists
-    "/ and:[parentDir isDirectory
-    "/ and:[parentDir id ~= self id]]) ifTrue:[
-    "/    ^ false
-    "/ ].
-    "/ ^ true
-    "/
-
-    ^ self pathName = Filename rootDirectory pathName
-
-    "Modified: 23.10.1997 / 00:38:35 / cg"
-!
-
-isSpecialFile
-    "return true, if the receiver represents a socket, named pipe, fifo
-     or device special file (i.e. anything non regular and non-directory)"
-
-    |t|
-
-    t := self type.
-    ^ (t ~= #directory and:[t ~~ #regular and:[t ~~ #symbolicLink]])
-
-    "
-     '/foo/bar' asFilename isSpecialFile
-     '/tmp' asFilename isSpecialFile
-     'Makefile' asFilename isSpecialFile   
-     'c:\' asFilename isSpecialFile   
-     'd:\' asFilename isSpecialFile   
-     '/dev/null' asFilename isSpecialFile   
-    "
-!
-
-isSymbolicLink
-    "return true, if the file represented by the receiver is a symbolic
-     link. Notice that not all OS's support symbolic links; those that do
-     not will always return false."
-
-    ^ OperatingSystem isSymbolicLink:(self osNameForFile)
-
-    "
-     'Make.proto' asFilename isSymbolicLink  
-     'Makefile' asFilename isSymbolicLink   
-    "
-!
-
-isVolumeAbsolute
-    "return true, if the receiver represents an absolute pathname
-     on some disk volume (MSDOS only)"
-
-    ^ false
-
-    "Modified: 7.9.1997 / 23:54:33 / cg"
-!
-
 isWritable
     "return true, if such a file exists and is writable."
 
@@ -4053,6 +3901,38 @@
     "Modified: 29.2.1996 / 20:21:25 / cg"
 !
 
+isAbsolute
+    "return true, if the receiver represents an absolute pathname
+     (in contrast to one relative to the current directory)."
+
+    (nameString startsWith:self class separator) ifTrue:[^ true].
+    ^ self isVolumeAbsolute
+
+    "
+     '/foo/bar' asFilename isAbsolute   
+     '..' asFilename isAbsolute         
+     '..' asAbsoluteFilename isAbsolute         
+     'source/SBrowser.st' asFilename isAbsolute  
+    "
+!
+
+isExplicitRelative
+    "return true, if this name is an explicit relative name
+     (i.e. starts with './' or '../', to avoid path-prepending)"
+
+    ^ false
+!
+
+isImplicit
+    "return true, if the receiver represents a builtin file.
+     The definitions of builtin files depends on the OS used;
+     on UNIX, '.' and '..' are builtin names."
+
+    ^ false
+
+    "Created: 18.9.1997 / 18:04:51 / stefan"
+!
+
 isParentDirectoryOf:aFilenameOrString
     "warning: may lead to automounting"
 
@@ -4086,6 +3966,51 @@
     "       
 !
 
+isRelative
+    "return true, if this name is interpreted relative to some
+     directory (opposite of absolute)"
+
+    ^ self isAbsolute not
+
+    "
+     './foo/bar' asFilename isRelative
+     '../../foo/bar' asFilename isRelative
+     '/foo/bar' asFilename isRelative     
+     'bar' asFilename isRelative          
+    "
+
+    "Modified: 16.1.1997 / 01:19:14 / cg"
+!
+
+isRootDirectory
+    "return true, if I represent the root directory 
+     (i.e. I have no parentDir)"
+
+    "/ mhmh - should we use:
+    "/
+    "/ parentDir := self construct:'..'.
+    "/ (parentDir exists
+    "/ and:[parentDir isDirectory
+    "/ and:[parentDir id ~= self id]]) ifTrue:[
+    "/    ^ false
+    "/ ].
+    "/ ^ true
+    "/
+
+    ^ self pathName = Filename rootDirectory pathName
+
+    "Modified: 23.10.1997 / 00:38:35 / cg"
+!
+
+isVolumeAbsolute
+    "return true, if the receiver represents an absolute pathname
+     on some disk volume (MSDOS only)"
+
+    ^ false
+
+    "Modified: 7.9.1997 / 23:54:33 / cg"
+!
+
 localPathName
     "return the full pathname of the file represented by the receiver,
      but without any volume information.
@@ -4215,6 +4140,83 @@
     "Modified: 8.9.1997 / 00:37:33 / cg"
 ! !
 
+!Filename methodsFor:'queries-type'!
+
+isDirectory
+    "return true, if the receiver represents an existing,
+     readable directories pathname."
+
+    ^ OperatingSystem isDirectory:(self osNameForAccess)
+
+    "
+     '/foo/bar' asFilename isDirectory
+     '/tmp' asFilename isDirectory
+     'Makefile' asFilename isDirectory   
+     'c:\' asFilename isDirectory   
+     'd:\' asFilename isDirectory   
+    "
+
+    "Modified: / 21.9.1998 / 15:53:10 / cg"
+!
+
+isNonEmptyDirectory
+    "return true, if the receiver represents an existing,
+     readable directories pathname, and the directory is not empty."
+
+    [
+        self directoryContentsDo:[:pathString|
+            ^ true
+        ].
+    ] on:FileStream openErrorSignal do:[
+        ^ false
+    ].
+    ^ false.
+
+    "
+     '/foo/bar' asFilename isNonEmptyDirectory
+     '/tmp' asFilename isNonEmptyDirectory
+     '/tmp/empty' asFilename makeDirectory; isNonEmptyDirectory.
+     '/tmp/empty' asFilename removeDirectory.
+     'Makefile' asFilename isNonEmptyDirectory   
+     'c:\' asFilename isNonEmptyDirectory   
+     'd:\' asFilename isNonEmptyDirectory   
+    "
+
+    "Modified: / 21.9.1998 / 15:53:10 / cg"
+!
+
+isSpecialFile
+    "return true, if the receiver represents a socket, named pipe, fifo
+     or device special file (i.e. anything non regular and non-directory)"
+
+    |t|
+
+    t := self type.
+    ^ (t ~= #directory and:[t ~~ #regular and:[t ~~ #symbolicLink]])
+
+    "
+     '/foo/bar' asFilename isSpecialFile
+     '/tmp' asFilename isSpecialFile
+     'Makefile' asFilename isSpecialFile   
+     'c:\' asFilename isSpecialFile   
+     'd:\' asFilename isSpecialFile   
+     '/dev/null' asFilename isSpecialFile   
+    "
+!
+
+isSymbolicLink
+    "return true, if the file represented by the receiver is a symbolic
+     link. Notice that not all OS's support symbolic links; those that do
+     not will always return false."
+
+    ^ OperatingSystem isSymbolicLink:(self osNameForFile)
+
+    "
+     'Make.proto' asFilename isSymbolicLink  
+     'Makefile' asFilename isSymbolicLink   
+    "
+! !
+
 !Filename methodsFor:'reading-directories'!
 
 directoryContents
@@ -4783,7 +4785,7 @@
 !Filename class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Filename.st,v 1.247 2003-03-18 14:23:20 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Filename.st,v 1.248 2003-03-21 10:21:09 cg Exp $'
 ! !
 
 Filename initialize!