From 8be54b8fa7f24fe2886de95c4a2bd356dbae5aa9 Mon Sep 17 00:00:00 2001 From: flywind <43030857+xflywind@users.noreply.github.com> Date: Tue, 30 Jun 2020 21:21:37 +0800 Subject: add debug fmt string like python's (#14808) * add debug format string * remove try except * add changelog --- lib/pure/strformat.nim | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'lib') diff --git a/lib/pure/strformat.nim b/lib/pure/strformat.nim index 5f7ef380d..0ea784a43 100644 --- a/lib/pure/strformat.nim +++ b/lib/pure/strformat.nim @@ -552,8 +552,18 @@ proc strformatImpl(pattern: NimNode; openChar, closeChar: char): NimNode = var subexpr = "" while i < f.len and f[i] != closeChar and f[i] != ':': - subexpr.add f[i] - inc i + if f[i] == '=': + let start = i + inc i + i += f.skipWhitespace(i) + if f[i] == closeChar or f[i] == ':': + result.add newCall(bindSym"add", res, newLit(subexpr & f[start ..< i])) + else: + subexpr.add f[start ..< i] + else: + subexpr.add f[i] + inc i + var x: NimNode try: x = parseExpr(subexpr) -- cgit 1.4.1-2-gfad0