char * list_insert_link (ListFuncPhonePoint *point, ListFuncPerson *list_head, char *token) { int count = 1; if (list_head == NULL) { ListFuncPerson *new_list; new_list = (ListFuncPerson *) malloc (sizeof (ListFuncPerson)); token = strtok (token, LIST_FUNC_DELIM); if (token != NULL) new_list -> eig_no = atoi (token); while ((token = strtok (NULL, LIST_FUNC_DELIM)) != NULL) { list_insert_data (new_list -> in_data, token, count); token = NULL; count++; } new_list -> next_ptr = point -> tail; } else { while ((token = strtok (token, LIST_FUNC_DELIM)) != NULL) { printf ("%s\n", token); token = NULL; } printf ("\n---------------------------\n\n"); } return NULL; }
void list_insert_tuple(List* list, const Tuple* tuple) { ListData data; assert(list_is_valid(list)); assert(tuple_is_valid(tuple)); assert(list->type == LIST_TUPLE); data.tuple = tuple_copy(tuple); list_insert_data(list, &data); }
void list_insert_entry(List* list, const Entry* entry) { ListData data; assert(list_is_valid(list)); assert(entry_is_valid(entry)); assert(list->type == LIST_ENTRY); data.entry = entry_copy(entry); list_insert_data(list, &data); }
void list_insert_elem(List* list, const Elem* elem) { ListData data; assert(list_is_valid(list)); assert(elem_is_valid(elem)); assert(list->type == LIST_ELEM); data.elem = elem_copy(elem); list_insert_data(list, &data); }