|
Boost : |
From: Vladimir Prus (ghost_at_[hidden])
Date: 2002-12-16 03:05:41
Beman Dawes wrote:
> A large number of changes to the Filesystem Library have been committed
> to the CVS main trunk.
Hi Beman,
I've some comments:
1. The name 'root_directory' is confusing for me. 'directory' implies
you can stick anywhere dir there, whilie only "/" is allowed.
Unfortunetely, nothing better comes to mind.
2. Docs for 'root_directory' say
Returns: If the path contains root-directory, then string(""), else
string().
Portably provides a copy of a path's root-directory, if any. The only
possible results are "/" or "". See Path decomposition examples.
Those paragraphs contradict each other. One says "/" return is not possible,
and the other says it is.
3. Docs still use "is_null" in many places.
4. Docs for 'create_directory' don't say what happens if directory_ph is
empty. Consider
path p(.....) ;
create_directory(p.branch_path());
I'd personaly prefer if create_directory do nothing when given empty path.
Now it gives "No such file or directory" error from mkdir.
Docs for the same function mention function "branch", which does not exist:
if exists(directory_ph)) || !exists(branch(directory_ph))
^^^^^^
5. Docs for 'remove', last paragraph:
"threw and exception" should probably be "threw an exception"
6. Would it be reasonable to introduce a function "create_directories",
similiar in spirit to "remove_all"? That function would create
intermediate directories, not only the leaf one.
That's all I could spot looking at docs. Maybe, I'll come with more
issues after practical use.
- Volodya
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk