Refactor: Added de::NativePath and applied it where appropriate
The advantages to having a specialized string class just for nativepaths are manifold:
- API of the String class is not encumbered by two different versions of basic path manipulation methods, one for native and one for deng paths.
- The generic String class is not cluttered by specialized methods for processing native paths (like replacing symbols).
- Responsibility of ensuring that the correct separators are used is lifted from the programmer as NativePath will convert automatically.
- One can use the /-operator to concatenate native paths without having to think about which separators to use.
- It is explicit in the APIs which paths are to the native file system and are not deng paths (self-documenting code).
View differences
Refactor: Added de::NativePath and applied it where appropriate
The advantages to having a specialized string class just for native
paths are manifold:
- API of the String class is not encumbered by two different versions
of basic path manipulation methods, one for native and one for deng
paths.
- The generic String class is not cluttered by specialized methods
for processing native paths (like replacing symbols).
- Responsibility of ensuring that the correct separators are used is
lifted from the programmer as NativePath will convert automatically.
- One can use the /-operator to concatenate native paths without
having to think about which separators to use.
- It is explicit in the APIs which paths are to the native file system
and are not deng paths (self-documenting code).