]> git.ozlabs.org Git - ccan-lca-2011.git/blobdiff - ccan/cdump/test/example_generated-advanced-defs.h
cdump: features which weren't in genparser
[ccan-lca-2011.git] / ccan / cdump / test / example_generated-advanced-defs.h
diff --git a/ccan/cdump/test/example_generated-advanced-defs.h b/ccan/cdump/test/example_generated-advanced-defs.h
new file mode 100644 (file)
index 0000000..7a704af
--- /dev/null
@@ -0,0 +1,38 @@
+const struct cdump_enum cdump_enum_state[] = {
+       { "SENDING_GREETING", SENDING_GREETING },
+       { "RECEIVING_USER_QUESTION", RECEIVING_USER_QUESTION },
+       { "SENDING_OTHER_QUESTION_PREFIX", SENDING_OTHER_QUESTION_PREFIX },
+       { "SENDING_OTHER_QUESTION", SENDING_OTHER_QUESTION },
+       { "RECEIVING_OTHER_ANSWER", RECEIVING_OTHER_ANSWER },
+       { "SENDING_ANSWER_PREFIX", SENDING_ANSWER_PREFIX },
+       { "SENDING_ANSWER", SENDING_ANSWER },
+       { "FINISHED", FINISHED },
+       { NULL, 0 } };
+bool cdump_bundle_enum_state(struct cdump_string *p, const void *ptr, unsigned indent)
+{
+       return cdump_bundle_enum(cdump_enum_state, p, ptr, indent);
+}
+bool cdump_unbundle_enum_state(const void *ctx, void *ptr, const char *str)
+{
+       return cdump_unbundle_enum(cdump_enum_state, ptr, str);
+}
+
+const struct cdump_desc cdump_struct_client[] = {
+       { "node", 0, sizeof(struct list_node), offsetof(struct client, node), 0, NULL, 0, cdump_bundle_struct_list_node, cdump_unbundle_struct_list_node },
+       { "state", 0, sizeof(enum state), offsetof(struct client, state), 0, NULL, CDUMP_FLAG_ALWAYS, cdump_bundle_enum_state, cdump_unbundle_enum_state },
+       { "bytes_sent", 0, sizeof(size_t), offsetof(struct client, bytes_sent), 0, NULL, 0, cdump_bundle_size_t, cdump_unbundle_size_t },
+       { "fd", 0, sizeof(int), offsetof(struct client, fd), 0, NULL, 0, cdump_bundle_int, cdump_unbundle_int },
+       { "question", 1, sizeof(char), offsetof(struct client, question), 0, NULL, 0, cdump_bundle_char, cdump_unbundle_char },
+       { "subclient", 1, sizeof(struct client), offsetof(struct client, subclient), 0, NULL, 0, cdump_bundle_struct_client, cdump_unbundle_struct_client },
+       { "oracle", 1, sizeof(struct client), offsetof(struct client, oracle), 0, NULL, 0, cdump_bundle_struct_client, cdump_unbundle_struct_client },
+       { "answer", 1, sizeof(char), offsetof(struct client, answer), 0, NULL, 0, cdump_bundle_char, cdump_unbundle_char },
+       { NULL, 0, 0, 0, 0, NULL, 0, NULL, NULL } };
+bool cdump_bundle_struct_client(struct cdump_string *p, const void *ptr, unsigned indent)
+{
+       return cdump_bundle_struct(cdump_struct_client, p, ptr, indent);
+}
+bool cdump_unbundle_struct_client(const void *ctx, void *ptr, const char *str)
+{
+       return cdump_unbundle_struct(ctx, cdump_struct_client, ptr, str);
+}
+