Lines Matching refs:lp

99 	Alist	*lp = *lpp;
106 if (lp == NULL) {
117 if ((lp = malloc((size_t)bsize)) == NULL)
119 lp->al_arritems = init_arritems;
120 lp->al_nitems = 0;
121 lp->al_next = ALIST_OFF_DATA;
122 lp->al_size = size;
123 *lpp = lp;
126 ASSERT(size == lp->al_size);
128 if (lp->al_nitems >= lp->al_arritems) {
135 bsize = lp->al_size * lp->al_arritems * 2;
138 if ((lp = realloc((void *)lp, (size_t)bsize)) == 0)
140 lp->al_arritems *= 2;
141 *lpp = lp;
149 ASSERT(idx <= lp->al_nitems);
151 addr = (idx * lp->al_size) + (char *)lp->al_data;
158 if (idx < lp->al_nitems)
159 (void) memmove(addr + lp->al_size, addr,
160 (lp->al_nitems - idx) * lp->al_size);
162 lp->al_nitems++;
163 lp->al_next += lp->al_size;
165 (void) memcpy(addr, datap, lp->al_size);
167 (void) memset(addr, 0, lp->al_size);
190 APlist *lp = *lpp;
195 if (lp == NULL) {
204 if ((lp = malloc((size_t)bsize)) == NULL)
206 lp->apl_arritems = init_arritems;
207 lp->apl_nitems = 0;
208 *lpp = lp;
209 } else if (lp->apl_nitems >= lp->apl_arritems) {
217 (2 * sizeof (void *) * lp->apl_arritems);
218 if ((lp = realloc((void *)lp, (size_t)bsize)) == 0)
220 lp->apl_arritems *= 2;
221 *lpp = lp;
228 ASSERT(idx <= lp->apl_nitems);
235 if (idx < lp->apl_nitems)
236 (void) memmove((char *)&lp->apl_data[idx + 1],
237 (char *)&lp->apl_data[idx],
238 (lp->apl_nitems - idx) * sizeof (void *));
240 lp->apl_nitems++;
241 lp->apl_data[idx] = (void *)ptr;
242 return (&lp->apl_data[idx]);
300 alist_delete(Alist *lp, Aliste *idxp)
306 ASSERT(lp != NULL);
307 ASSERT(idx < lp->al_nitems);
313 if (idx < --lp->al_nitems) {
314 char *addr = (idx * lp->al_size) + (char *)lp->al_data;
316 (void) memmove(addr, addr + lp->al_size,
317 (lp->al_nitems - idx) * lp->al_size);
319 lp->al_next -= lp->al_size;
326 alist_delete_by_offset(Alist *lp, Aliste *offp)
330 ASSERT(lp != NULL);
331 idx = (*offp - ALIST_OFF_DATA) / lp->al_size;
333 alist_delete(lp, &idx);
334 *offp -= lp->al_size;
338 aplist_delete(APlist *lp, Aliste *idxp)
344 ASSERT(lp != NULL);
345 ASSERT(idx < lp->apl_nitems);
351 if (idx < --lp->apl_nitems)
352 (void) memmove(&lp->apl_data[idx], &lp->apl_data[idx + 1],
353 (lp->apl_nitems - idx) * sizeof (void *));
363 * lp - Initialized APlist to delete item from
375 aplist_delete_value(APlist *lp, const void *ptr)
383 for (idx = 0; idx < lp->apl_nitems; idx++)
384 if (ptr == lp->apl_data[idx]) {
385 aplist_delete(lp, &idx);
423 APlist *lp = *lpp;
427 if (lp != NULL)
428 for (idx = 0; idx < lp->apl_nitems; idx++)
429 if (ptr == lp->apl_data[idx])
452 alist_reset(Alist *lp)
454 if (lp != NULL) {
455 lp->al_nitems = 0;
456 lp->al_next = ALIST_OFF_DATA;
461 aplist_reset(APlist *lp)
463 if (lp != NULL)
464 lp->apl_nitems = 0;