blob: 881817f9043418fbd1d05ddd583db80bbb5d4e17 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
import "$lib/.." / compiler/strutils2
block: # setLen
var a = "abc"
a.setLen 0
a.setLen 3, isInit = false
doAssert a[1] == 'b'
a.setLen 0
a.setLen 3, isInit = true
doAssert a[1] == '\0'
block: # forceCopy
var a: string
a = "foo"
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
|