Lines Matching refs:entries

5 /* Number of ring entries, in [2..26]. */
18 init_entries(ring_t *entries) {
22 qr_new(&entries[i], link);
23 entries[i].id = 'a' + i;
28 test_independent_entries(ring_t *entries) {
34 qr_foreach(t, &entries[i], link) {
43 qr_reverse_foreach(t, &entries[i], link) {
51 t = qr_next(&entries[i], link);
52 assert_ptr_eq(t, &entries[i],
57 t = qr_prev(&entries[i], link);
58 assert_ptr_eq(t, &entries[i],
65 ring_t entries[NENTRIES];
67 init_entries(entries);
68 test_independent_entries(entries);
73 test_entries_ring(ring_t *entries) {
79 qr_foreach(t, &entries[i], link) {
80 assert_c_eq(t->id, entries[(i+j) % NENTRIES].id,
87 qr_reverse_foreach(t, &entries[i], link) {
88 assert_c_eq(t->id, entries[(NENTRIES+i-j-1) %
94 t = qr_next(&entries[i], link);
95 assert_c_eq(t->id, entries[(i+1) % NENTRIES].id,
99 t = qr_prev(&entries[i], link);
100 assert_c_eq(t->id, entries[(NENTRIES+i-1) % NENTRIES].id,
106 ring_t entries[NENTRIES];
109 init_entries(entries);
111 qr_after_insert(&entries[i - 1], &entries[i], link);
113 test_entries_ring(entries);
118 ring_t entries[NENTRIES];
122 init_entries(entries);
124 qr_after_insert(&entries[i - 1], &entries[i], link);
129 qr_foreach(t, &entries[i], link) {
130 assert_c_eq(t->id, entries[i+j].id,
135 qr_reverse_foreach(t, &entries[i], link) {
136 assert_c_eq(t->id, entries[NENTRIES - 1 - j].id,
140 qr_remove(&entries[i], link);
142 test_independent_entries(entries);
147 ring_t entries[NENTRIES];
151 init_entries(entries);
153 qr_before_insert(&entries[i - 1], &entries[i], link);
157 qr_foreach(t, &entries[i], link) {
158 assert_c_eq(t->id, entries[(NENTRIES+i-j) %
165 qr_reverse_foreach(t, &entries[i], link) {
166 assert_c_eq(t->id, entries[(i+j+1) % NENTRIES].id,
172 t = qr_next(&entries[i], link);
173 assert_c_eq(t->id, entries[(NENTRIES+i-1) % NENTRIES].id,
177 t = qr_prev(&entries[i], link);
178 assert_c_eq(t->id, entries[(i+1) % NENTRIES].id,
185 test_split_entries(ring_t *entries) {
191 qr_foreach(t, &entries[i], link) {
194 entries[(i+j) % SPLIT_INDEX].id,
197 assert_c_eq(t->id, entries[(i+j-SPLIT_INDEX) %
207 ring_t entries[NENTRIES];
210 init_entries(entries);
212 qr_after_insert(&entries[i - 1], &entries[i], link);
215 qr_split(&entries[0], &entries[SPLIT_INDEX], ring_t, link);
216 test_split_entries(entries);
218 qr_meld(&entries[0], &entries[SPLIT_INDEX], ring_t, link);
219 test_entries_ring(entries);
221 qr_meld(&entries[0], &entries[SPLIT_INDEX], ring_t, link);
222 test_split_entries(entries);
224 qr_split(&entries[0], &entries[SPLIT_INDEX], ring_t, link);
225 test_entries_ring(entries);
227 qr_split(&entries[0], &entries[0], ring_t, link);
228 test_entries_ring(entries);
230 qr_meld(&entries[0], &entries[0], ring_t, link);
231 test_entries_ring(entries);