summaryrefslogtreecommitdiff
path: root/ccan/tal/str/test/helper.h
diff options
context:
space:
mode:
Diffstat (limited to 'ccan/tal/str/test/helper.h')
-rw-r--r--ccan/tal/str/test/helper.h22
1 files changed, 22 insertions, 0 deletions
diff --git a/ccan/tal/str/test/helper.h b/ccan/tal/str/test/helper.h
new file mode 100644
index 0000000..5f0b68f
--- /dev/null
+++ b/ccan/tal/str/test/helper.h
@@ -0,0 +1,22 @@
+/* tal/talloc can't implement tal_first/tal_next. */
+#ifdef TAL_USE_TALLOC
+static inline bool no_children(const void *ctx)
+{
+ return talloc_total_blocks(ctx) == 1;
+}
+
+static inline bool single_child(const void *ctx, const void *child)
+{
+ return talloc_total_blocks(ctx) == 2 && tal_parent(child) == ctx;
+}
+#else
+static inline bool no_children(const void *ctx)
+{
+ return !tal_first(ctx);
+}
+
+static inline bool single_child(const void *ctx, const void *child)
+{
+ return tal_first(ctx) == child && !tal_next(child) && !tal_first(child);
+}
+#endif