Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
Apply a visitor to each element in order
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(inout), | target | :: | this | ||
| procedure(command_fun) | :: | f |
Apply a visitor to each element in reverse
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(inout), | target | :: | this | ||
| procedure(command_fun) | :: | f |
Print list contents to stdout
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(in) | :: | lst |
Append a node to the tail
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(inout) | :: | lst | |||
| class(dlist_node_data_t), | intent(in) | :: | data |
Insert a node at 1-based index
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(inout) | :: | lst | |||
| integer, | intent(in) | :: | idx | |||
| class(dlist_node_data_t), | intent(in) | :: | data |
Remove element at 1-based index
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(inout) | :: | lst | |||
| integer, | intent(in) | :: | idx |
Number of elements
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(in) | :: | lst |
Remove all elements
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(inout) | :: | lst |
Index-based accessor (1-based); unallocated if out of range
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dlist_t), | intent(in) | :: | this | |||
| integer, | intent(in) | :: | idx |
Apply f to each element in forward order.
Returns .true. if all elements were visited (i.e. f never set ok=.false.).
Insert data at 1-based idx, shifting later elements right.
Out-of-range low values prepend; out-of-range high values append.
Remove the element at 1-based idx.
Silently does nothing if idx is out-of-range.
Apply f to each element in reverse order.
Print list contents to stdout.
Append data to the tail of the list.
Number of elements in the list.
Remove all elements.
Index-based accessor (1-based). Returns an allocatable polymorphic
copy of the node data. Unallocated if idx is out of range —
check allocated(node) before select type.