úÎd-     None !"(*+24;=HMçA PathSegment is any single element of a path...i.e. the stuff between two '/' characters. Valid path segments cannot contain '/' or control characters. PathSegments are also monoids to allow mappending with prefixes/suffixes.Every  is a valid string ŒSmart constructor for valid PathSegments. Valid path segments cannot contain front slashes or control characters. This function performs all the checks up front.Is the string non-empty?>Does the string contain forward slashes or control characters? sSmart constructor for directories. Valid directories must be valid PathSegments and also cannot be empty strings.)This function basically defines what the ^ type is semantically. It is string like thing which you can safely create a path from. See  , gSmart constructor for files. Valid files must be valid PathSegments and also cannot be empty strings.+  !"#$%&'()*  !  !"#$%&'()* +       !"#$%&'()*+data-filepath-2.1.1.0 Data.FilePathFilePathFromRelativeRootPath DirectoryFile PathSegment segString mkPathSegmentrootPath relativePath mkDirPath mkDirPathSeg mkFilePath mkFilePathSegmkRootFilePathBasemkFullFilePathdirnamebasename basenameSegshowpsegQdirpathQ filepathQ DirectoryPath RelativePathRootPath _segString tFilePath cRootPath cRelativePath cFilePathcDirectoryPath$fDataFilePath$fDataFilePath0$fDataFilePath1$fDataFilePath2$fShowFilePath$fSemigroupPathSegment