Boost logo

Boost :

From: Dylan Nicholson (dylan_nicholson_at_[hidden])
Date: 2002-03-26 20:33:08


 --- Beman Dawes <bdawes_at_[hidden]> wrote: > Attached is an updated version of
boost\filesystem\directory.hpp.
>
> It uses the options approach discussed previously.
>
> It seems to me to be a lot cleaner and more usable than the previous
> attempt, which relied on explicitly named functions.
>
> Comments?
>
> --Beman

Definitely much neater without all the long function names.
I would expect move() and copy() to be able to take a file name for the source
and a directory name for the destination, and in this case move/copy the file
to the specified directory.

I'm not sure I'm too keen on using regular expressions for finding files, as
neither Windows or POSIX use these. POSIX allows

* = any number of any characters
? = any character
[...] = as per regex but using ! instead of ^

Also '/' can be used anywhere in the pattern to match across directories.
For instance */* will return the names of all entries in all directories
directly under the initial directory.

Furthermore any leading . must be matched explicitly. There is in fact no
pattern that will find *all* files/directories (including . and ..).

Windows is much the same except [...] isn't supported, leading .'s don't get
special treatment and *.* is the same as '*'. Both / and \ are treated as path
separators, but you can only use wildcards after the last separator (*\* is not
legal, but mypath\* is).

It would be nice if somehow these pattern matching rules could be used,
although it's not clear how.

Dylan

http://www.sold.com.au - SOLD.com.au Auctions
- 1,000s of Bargains!


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk