From 74ffd7a95c0894a96ab984e2c4d2cd9c75539af0 Mon Sep 17 00:00:00 2001 From: Mel Date: Sun, 3 May 2026 19:54:15 +0200 Subject: IR visit system and pretty printer Signed-off-by: Mel --- boot/visit/visit.c | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 boot/visit/visit.c (limited to 'boot/visit/visit.c') diff --git a/boot/visit/visit.c b/boot/visit/visit.c new file mode 100644 index 0000000..8bc6cf7 --- /dev/null +++ b/boot/visit/visit.c @@ -0,0 +1,20 @@ +/* + * useful shared visit system helpers. + * + * Copyright (c) 2026, Mel G. + * + * SPDX-License-Identifier: MPL-2.0 + */ + +#pragma once + +#include "../catboot.h" + +#define VISIT(visit_function, node) visit->table->visit_function(visit, node); + +#define VISIT_MAYBE(visit_function, node) \ + if (node) visit->table->visit_function(visit, node) + +#define DATA_FOR_VISIT(type, name) \ + type* name = (type*)visit->user_data; \ + if (!name) { failure("visit user data is NULL for " #name); } -- cgit 1.4.1