diff options
-rw-r--r-- | compiler/astalgo.nim | 4 | ||||
-rw-r--r-- | compiler/cgen.nim | 2 | ||||
-rw-r--r-- | compiler/dfa.nim | 2 | ||||
-rw-r--r-- | compiler/ndi.nim | 4 | ||||
-rw-r--r-- | lib/pure/json.nim | 8 | ||||
-rw-r--r-- | lib/system/strmantle.nim | 22 |
6 files changed, 25 insertions, 17 deletions
diff --git a/compiler/astalgo.nim b/compiler/astalgo.nim index 280022780..c1df74a3f 100644 --- a/compiler/astalgo.nim +++ b/compiler/astalgo.nim @@ -425,7 +425,7 @@ proc value(this: var DebugPrinter; value: string) = proc value(this: var DebugPrinter; value: BiggestInt) = if this.useColor: this.res.add numberStyle - this.res.add value + this.res.addInt value if this.useColor: this.res.add resetStyle @@ -460,7 +460,7 @@ template earlyExit(this: var DebugPrinter; n: PType | PNode | PSym) = if this.useColor: this.res.add backrefStyle this.res.add "<defined " - this.res.add(this.currentLine - index) + this.res.addInt(this.currentLine - index) this.res.add " lines upwards>" if this.useColor: this.res.add resetStyle diff --git a/compiler/cgen.nim b/compiler/cgen.nim index 1f4980385..0585a2be0 100644 --- a/compiler/cgen.nim +++ b/compiler/cgen.nim @@ -111,7 +111,7 @@ proc cgFormatValue(result: var string; value: string): void = result.add value proc cgFormatValue(result: var string; value: BiggestInt): void = - result.add value + result.addInt value # TODO: please document macro ropecg(m: BModule, frmt: static[FormatStr], args: untyped): Rope = diff --git a/compiler/dfa.nim b/compiler/dfa.nim index 513fd0a16..755e21cb7 100644 --- a/compiler/dfa.nim +++ b/compiler/dfa.nim @@ -82,7 +82,7 @@ proc codeListing(c: ControlFlowGraph, result: var string, start=0; last = -1) = result.add renderTree(c[i].n) of goto, fork, join: result.add "L" - result.add c[i].dest+i + result.addInt c[i].dest+i result.add("\t#") result.add(debugInfo(c[i].n.info)) result.add("\n") diff --git a/compiler/ndi.nim b/compiler/ndi.nim index f672b1b76..41f04cf0d 100644 --- a/compiler/ndi.nim +++ b/compiler/ndi.nim @@ -20,9 +20,9 @@ type proc doWrite(f: var NdiFile; s: PSym; conf: ConfigRef) = f.buf.setLen 0 - f.buf.add s.info.line.int + f.buf.addInt s.info.line.int f.buf.add "\t" - f.buf.add s.info.col.int + f.buf.addInt s.info.col.int f.f.write(s.name.s, "\t") f.f.writeRope(s.loc.r) f.f.writeLine("\t", toFullPath(conf, s.info), "\t", f.buf) diff --git a/lib/pure/json.nim b/lib/pure/json.nim index 5f509f479..4b58f9f95 100644 --- a/lib/pure/json.nim +++ b/lib/pure/json.nim @@ -692,12 +692,12 @@ proc toPretty(result: var string, node: JsonNode, indent = 2, ml = true, of JInt: if lstArr: result.indent(currIndent) when defined(js): result.add($node.num) - else: result.add(node.num) + else: result.addInt(node.num) of JFloat: if lstArr: result.indent(currIndent) # Fixme: implement new system.add ops for the JS target when defined(js): result.add($node.fnum) - else: result.add(node.fnum) + else: result.addFloat(node.fnum) of JBool: if lstArr: result.indent(currIndent) result.add(if node.bval: "true" else: "false") @@ -773,10 +773,10 @@ proc toUgly*(result: var string, node: JsonNode) = node.str.escapeJson(result) of JInt: when defined(js): result.add($node.num) - else: result.add(node.num) + else: result.addInt(node.num) of JFloat: when defined(js): result.add($node.fnum) - else: result.add(node.fnum) + else: result.addFloat(node.fnum) of JBool: result.add(if node.bval: "true" else: "false") of JNull: diff --git a/lib/system/strmantle.nim b/lib/system/strmantle.nim index 4aa1b705f..8ff2e0ee0 100644 --- a/lib/system/strmantle.nim +++ b/lib/system/strmantle.nim @@ -40,14 +40,14 @@ proc hashString(s: string): int {.compilerproc.} = h = h +% h shl 15 result = h -proc add*(result: var string; x: int64) = +proc addInt*(result: var string; x: int64) = ## Converts integer to its string representation and appends it to `result`. ## ## .. code-block:: Nim ## var ## a = "123" ## b = 45 - ## a.add(b) # a <- "12345" + ## a.addInt(b) # a <- "12345" let base = result.len setLen(result, base + sizeof(x)*4) var i = 0 @@ -66,18 +66,22 @@ proc add*(result: var string; x: int64) = for j in 0..i div 2 - 1: swap(result[base+j], result[base+i-j-1]) +proc add*(result: var string; x: int64) {.deprecated: + "Deprecated since v0.20, use 'addInt'".} = + addInt(result, x) + proc nimIntToStr(x: int): string {.compilerRtl.} = result = newStringOfCap(sizeof(x)*4) - result.add x + result.addInt x -proc add*(result: var string; x: float) = +proc addFloat*(result: var string; x: float) = ## Converts float to its string representation and appends it to `result`. ## ## .. code-block:: Nim ## var ## a = "123" ## b = 45.67 - ## a.add(b) # a <- "12345.67" + ## a.addFloat(b) # a <- "12345.67" when nimvm: result.add $x else: @@ -113,9 +117,13 @@ proc add*(result: var string; x: float) = result.add buf[i] inc i +proc add*(result: var string; x: float) {.deprecated: + "Deprecated since v0.20, use 'addFloat'".} = + addFloat(result, x) + proc nimFloatToStr(f: float): string {.compilerproc.} = result = newStringOfCap(8) - result.add f + result.addFloat f proc c_strtod(buf: cstring, endptr: ptr cstring): float64 {. importc: "strtod", header: "<stdlib.h>", noSideEffect.} @@ -284,7 +292,7 @@ proc nimParseBiggestFloat(s: string, number: var BiggestFloat, proc nimInt64ToStr(x: int64): string {.compilerRtl.} = result = newStringOfCap(sizeof(x)*4) - result.add x + result.addInt x proc nimBoolToStr(x: bool): string {.compilerRtl.} = return if x: "true" else: "false" |