sysio: check for IO errors for write operations
This commit is contained in:
parent
04f14b67ca
commit
9b8150aef1
1 changed files with 8 additions and 6 deletions
|
|
@ -171,21 +171,23 @@ proc readLine(f: File): TaintedString =
|
||||||
|
|
||||||
proc write(f: File, i: int) =
|
proc write(f: File, i: int) =
|
||||||
when sizeof(int) == 8:
|
when sizeof(int) == 8:
|
||||||
c_fprintf(f, "%lld", i)
|
if c_fprintf(f, "%lld", i) < 0: checkErr(f)
|
||||||
else:
|
else:
|
||||||
c_fprintf(f, "%ld", i)
|
if c_fprintf(f, "%ld", i) < 0: checkErr(f)
|
||||||
|
|
||||||
proc write(f: File, i: BiggestInt) =
|
proc write(f: File, i: BiggestInt) =
|
||||||
when sizeof(BiggestInt) == 8:
|
when sizeof(BiggestInt) == 8:
|
||||||
c_fprintf(f, "%lld", i)
|
if c_fprintf(f, "%lld", i) < 0: checkErr(f)
|
||||||
else:
|
else:
|
||||||
c_fprintf(f, "%ld", i)
|
if c_fprintf(f, "%ld", i) < 0: checkErr(f)
|
||||||
|
|
||||||
proc write(f: File, b: bool) =
|
proc write(f: File, b: bool) =
|
||||||
if b: write(f, "true")
|
if b: write(f, "true")
|
||||||
else: write(f, "false")
|
else: write(f, "false")
|
||||||
proc write(f: File, r: float32) = c_fprintf(f, "%g", r)
|
proc write(f: File, r: float32) =
|
||||||
proc write(f: File, r: BiggestFloat) = c_fprintf(f, "%g", r)
|
if c_fprintf(f, "%g", r) < 0: checkErr(f)
|
||||||
|
proc write(f: File, r: BiggestFloat) =
|
||||||
|
if c_fprintf(f, "%g", r) < 0: checkErr(f)
|
||||||
|
|
||||||
proc write(f: File, c: char) = discard c_putc(ord(c), f)
|
proc write(f: File, c: char) = discard c_putc(ord(c), f)
|
||||||
proc write(f: File, a: varargs[string, `$`]) =
|
proc write(f: File, a: varargs[string, `$`]) =
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue