--- /dev/null
+%## -*-c-*-
+%##
+%## Skeleton source file for tables of crypto classes
+%#
+/* -*-c-*- GENERATED from gthingtab.c.in
+ *
+ * @{what}tab.c
+ */
+
+#include <string.h>
+
+#include "@what.h"
+
+%repeat
+#include "@{thing:left}.h"
+%end
+
+const @cls *const @{what}tab[] = {
+%repeat
+ &@{thing:right:c},
+%end
+ 0
+};
+
+const @cls *@{what}_byname(const char *p)
+{
+ const @cls *const *c;
+
+ for (c = @{what}tab; *c; c++)
+ if (strcmp(p, (*c)->name) == 0) return (*c);
+ return (0);
+}