Lines Matching full:page
77 struct dba_array *page; in dba_free() local
94 dba_array_FOREACH(dba->pages, page) { in dba_free()
95 dba_array_free(dba_array_get(page, DBP_NAME)); in dba_free()
96 dba_array_free(dba_array_get(page, DBP_SECT)); in dba_free()
97 dba_array_free(dba_array_get(page, DBP_ARCH)); in dba_free()
98 free(dba_array_get(page, DBP_DESC)); in dba_free()
99 dba_array_free(dba_array_get(page, DBP_FILE)); in dba_free()
100 dba_array_free(page); in dba_free()
147 * Create a new page and append it to the pages table.
153 struct dba_array *page, *entry; in dba_page_new() local
155 page = dba_array_new(DBP_MAX, 0); in dba_page_new()
157 dba_array_add(page, entry); in dba_page_new()
159 dba_array_add(page, entry); in dba_page_new()
165 dba_array_add(page, entry); in dba_page_new()
166 dba_array_add(page, mandoc_strdup(desc)); in dba_page_new()
169 dba_array_add(page, entry); in dba_page_new()
170 dba_array_add(pages, page); in dba_page_new()
171 return page; in dba_page_new()
175 * Add a section, architecture, or file name to an existing page.
176 * Passing the NULL pointer for the architecture makes the page MI.
180 dba_page_add(struct dba_array *page, int32_t ie, const char *str) in dba_page_add() argument
185 entries = dba_array_get(page, ie); in dba_page_add()
191 dba_array_set(page, DBP_ARCH, NULL); in dba_page_add()
207 * Add an additional name to an existing page.
210 dba_page_alias(struct dba_array *page, const char *name, uint64_t mask) in dba_page_alias() argument
219 entries = dba_array_get(page, DBP_NAME); in dba_page_alias()
252 * - For each page, five pointers to the names, sections,
253 * architectures, description, and file names of the page.
256 * file names. The description for each page ends with a NUL byte.
258 * and the last string for a page ends with two NUL bytes.
265 struct dba_array *page, *entry; in dba_pages_write() local
269 dba_array_FOREACH(pages, page) { in dba_pages_write()
270 dba_array_setpos(page, DBP_NAME, dba_tell()); in dba_pages_write()
271 entry = dba_array_get(page, DBP_NAME); in dba_pages_write()
275 dba_array_FOREACH(pages, page) { in dba_pages_write()
276 dba_array_setpos(page, DBP_SECT, dba_tell()); in dba_pages_write()
277 entry = dba_array_get(page, DBP_SECT); in dba_pages_write()
281 dba_array_FOREACH(pages, page) { in dba_pages_write()
282 if ((entry = dba_array_get(page, DBP_ARCH)) != NULL) { in dba_pages_write()
283 dba_array_setpos(page, DBP_ARCH, dba_tell()); in dba_pages_write()
287 dba_array_setpos(page, DBP_ARCH, 0); in dba_pages_write()
289 dba_array_FOREACH(pages, page) { in dba_pages_write()
290 dba_array_setpos(page, DBP_DESC, dba_tell()); in dba_pages_write()
291 dba_str_write(dba_array_get(page, DBP_DESC)); in dba_pages_write()
293 dba_array_FOREACH(pages, page) { in dba_pages_write()
294 dba_array_setpos(page, DBP_FILE, dba_tell()); in dba_pages_write()
295 dba_array_writelst(dba_array_get(page, DBP_FILE)); in dba_pages_write()
299 dba_array_FOREACH(pages, page) in dba_pages_write()
300 dba_array_writepos(page); in dba_pages_write()
351 * In addition to get_macro_entry(), add multiple page references,
353 * to page pointers in memory.
374 * In addition to get_macro_entry(), add one page reference,
375 * directly taking the in-memory page pointer as an argument.
379 struct dba_array *page) in dba_macro_add() argument
386 dba_array_add(entry->pages, page); in dba_macro_add()
427 struct dba_array *page; in dba_macro_write() local
446 dba_array_FOREACH(entry->pages, page) in dba_macro_write()
447 if (dba_array_getpos(page)) in dba_macro_write()
471 dba_array_FOREACH(entries[ie]->pages, page) in dba_macro_write()
472 if ((addr = dba_array_getpos(page))) in dba_macro_write()