proc abspath(s: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc basename(s: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc commonprefix(s: seq[string]): string {. ...raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc dirname(s: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc exists(s: string): bool {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc expanduser(s: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc expandvars(s: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc getatime(s: string): float {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc getctime(s: string): float {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc getmtime(s: string): float {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc getsize(s: string): int {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc isabs(s: string): bool {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc isdir(s: string): bool {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc isfile(s: string): bool {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc islink(s: string): bool {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc ismount(s: string): bool {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc join(a, b: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc lexists(s: string): bool {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc normcase(s: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc normpath(s: string): string {....raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc relpath(path, start: string): string {. ...raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc samefile(path1, path2: string): bool {. ...raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc split(s: string): tuple[head, tail: string] {. ...raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].} proc splitdrive(s: string): tuple[drive, path: string] {. ...raises: [Exception, ValueError, OSError, IOError, EOFError, KeyError], tags: [RootEffect, ReadDirEffect, ReadEnvEffect, ReadIOEffect].}