diff options
Diffstat (limited to 'lib/pure')
-rw-r--r-- | lib/pure/collections/lists.nim | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/lib/pure/collections/lists.nim b/lib/pure/collections/lists.nim index b95cfffc0..bd22949bf 100644 --- a/lib/pure/collections/lists.nim +++ b/lib/pure/collections/lists.nim @@ -76,13 +76,16 @@ when not defined(nimhygiene): {.pragma: dirty.} +when not defined(nimHasCursor): + {.pragma: cursor.} + type DoublyLinkedNodeObj*[T] = object ## \ ## A node a doubly linked list consists of. ## ## It consists of a `value` field, and pointers to `next` and `prev`. next*: <//>(ref DoublyLinkedNodeObj[T]) - prev*: ref DoublyLinkedNodeObj[T] + prev* {.cursor.}: ref DoublyLinkedNodeObj[T] value*: T DoublyLinkedNode*[T] = ref DoublyLinkedNodeObj[T] @@ -100,7 +103,7 @@ type ## Use `initSinglyLinkedList proc <#initSinglyLinkedList>`_ to create ## a new empty list. head*: <//>(SinglyLinkedNode[T]) - tail*: SinglyLinkedNode[T] + tail* {.cursor.}: SinglyLinkedNode[T] DoublyLinkedList*[T] = object ## \ ## A doubly linked list. @@ -108,7 +111,7 @@ type ## Use `initDoublyLinkedList proc <#initDoublyLinkedList>`_ to create ## a new empty list. head*: <//>(DoublyLinkedNode[T]) - tail*: DoublyLinkedNode[T] + tail* {.cursor.}: DoublyLinkedNode[T] SinglyLinkedRing*[T] = object ## \ ## A singly linked ring. @@ -116,7 +119,7 @@ type ## Use `initSinglyLinkedRing proc <#initSinglyLinkedRing>`_ to create ## a new empty ring. head*: <//>(SinglyLinkedNode[T]) - tail*: SinglyLinkedNode[T] + tail* {.cursor.}: SinglyLinkedNode[T] DoublyLinkedRing*[T] = object ## \ ## A doubly linked ring. |