From 11bf8986762cb32d8cecfb8ada4954e04fb2626d Mon Sep 17 00:00:00 2001 From: Andreas Kloeckner <inform@tiker.net> Date: Fri, 3 Jul 2015 07:39:35 -0500 Subject: [PATCH] Update AST callback example from Tobi --- test/test_isl.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/test/test_isl.py b/test/test_isl.py index 851d79b..ee4f7d9 100644 --- a/test/test_isl.py +++ b/test/test_isl.py @@ -174,9 +174,25 @@ def test_schedule(): ast = build.ast_from_schedule(schedule) + def cb_print_user(printer, options, node): + print("Callback user called") + printer = printer.print_str("Callback user") + return printer + + def cb_print_for(printer, options, node): + print("Callback for called") + printer = printer.print_str("Callback For") + return printer + + opts = isl.AstPrintOptions.alloc(isl.DEFAULT_CONTEXT) + opts, cb_print_user_handle = opts.set_print_user(cb_print_user) + opts, cb_print_for_handle = opts.set_print_for(cb_print_for) + printer = isl.Printer.to_str(isl.DEFAULT_CONTEXT) printer = printer.set_output_format(isl.format.C) - printer = printer.print_ast_node(ast) + printer.print_str("// Start\n") + printer = ast.print_(printer, opts) + printer.print_str("// End") print(printer.get_str()) -- GitLab