remove compiler/strutils2.nim (#20748)

* use std strutils toLowerAscii char

* avoid additional call and assign

* remove compiler/strutils2.nim

* canonical
This commit is contained in:
Bung
2022-11-05 19:22:45 +08:00
committed by GitHub
parent a3d32a4176
commit 10e7f18d01
3 changed files with 7 additions and 103 deletions

View File

@@ -1,39 +0,0 @@
discard """
matrix: "--gc:refc; --gc:orc"
"""
import "$lib/.." / compiler/strutils2
import std/assertions
block: # setLen
var a = "abc"
a.setLen 0
a.setLen 3, isInit = false
when defined(gcRefc): # bug #19763
doAssert a[1] == 'b'
a.setLen 0
a.setLen 3, isInit = true
doAssert a[1] == '\0'
block: # forceCopy
var a: string
a = "foo"
when defined(gcRefc):
shallow(a)
var b: string
b = a
doAssert b[0].addr == a[0].addr
var c: string
c.forceCopy a
doAssert c == a
doAssert c[0].addr != a[0].addr
block: # toLowerAscii
var a = "fooBAr"
a.toLowerAscii
doAssert a == "foobar"
block: # dataPointer
var a: string
discard a.dataPointer
# doAssert a.dataPointer == nil # not guaranteed