#include static enum bshell_status collect_children( struct bshell_ast_node *node, struct bshell_ast_iterator *it) { struct bshell_stmt_list_ast_node *stmt_list = (struct bshell_stmt_list_ast_node *)node; fx_queue_entry *cur = fx_queue_first(&stmt_list->n_statements); while (cur) { struct bshell_ast_node *child = fx_unbox(struct bshell_ast_node, cur, n_entry); bshell_ast_iterator_enqueue(it, child); cur = fx_queue_next(cur); } return BSHELL_SUCCESS; } struct bshell_ast_node_definition stmt_list_bshell_ast_node = { .def_id = BSHELL_AST_STMT_LIST, .def_node_size = sizeof(struct bshell_stmt_list_ast_node), .def_collect_children = collect_children, };