simplify rdstdin (#18382)

This commit is contained in:
Timothee Cour 2021-06-28 13:09:14 -07:00 • committed by GitHub
commit 6387e28963
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -52,16 +52,6 @@ elif defined(genode):
else: else:
import linenoise import linenoise
proc readLineFromStdin*(prompt: string): string {.
tags: [ReadIOEffect, WriteIOEffect].} =
var buffer = linenoise.readLine(prompt)
if isNil(buffer):
raise newException(IOError, "Linenoise returned nil")
result = $buffer
if result.len > 0:
historyAdd(buffer)
linenoise.free(buffer)
proc readLineFromStdin*(prompt: string, line: var string): bool {. proc readLineFromStdin*(prompt: string, line: var string): bool {.
tags: [ReadIOEffect, WriteIOEffect].} = tags: [ReadIOEffect, WriteIOEffect].} =
var buffer = linenoise.readLine(prompt) var buffer = linenoise.readLine(prompt)
@ -73,3 +63,7 @@ else:
historyAdd(buffer) historyAdd(buffer)
linenoise.free(buffer) linenoise.free(buffer)
result = true result = true
proc readLineFromStdin*(prompt: string): string {.inline.} =
if not readLineFromStdin(prompt, result):
raise newException(IOError, "Linenoise returned nil")