xenial (3) delchain.3.gz

Provided by: alliance_5.1.1-1.1_amd64 bug

NAME

       delchain - delete an element of a chain_list

SYNOPSYS

       #include "mut.h"
       chain_list ∗delchain(pthead, ptdel)
       chain_list ∗pthead;
       chain_list ∗ptdel;

PARAMETERS

       pthead              Pointer to a chain list

       ptdel               Pointer to the element to be deleted.

DESCRIPTION

       delchain deletes the element of the chain_list pointed to by ptdel in the list pointed to by pthead.  The
       list consistency is maintainded, and the element put back in the list of free blocks.

RETURN VALUE

       delchain returns a pointer to the new head of list if the ptdel pointer used to belong to  the  list.  In
       most case, it has the value of pthead. If the pointer doesn't belong to the list, NULL is returned.

ERROR

       "∗∗∗ mbk error ∗∗∗ delchain impossible : pointer NULL"
              At  least  one  of the arguments are pointing to NULL, and that clear that such a pointer can't be
              deleted, or used for freeing.

EXAMPLE

       #include "mut.h"
       void delete_match(c0, c1)
       chain_list ∗c0, ∗c1;
       {
       chain_list ∗t0, ∗t1, ∗next;
          for (t0 = c0; t0; t0 = next)
             for (t1 = c1; t1; t1 = t1->NEXT)
                if (t1->DATA == t0->DATA)
                   next = delchain(c0, t0);
       }

SEE ALSO

       mbk(1), chain(3), addchain(3), freechain(3).