/*- *----------------------------------------------------------------------- * Lst_AtEnd -- * Add a node to the end of the given list * * Input: * l List to which to add the datum * d Datum to add * * Results: * SUCCESS if life is good. * * Side Effects: * A new ListNode is created and added to the list. * *----------------------------------------------------------------------- */ ReturnStatus Lst_AtEnd(Lst l, void *d) { LstNode end; end = Lst_Last(l); return (Lst_InsertAfter(l, end, d)); }
/*- *----------------------------------------------------------------------- * Lst_EnQueue -- * Add the datum to the tail of the given list. * * Results: * SUCCESS or FAILURE as returned by Lst_InsertAfter. * * Side Effects: * the lastPtr field is altered all the time and the firstPtr field * will be altered if the list used to be empty. * *----------------------------------------------------------------------- */ ReturnStatus Lst_EnQueue(Lst l, void *d) { if (LstValid (l) == FALSE) { return (FAILURE); } return (Lst_InsertAfter(l, Lst_Last(l), d)); }