Lely core libraries  2.3.4
sllist.c File Reference
#include "util.h"
#include <lely/util/sllist.h>
#include <lely/util/util.h>
#include <assert.h>
Include dependency graph for sllist.c:

Go to the source code of this file.

Functions

struct slnodesllist_pop_back (struct sllist *list)
 Pops a node from the back of a singly-linked list. More...
 
struct slnodesllist_remove (struct sllist *list, struct slnode *node)
 Removes a node from a singly-linked list. More...
 
int sllist_contains (const struct sllist *list, const struct slnode *node)
 Checks if a node is part of a singly-linked list. More...
 
struct slnodesllist_last (const struct sllist *list)
 Returns a pointer to the last node in a singly-linked list. More...
 

Detailed Description

This file is part of the utilities library; it exposes the singly linked list functions.

See also
lely/util/sllist.h
Author
J. S. Seldenthuis jseld.nosp@m.enth.nosp@m.uis@l.nosp@m.ely..nosp@m.com

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Definition in file sllist.c.

Function Documentation

◆ sllist_pop_back()

struct slnode* sllist_pop_back ( struct sllist list)

Pops a node from the back of a singly-linked list.

This is an O(n) operation.

See also
sllist_push_back()

Definition at line 32 of file sllist.c.

◆ sllist_remove()

struct slnode* sllist_remove ( struct sllist list,
struct slnode node 
)

Removes a node from a singly-linked list.

This is an O(n) operation.

Returns
node on success, or NULL if the node was not part of the list.

Definition at line 46 of file sllist.c.

◆ sllist_contains()

int sllist_contains ( const struct sllist list,
const struct slnode node 
)

Checks if a node is part of a singly-linked list.

Returns
1 if the node was found in the list, and 0 if not.

Definition at line 64 of file sllist.c.

◆ sllist_last()

struct slnode* sllist_last ( const struct sllist list)

Returns a pointer to the last node in a singly-linked list.

This is an O(1) operation.

See also
sllist_first()

Definition at line 80 of file sllist.c.