HASTY dictionary node class.
Dictionary node class to storage any contents by means of generic key/content pairs.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| type(key_base), | public, | allocatable | :: | key | The key. |
||
| class(*), | private, | pointer | :: | content_ | => | null() | The generic content. |
| type(dictionary_node), | public, | pointer | :: | next | => | null() | The next node in the dictionary. |
| type(dictionary_node), | public, | pointer | :: | previous | => | null() | The previous node in the dictionary. |
| final :: finalize | Finalize the node. |
| procedure, public, pass(self) :: destroy | Destroy the node (key & content). |
| procedure, public, pass(self) :: get_pointer | Return a pointer to node's content. |
| procedure, public, pass(self) :: has_key | Return .true. if the node has a key (or id) set-up. |
| procedure, public, pass(self) :: is_filled | Return storage status. |
| procedure, public, pass(self) :: set_pointer | Set the node pointer-associating content. |
| procedure, public, pass(self) :: set_clone | Set the node cloning content. |
| procedure, private, pass(self) :: destroy_key | Destroy the node key. |
| procedure, private, pass(self) :: destroy_content | Destroy the node content. |
Return a pointer to node's content.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(in) | :: | self | The node. |
Content pointer of the node.
Return .true. if the node has a key (or id) set-up.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(in) | :: | self | The node. |
Return storage status.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(in) | :: | self | The node. |
Destroy the node and its subsequent ones.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(dictionary_node), | intent(inout), | pointer | :: | node | The node. |
Destroy the node (key & content).
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(inout) | :: | self | The node. |
Set the node pointer-associating content.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(inout) | :: | self | The node. |
||
| class(*), | intent(in) | :: | key | The key. |
||
| class(*), | intent(in), | pointer | :: | content | The content. |
|
| integer(kind=I4P), | intent(in), | optional | :: | buckets_number | Buckets number. |
Set the node cloning content.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(inout) | :: | self | The node. |
||
| class(*), | intent(in) | :: | key | The key. |
||
| class(*), | intent(in) | :: | content | The content. |
||
| integer(kind=I4P), | intent(in), | optional | :: | buckets_number | Buckets number. |
Destroy the node key.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(inout) | :: | self | The node. |
Destroy the node content.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(dictionary_node), | intent(inout) | :: | self | The node. |
Finalize the dictionary node.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(dictionary_node), | intent(inout) | :: | self | The node. |