about summary refs log blame commit diff stats
path: root/src/extern/tempfile.nim
blob: 75c098355fc4c5ba03c31bee640e177d00f956ac (plain) (tree)
1
             
















                                                     
import std/os

var tmpf_seq: int
proc getTempFile*(tmpdir: string, ext = ""): string =
  if not dirExists(tmpdir):
    createDir(tmpdir)
  var tmpf = tmpdir / "chatmp" & $tmpf_seq
  if ext != "":
    tmpf &= "."
    tmpf &= ext
  while fileExists(tmpf):
    inc tmpf_seq
    tmpf = tmpdir / "chatmp" & $tmpf_seq
    if ext != "":
      tmpf &= "."
      tmpf &= ext
  inc tmpf_seq
  return tmpf