lang: update bluelib api usage

This commit is contained in:
2025-11-06 10:38:32 +00:00
parent b26c37c349
commit 4386965cd9
40 changed files with 351 additions and 271 deletions

View File

@@ -1,6 +1,6 @@
#include "node.h"
#include <blue/object/string.h>
#include <blue/ds/string.h>
#include <ivy/lang/ast.h>
#include <stdio.h>
#include <stdlib.h>
@@ -250,7 +250,7 @@ struct ivy_ast_node *ast_node_create(enum ivy_ast_node_type type)
return node;
}
void ivy_ast_node_to_string(struct ivy_ast_node *node, struct b_string *out)
void ivy_ast_node_to_string(struct ivy_ast_node *node, b_string *out)
{
const struct ast_node_type *type_info = get_ast_node_type(node->n_type);
if (!type_info) {
@@ -304,12 +304,11 @@ void ivy_ast_node_destroy(struct ivy_ast_node *node)
b_queue_push_back(&it.it_queue, &node->n_it.it_entry);
node->n_it.it_depth = 0;
b_queue_iterator q_it;
b_queue_iterator_begin(&it.it_queue, &q_it);
b_queue_entry *entry = b_queue_first(&it.it_queue);
while (b_queue_iterator_is_valid(&q_it)) {
while (entry) {
struct ivy_ast_node_iterator_entry *it_entry = b_unbox(
struct ivy_ast_node_iterator_entry, q_it.entry, it_entry);
struct ivy_ast_node_iterator_entry, entry, it_entry);
node = b_unbox(struct ivy_ast_node, it_entry, n_it);
if (!node) {
@@ -319,11 +318,11 @@ void ivy_ast_node_destroy(struct ivy_ast_node *node)
const struct ast_node_type *type = get_ast_node_type(node->n_type);
if (type->n_collect_children) {
it.it_insert_after = q_it.entry;
it.it_insert_after = entry;
type->n_collect_children(node, &it);
}
b_queue_iterator_next(&q_it);
entry = b_queue_next(entry);
}
while (!b_queue_empty(&it.it_queue)) {