Scroll to navigation

DELCHAIN(3) MBK UTILITY FUNCTIONS DELCHAIN(3)

NAME

delchain - delete an element of a chain_list

ORIGIN

This software belongs to the ALLIANCE CAD SYSTEM developed by the ASIM team at LIP6 laboratory of Université Pierre et Marie CURIE, in Paris, France.

Web : http://asim.lip6.fr/recherche/alliance/
E-mail : alliance-users@asim.lip6.fr

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).

BUG REPORT

This tool is under development at the ASIM department of the LIP6 laboratory.
We need your feedback to improve documentation and tools.

October 1, 1997 ASIM/LIP6