Lines Matching refs:list

33 static void ulist_addFirstItem(UList *list, UListNode *newItem);
58 * Function called by addItemEndList or addItemBeginList when the first item is added to the list.
61 static void ulist_addFirstItem(UList *list, UListNode *newItem) {
64 list->head = newItem;
65 list->tail = newItem;
66 list->currentIndex = 0;
69 U_CAPI void U_EXPORT2 ulist_addItemEndList(UList *list, const void *data, UBool forceDelete, UErrorCode *status) {
72 if (U_FAILURE(*status) || list == NULL || data == NULL) {
84 if (list->size == 0) {
85 ulist_addFirstItem(list, newItem);
88 newItem->previous = list->tail;
89 list->tail->next = newItem;
90 list->tail = newItem;
93 list->size++;
96 U_CAPI void U_EXPORT2 ulist_addItemBeginList(UList *list, const void *data, UBool forceDelete, UErrorCode *status) {
99 if (U_FAILURE(*status) || list == NULL || data == NULL) {
111 if (list->size == 0) {
112 ulist_addFirstItem(list, newItem);
115 newItem->next = list->head;
116 list->head->previous = newItem;
117 list->head = newItem;
118 list->currentIndex++;
121 list->size++;
124 U_CAPI UBool U_EXPORT2 ulist_containsString(const UList *list, const char *data, int32_t length) {
128 if (list != NULL && list->size != 0) {
129 pointer = list->head;
146 U_CAPI void *U_EXPORT2 ulist_getNext(UList *list) {
149 if (list == NULL || list->curr == NULL) {
153 curr = list->curr;
154 list->curr = curr->next;
155 list->currentIndex++;
160 U_CAPI int32_t U_EXPORT2 ulist_getListSize(const UList *list) {
161 if (list != NULL) {
162 return list->size;
168 U_CAPI void U_EXPORT2 ulist_resetList(UList *list) {
169 if (list != NULL) {
170 list->curr = list->head;
171 list->currentIndex = 0;
175 U_CAPI void U_EXPORT2 ulist_deleteList(UList *list) {
179 if (list != NULL) {
180 listHead = list->head;
192 uprv_free(list);
193 list = NULL;