Lines Matching defs:cap

56 	Cap_t*		cap;
107 dropcap(register Cap_t* cap)
111 while (att = cap->att.next)
113 cap->att.next = att->next;
116 free(cap);
127 register Cap_t* cap;
129 while (cap = ent->cap)
131 ent->cap = cap->next;
132 dropcap(cap);
145 register Cap_t* cap;
157 cap = 0;
167 if (cap)
214 if (t <= v && (!cap || !k))
216 if (!cap)
218 if (!(cap = newof(0, Cap_t, 1, strlen(v) + 1)))
222 tta = &cap->att;
224 x = strcopy(tta->value = cap->data, v) + 1;
236 cap->test = att->value;
240 ent = (Ent_t*)dtmatch(mp->cap, s);
241 if (cap)
248 for (pud = 0, dup = ent->cap; dup; pud = dup, dup = dup->next)
249 if (!cap->test && !dup->test || cap->test && dup->test && streq(cap->test, dup->test))
254 pud->next = cap;
256 ent->cap = cap;
257 if (!(cap->next = dup->next))
258 ent->pac = cap;
259 cap = dup;
261 dropcap(cap);
264 ent->pac = ent->pac->next = cap;
271 ent->cap = ent->pac = cap;
272 dtinsert(mp->cap, ent);
276 dtdelete(mp->cap, ent);
345 register Cap_t* cap;
351 for (cap = ent->cap; cap; cap = cap->next)
354 for (att = &cap->att; att; att = att->next)
357 if (att != &cap->att)
392 if ((ent = (Ent_t*)dtmatch(mp->cap, type)) ||
417 if (ent = (Ent_t*)dtmatch(mp->cap, s))
425 if (ent = (Ent_t*)dtmatch(mp->cap, s))
434 return (Ent_t*)dtmatch(mp->cap, buf);
458 list(mp->cap, ent, &ws);
462 dtwalk(mp->cap, list, &ws);
605 register Cap_t* cap;
612 cap = ent->cap;
614 while (s = cap->test)
690 if (!(cap = cap->next))
693 att = &cap->att;
781 if (!(mp->buf = sfstropen()) || !(mp->cap = dtopen(&mp->dict, Dtorder)))
800 if (mp->cap)
801 dtclose(mp->cap);