rest
of the list node pointed
to by first
.
The implementation is as follows:
struct List *List_getrest(struct List *pList) { struct List *result; if (!((struct _List *)pList)->first) { result = pList; } else { result = (struct List *)&(((struct _List *)pList)->first->rest); } return result; }