• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/BerkeleyDB-21/db/qam/

Lines Matching refs:array

43 	MPFARRAY *array;
84 array = &qp->array1;
85 if (array->n_extent == 0) {
87 array->n_extent = 4;
88 array->low_extent = extid;
95 if (extid < array->low_extent) {
97 offset = array->low_extent - extid;
100 offset = extid - array->low_extent;
106 array = &qp->array2;
107 if (extid < array->low_extent) {
109 offset = array->low_extent - extid;
112 offset = extid - array->low_extent;
118 * extents in the array. This is true by default if there are
121 if (less == 1 || offset >= array->n_extent) {
122 oldext = array->n_extent;
123 numext = (array->hi_extent - array->low_extent) + 1;
124 if (less == 1 && offset + numext <= array->n_extent) {
126 * If we can fit this one into the existing array by
130 memmove(&array->mpfarray[offset],
131 array->mpfarray, numext
132 * sizeof(array->mpfarray[0]));
133 memset(array->mpfarray, 0, offset
134 * sizeof(array->mpfarray[0]));
136 } else if (less == 0 && offset == array->n_extent &&
138 array->mpfarray[0].pinref == 0) {
140 * If this is at the end of the array and the file at
144 mpf = array->mpfarray[0].mpf;
147 memmove(&array->mpfarray[0], &array->mpfarray[1],
148 (array->n_extent - 1) * sizeof(array->mpfarray[0]));
149 array->low_extent++;
150 array->hi_extent++;
152 array->mpfarray[offset].mpf = NULL;
153 array->mpfarray[offset].pinref = 0;
157 * If it has then allocate the second array.
163 array = &qp->array2;
164 DB_ASSERT(env, array->n_extent == 0);
166 array->n_extent = 4;
167 array->low_extent = extid;
170 } else if (array->mpfarray[0].pinref == 0) {
176 for (i = 0; i < array->n_extent; i++) {
177 if (array->mpfarray[i].pinref != 0)
179 mpf = array->mpfarray[i].mpf;
186 array->mpfarray[i].mpf = NULL;
192 memmove(&array->mpfarray[0],
193 &array->mpfarray[i],
194 (array->n_extent - i) *
195 sizeof(array->mpfarray[0]));
196 memset(&array->mpfarray[array->n_extent - i],
197 '\0', i * sizeof(array->mpfarray[0]));
198 array->low_extent += i;
199 array->hi_extent += i;
206 increase: array->n_extent += offset;
207 array->n_extent <<= 2;
210 array->n_extent * sizeof(struct __qmpf),
211 &array->mpfarray)) != 0)
216 * Move the array up and put the new one
219 memmove(&array->mpfarray[offset],
220 array->mpfarray,
221 numext * sizeof(array->mpfarray[0]));
222 memset(array->mpfarray, 0,
223 offset * sizeof(array->mpfarray[0]));
224 memset(&array->mpfarray[numext + offset], 0,
225 (array->n_extent - (numext + offset))
226 * sizeof(array->mpfarray[0]));
230 /* Clear the new part of the array. */
231 memset(&array->mpfarray[oldext], 0,
232 (array->n_extent - oldext) *
233 sizeof(array->mpfarray[0]));
238 if (extid < array->low_extent)
239 array->low_extent = extid;
240 if (extid > array->hi_extent)
241 array->hi_extent = extid;
244 if (array->mpfarray[offset].mpf == NULL) {
247 env, &array->mpfarray[offset].mpf)) != 0)
249 mpf = array->mpfarray[offset].mpf;
268 array->mpfarray[offset].mpf = NULL;
278 mpf = array->mpfarray[offset].mpf;
280 array->mpfarray[offset].pinref++;
317 offset = extid - array->low_extent;
318 DB_ASSERT(env, array->mpfarray[offset].pinref > 0);
319 if (--array->mpfarray[offset].pinref == 0 &&
324 array->mpfarray[offset].mpf = NULL;
350 MPFARRAY *array;
362 array = &qp->array1;
363 if (array->low_extent > extid || array->hi_extent < extid)
364 array = &qp->array2;
365 offset = extid - array->low_extent;
368 extid >= array->low_extent && offset < array->n_extent);
371 if (array->mpfarray[offset].pinref != 0)
374 mpf = array->mpfarray[offset].mpf;
375 array->mpfarray[offset].mpf = NULL;
399 MPFARRAY *array;
411 array = &qp->array1;
412 if (array->low_extent > extid || array->hi_extent < extid)
413 array = &qp->array2;
414 offset = extid - array->low_extent;
417 extid >= array->low_extent && offset < array->n_extent);
419 mpf = array->mpfarray[offset].mpf;
433 if (array->mpfarray[offset].pinref != 0)
435 array->mpfarray[offset].mpf = NULL;
440 * If the file is at the bottom of the array
444 memmove(array->mpfarray, &array->mpfarray[1],
445 (array->hi_extent - array->low_extent)
446 * sizeof(array->mpfarray[0]));
447 array->mpfarray[
448 array->hi_extent - array->low_extent].mpf = NULL;
449 if (array->low_extent != array->hi_extent)
450 array->low_extent++;
452 if (extid == array->hi_extent)
453 array->hi_extent--;
532 * Allocate the extent array. Calculate the worst case number of