Path iterator.
This is an input iterator that iterates over the individual components in path. The traversal order is as follows:
- The root-name element, if present.
- The root-directory element, if present.
- Each successive filename element, if present.
- Dot, if one or more trailing non-root slash characters are present. Traversing backwards is possible with reverse_iterator
Iteration examples. Each component is separated by ',':
/ => /
/foo => /,foo
foo/ => foo,.
/foo/bar => /,foo,bar
../ => ..,.
C:\foo\bar => C:,/,foo,bar