Lines Matching defs:tl
268 struct tlist *tl = calloc(1, sizeof(*tl));
269 tl->name = strdup(name);
270 ASN1_TAILQ_INIT(&tl->template);
271 return tl;
285 tlist_count(struct tlist *tl)
290 ASN1_TAILQ_FOREACH(q, &tl->template, members) {
297 tlist_add(struct tlist *tl)
299 ASN1_TAILQ_INSERT_TAIL(&tlistmaster, tl, tmembers);
303 tlist_print(struct tlist *tl)
309 fprintf(f, "static const struct asn1_template asn1_%s[] = {\n", tl->name);
310 fprintf(f, "/* 0 */ %s,\n", tl->header);
311 ASN1_TAILQ_FOREACH(q, &tl->template, members) {
312 int last = (ASN1_TAILQ_LAST(&tl->template, templatehead) == q);
332 struct tlist *tl = tlist_find_by_name(tname);
334 return tlist_cmp(tl, ql);
338 tlist_cmp(const struct tlist *tl, const struct tlist *ql)
343 ret = strcmp(tl->header, ql->header);
347 ASN1_TAILQ_FOREACH(t, &tl->template, members) {
372 tlist_find_dup(const struct tlist *tl)
377 if (tlist_cmp(ql, tl) == 0) {
805 struct tlist *tl;
809 tl = tlist_new(varname);
811 template_members(&tl->template, basetype, name, type, optional, isstruct, need_offset);
822 if (ASN1_TAILQ_EMPTY(&tl->template) && compact_tag(type)->type != TNull)
825 tlist_header(tl, "{ 0%s%s, sizeof(%s%s), ((void *)%lu) }",
828 isstruct ? "struct " : "", basetype, tlist_count(tl));
830 dup = tlist_find_dup(tl);
832 if (strcmp(dup, tl->name) == 0)
836 *dupname = tl->name;
837 tlist_print(tl);
838 tlist_add(tl);