Lines Matching defs:spec
45 struct spec
66 struct spec spec;
67 struct spec *result;
69 spec.directives = 0;
70 spec.named_arg_count = 0;
71 spec.allocated = 0;
72 spec.named = NULL;
101 spec.directives++;
103 if (spec.allocated == spec.named_arg_count)
105 spec.allocated = 2 * spec.allocated + 1;
106 spec.named = (struct named_arg *) xrealloc (spec.named, spec.allocated * sizeof (struct named_arg));
108 spec.named[spec.named_arg_count].name = name;
109 spec.named_arg_count++;
119 if (spec.named_arg_count > 1)
123 qsort (spec.named, spec.named_arg_count, sizeof (struct named_arg),
127 for (i = j = 0; i < spec.named_arg_count; i++)
128 if (j > 0 && strcmp (spec.named[i].name, spec.named[j-1].name) == 0)
129 free (spec.named[i].name);
133 spec.named[j].name = spec.named[i].name;
136 spec.named_arg_count = j;
139 result = XMALLOC (struct spec);
140 *result = spec;
147 struct spec *spec = (struct spec *) descr;
149 if (spec->named != NULL)
152 for (i = 0; i < spec->named_arg_count; i++)
153 free (spec->named[i].name);
154 free (spec->named);
156 free (spec);
162 struct spec *spec = (struct spec *) descr;
164 return spec->directives;
172 struct spec *spec1 = (struct spec *) msgid_descr;
173 struct spec *spec2 = (struct spec *) msgstr_descr;
236 struct spec *spec = (struct spec *) descr;
239 if (spec == NULL)
246 for (i = 0; i < spec->named_arg_count; i++)
250 printf ("'%s'", spec->named[i].name);