| Procedure | Location | Procedure Type | Description |
|---|---|---|---|
| add_clone | linked_list_module | Subroutine | Add an item to the end of the list by cloning it.
That is, using a sourced allocation: |
| add_pointer | linked_list_module | Subroutine | Add an item to the list, and associate its pointer to the input value. |
| destroy_list | linked_list_module | Subroutine | destroy the list (traverses from head to tail) |
| destroy_node | linked_list_module | Subroutine | destroy the node (and subsequent ones in the list). |
| destroy_node_data | linked_list_module | Subroutine | destroy the data in the node. |
| get_data | linked_list_module | Subroutine | Returns a pointer to the data stored in the list. |
| get_node | linked_list_module | Subroutine | Returns a pointer to a node in a list. |
| get_node_data | linked_list_module | Subroutine | Get the data from a node |
| has_key | linked_list_module | Function | Returns true if the key is present in the list |
| initialize_list | linked_list_module | Function | list constructor. |
| keys_equal | linked_list_module | Function | Returns true if the two keys are equal. |
| list | linked_list_module | Interface | |
| list_finalizer | linked_list_module | Subroutine | just a wrapper for destroy_list. |
| remove_by_key | linked_list_module | Subroutine | Remove an item from the list (given the key). |
| remove_by_pointer | linked_list_module | Subroutine | Remove an item from the list. |
| traverse | linked_list_module | Subroutine | traverse list from head to tail, and call the iterator function for each key. |
| traverse_list | linked_list_module | Subroutine | traverse list from head to tail, and call the iterator function for each node. |
| uppercase | linked_list_module | Function | Convert a string to uppercase. |