Doubly-linked list/Element definition: Difference between revisions

Content added Content deleted
(→‎E: crosslink, lang tag)
Line 96: Line 96:
=={{header|E}}==
=={{header|E}}==


This does no type-checking, under the assumption that it is being used by a containing doubly-linked list object which enforces that invariant along with others such as that <code>element.getNext().getPrev() == element</code>.
This does no type-checking, under the assumption that it is being used by a containing doubly-linked list object which enforces that invariant along with others such as that <code>element.getNext().getPrev() == element</code>. See [[Doubly-Linked List#E]] for an actual implementation (which uses slightly more elaborate nodes than this).


def makeElement(var value, var next, var prev) {
<lang e> def makeElement(var value, var next, var prev) {
def element {
def element {
to setValue(v) { value := v }
to setValue(v) { value := v }
to getValue() { return value }
to getValue() { return value }

to setNext(n) { next := n }
to setNext(n) { next := n }
to getNext() { return next }
to getNext() { return next }

to setPrev(p) { prev := p }
to setPrev(p) { prev := p }
to getPrev() { return prev }
to getPrev() { return prev }
Line 111: Line 111:
return element
return element
}
}</lang>


=={{header|Fortran}}==
=={{header|Fortran}}==