* Update lists.nim * Update tlists.nim
This commit is contained in:
parent
19bcb43a0e
commit
526a32e169
2 changed files with 18 additions and 6 deletions
|
|
@ -675,12 +675,12 @@ proc addMoved*[T](a, b: var DoublyLinkedList[T]) {.since: (1, 5, 1).} =
|
||||||
assert s == [0, 1, 0, 1, 0, 1]
|
assert s == [0, 1, 0, 1, 0, 1]
|
||||||
|
|
||||||
if b.head != nil:
|
if b.head != nil:
|
||||||
b.head.prev = a.tail
|
|
||||||
if a.tail != nil:
|
|
||||||
a.tail.next = b.head
|
|
||||||
a.tail = b.tail
|
|
||||||
if a.head == nil:
|
if a.head == nil:
|
||||||
a.head = b.head
|
a.head = b.head
|
||||||
|
else:
|
||||||
|
b.head.prev = a.tail
|
||||||
|
a.tail.next = b.head
|
||||||
|
a.tail = b.tail
|
||||||
if a.addr != b.addr:
|
if a.addr != b.addr:
|
||||||
b.head = nil
|
b.head = nil
|
||||||
b.tail = nil
|
b.tail = nil
|
||||||
|
|
|
||||||
|
|
@ -246,5 +246,17 @@ template main =
|
||||||
a.add(2)
|
a.add(2)
|
||||||
doAssert a.toSeq == @[1, 2]
|
doAssert a.toSeq == @[1, 2]
|
||||||
|
|
||||||
|
block issue19314: # add (appends a shallow copy)
|
||||||
|
var a: DoublyLinkedList[int]
|
||||||
|
var b: DoublyLinkedList[int]
|
||||||
|
|
||||||
|
doAssert a.toSeq == @[]
|
||||||
|
a.add(1)
|
||||||
|
doAssert a.toSeq == @[1]
|
||||||
|
a.add(b)
|
||||||
|
doAssert a.toSeq == @[1]
|
||||||
|
a.add(2)
|
||||||
|
doAssert a.toSeq == @[1, 2]
|
||||||
|
|
||||||
static: main()
|
static: main()
|
||||||
main()
|
main()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue