RosettaCodeData/Task/Doubly-linked-list-Element-insertion/Haskell/doubly-linked-list-element-insertion-2.hs
Ingy döt Net 764da6cbbb CDE
2013-04-10 16:57:12 -07:00

15 lines
462 B
Haskell

class DoubleLink (value, prev_link, next_link)
# insert given node after this one, losing its existing connections
method insert_after (node)
node.prev_link := self
if (\next_link) then next_link.prev_link := node
node.next_link := next_link
self.next_link := node
end
initially (value, prev_link, next_link)
self.value := value
self.prev_link := prev_link # links are 'null' if not given
self.next_link := next_link
end