
On Wed, Sep 01, 2004 at 02:20:29PM -0400, Beman Dawes wrote:
My idea on this was (and still is) that it is possible to convert a relative path to an absolute path (automatically) by adding an absolute path object reference to the relative path object.
Yes, as long as you know the absolute path reference. Is the absolute
At 08:48 PM 9/1/2004, Carlo Wood wrote: path
?? You didn't read my posts. I'd *add* that reference to a
relative_path.
Reference as in '&'.
In some of your posts it appears the conversion was automatic and in others that there is a member function which must be explicitly called. Your original proposal was pretty brief, and didn't address the issue at all. To quote the "normative text" your proposal,
1) 'native' is now not only a representation, but an *internal state* of fs::path. (this has no effect on the representation as returned by fs::path::string()). 2) All 'complete' paths are automatically marked as 'native'.
That isn't really a lot to go on, and I've almost certainly misunderstood your proposal as a result. As well as lacking technical understanding, I'm not seeing any advantage to your proposal. It appears to add complexity without any obvious benefits. 1) was tried during one of the preliminary implementations. It was abandoned because it added complexity and messiness without much benefit. 2) doesn't work; paths like "/foo" are complete but not native on single rooted operating systems which do not use the POSIX syntax.
What happens when the app wants "foo" treated as a generic rather than native format?
Is there a difference in this case?
As I mentioned in a previous post, there is a big difference in the "foo.bar" case on some important (OS/360 and derivatives) operating systems. If the format in generic, there is no translation, so the path remains "foo.bar". If the path is native, the generic translation is "foo/bar".
In the end the path must be completed, or you cannot check if it exists, period. I am sorry - but it is clear you have no idea what I am talking about from which I have to conclude that you didn't read my previous posts.
Some I didn't read, but the real problem is that I don't understand a lot of what you write. I'll try to ask more questions in the future. --Beman