- void (*callback)(class ir_instruction *ir, void *data),
- void *data);
-
-ir_visitor_status visit_list_elements(ir_hierarchical_visitor *v, exec_list *l);
+ void (*callback_enter)(class ir_instruction *ir, void *data),
+ void *data_enter,
+ void (*callback_leave)(class ir_instruction *ir, void *data) = NULL,
+ void *data_leave = NULL);
+
+ir_visitor_status visit_list_elements(ir_hierarchical_visitor *v, exec_list *l,
+ bool statement_list = true);
+#endif /* __cplusplus */