ForNeVeR/TruePath

Platform-specific methods (quoting etc.) for local paths

ForNeVeR opened this issue · 0 comments

First of all, there are some specific APIs for paths (say, GetCompressedFileSize on Windows, also Unix rights and Windows ACLs) which we may seek to implement.

Second: there are several absolutely different ways to convert paths to strings. For certain Windows APIs, it's important to handle these properly (i.e. quote paths, or append a UNC prefix where appropriate, see Vacuum's AbsolutePath as inspiration).

Obviously, not all users want the platform-specific parts of the file path API, so we may include some separate platform-specific packages for all of this.

I imagine our users calling something like

LocalPath fsp =;
MyNativeFuncs.DoWinApiOperation(fsp.QuoteWinApi()); // QuoteWinApi is an extension

Or, say

LocalPath fsp =;
WindowsACL acl = fsp.GetAcl(); // an extension from Win package
UnixRights rights = fsp.GetUnixPermissions(); // an extension from Unix package