DragonFly On-Line Manual Pages

Search: Section:  


list(3)                   InterNetNews Documentation                   list(3)

NAME

list - list routines

SYNOPSIS

#include <inn/list.h> struct node { struct node *succ; struct node *pred; }; struct list { struct node *head; struct node *tail; struct node *tailpred; }; void list_new(struct list *list); struct node *list_addhead(struct list *list, struct node *node); struct node *list_addtail(struct list *list, struct node *node); struct node *list_head(struct list *list); struct node *list_tail(struct list *list); struct node *list_succ(struct node *node); struct node *list_pred(struct node *node); struct node *list_remhead(struct list *list); struct node *list_remtail(struct list *list); struct node *list_remove(struct node *node); struct node *list_insert(struct list *list, struct node *node, struct node *pred); bool list_isempty(struct list *list);

DESCRIPTION

list_new initialises the list header list so as to create an empty list. list_addhead adds node to the head of list, returning the node just added. list_addtail adds node to the tail of list, returning the node just added. list_head returns a pointer to the the node at the head of list or NULL if the list is empty. list_tail returns a pointer to the the node at the tail of list or NULL if the list is empty. list_succ returns the next (successor) node on the list after node or NULL if node was the final node. list_pred returns the previous (predecessor) node on the list before node or NULL if node was the first node. list_remhead removes the first node from list and returns it to the caller. If the list is empty NULL is returned. list_remtail removes the last node from list and returns it to the caller. If the list is empty NULL is returned. list_remove removes node from the list it is on and returns it to the caller. list_insert inserts node onto list after the node pred. If pred is NULL then node is added to the head of list.

HISTORY

Written by Alex Kiernan <alex.kiernan@thus.net> for InterNetNews 2.4.0. $Id: list.pod 9073 2010-05-31 19:00:23Z iulius $ INN 2.6.0 2015-09-12 list(3) list(n) Tcl Built-In Commands list(n) ______________________________________________________________________________

NAME

list - Create a list

SYNOPSIS

list ?arg arg ...? ______________________________________________________________________________

DESCRIPTION

This command returns a list comprised of all the args, or an empty string if no args are specified. Braces and backslashes get added as necessary, so that the lindex command may be used on the result to re- extract the original arguments, and also so that eval may be used to execute the resulting list, with arg1 comprising the command's name and the other args comprising its arguments. List produces slightly different results than concat: concat removes one level of grouping before forming the list, while list works directly from the original arguments.

EXAMPLE

The command list a b "c d e " " f {g h}" will return a b {c d e } { f {g h}} while concat with the same arguments will return a b c d e f {g h}

SEE ALSO

lappend(n), lindex(n), linsert(n), llength(n), lrange(n), lrepeat(n), lreplace(n), lsearch(n), lset(n), lsort(n)

KEYWORDS

element, list, quoting Tcl list(n)

Search: Section: