meta: replace bluelib with fx

This commit is contained in:
2026-03-16 14:07:33 +00:00
parent d2abb6faa3
commit e5546f97c2
105 changed files with 1668 additions and 1668 deletions

View File

@@ -1,7 +1,7 @@
#include "debug.h"
#include <blue/ds/string.h>
#include <blue/term.h>
#include <fx/ds/string.h>
#include <fx/term.h>
#include <ivy/asm/lex.h>
#include <ivy/lang/ast.h>
#include <ivy/lang/lex.h>
@@ -14,41 +14,41 @@ extern void print_lex_token(struct ivy_token *tok)
switch (tok->t_type) {
case IVY_TOK_KEYWORD:
b_puts("[magenta]");
fx_puts("[magenta]");
break;
case IVY_TOK_SYMBOL:
b_puts("[blue]");
fx_puts("[blue]");
break;
case IVY_TOK_ATOM:
b_puts("[yellow]");
fx_puts("[yellow]");
break;
case IVY_TOK_INT:
case IVY_TOK_DOUBLE:
b_puts("[yellow]");
fx_puts("[yellow]");
break;
case IVY_TOK_LABEL:
b_puts("[red]");
fx_puts("[red]");
break;
case IVY_TOK_IDENT:
b_puts("[cyan]");
fx_puts("[cyan]");
break;
case IVY_TOK_STRING:
b_puts("[green]");
fx_puts("[green]");
break;
case IVY_TOK_STR_START:
b_puts("[green]");
fx_puts("[green]");
break;
case IVY_TOK_STR_END:
b_puts("[green]");
fx_puts("[green]");
break;
case IVY_TOK_LINEFEED:
b_puts("[dark_grey]");
fx_puts("[dark_grey]");
break;
default:
break;
}
b_puts(ivy_lex_token_type_to_string(tok->t_type));
fx_puts(ivy_lex_token_type_to_string(tok->t_type));
switch (tok->t_type) {
case IVY_TOK_IDENT:
@@ -73,40 +73,40 @@ extern void print_lex_token(struct ivy_token *tok)
break;
}
b_puts("[reset]\n");
fx_puts("[reset]\n");
}
extern void print_asm_lex_token(struct ivy_asm_token *tok)
{
switch (tok->t_type) {
case IVY_ASM_TOK_KEYWORD:
b_puts("[magenta]");
fx_puts("[magenta]");
break;
case IVY_ASM_TOK_SYMBOL:
b_puts("[blue]");
fx_puts("[blue]");
break;
case IVY_ASM_TOK_INT:
case IVY_ASM_TOK_DOUBLE:
case IVY_ASM_TOK_LABEL_REF:
b_puts("[yellow]");
fx_puts("[yellow]");
break;
case IVY_ASM_TOK_LABEL:
b_puts("[red]");
fx_puts("[red]");
break;
case IVY_ASM_TOK_IDENT:
b_puts("[cyan]");
fx_puts("[cyan]");
break;
case IVY_ASM_TOK_STRING:
b_puts("[green]");
fx_puts("[green]");
break;
case IVY_ASM_TOK_LINEFEED:
b_puts("[dark_grey]");
fx_puts("[dark_grey]");
break;
default:
break;
}
b_puts(ivy_asm_token_type_to_string(tok->t_type));
fx_puts(ivy_asm_token_type_to_string(tok->t_type));
switch (tok->t_type) {
case IVY_ASM_TOK_IDENT:
@@ -135,7 +135,7 @@ extern void print_asm_lex_token(struct ivy_asm_token *tok)
break;
}
b_puts("[reset]\n");
fx_puts("[reset]\n");
}
extern enum ivy_status print_ast_node(
@@ -154,7 +154,7 @@ extern enum ivy_status print_ast_node(
if (!args || (args && args->indent)) {
for (unsigned int i = 0; i < node->n_it.it_depth; i++) {
b_puts(" ");
fx_puts(" ");
}
}
@@ -172,13 +172,13 @@ extern enum ivy_status print_ast_node(
case IVY_AST_TRY:
case IVY_AST_RETURN:
case IVY_AST_GLOBAL:
b_puts("[magenta]");
fx_puts("[magenta]");
break;
case IVY_AST_OP:
b_puts("[blue]");
fx_puts("[blue]");
break;
case IVY_AST_MSG:
b_puts("[red]");
fx_puts("[red]");
break;
case IVY_AST_INT:
case IVY_AST_DOUBLE:
@@ -187,73 +187,73 @@ extern enum ivy_status print_ast_node(
case IVY_AST_C_TRUE:
case IVY_AST_C_FALSE:
case IVY_AST_C_NULL:
b_puts("[yellow]");
fx_puts("[yellow]");
break;
case IVY_AST_COND:
case IVY_AST_BLOCK:
case IVY_AST_TRY_CATCH:
b_puts("[red]");
fx_puts("[red]");
break;
case IVY_AST_IDENT:
case IVY_AST_SELECTOR:
b_puts("[cyan]");
fx_puts("[cyan]");
break;
case IVY_AST_STRING:
case IVY_AST_FSTRING:
b_puts("[green]");
fx_puts("[green]");
break;
case IVY_AST_DISCARD:
b_puts("[dark_grey]");
fx_puts("[dark_grey]");
break;
default:
break;
}
b_string *str = b_string_create();
fx_string *str = fx_string_create();
ivy_ast_node_to_string(node, str);
b_printf("%s", b_string_ptr(str));
b_string_unref(str);
fx_printf("%s", fx_string_ptr(str));
fx_string_unref(str);
#if 0
b_puts(ivy_ast_node_type_to_string(node->n_type));
fx_puts(ivy_ast_node_type_to_string(node->n_type));
switch (node->n_type) {
case IVY_AST_INT: {
struct ivy_ast_int_node *v = (struct ivy_ast_int_node *)node;
b_printf(" (%llu)", v->n_value->t_int);
fx_printf(" (%llu)", v->n_value->t_int);
break;
}
case IVY_AST_DOUBLE: {
struct ivy_ast_double_node *v = (struct ivy_ast_double_node *)node;
b_printf(" (%.2lf)", v->n_value->t_double);
fx_printf(" (%.2lf)", v->n_value->t_double);
break;
}
case IVY_AST_IDENT: {
struct ivy_ast_ident_node *v = (struct ivy_ast_ident_node *)node;
b_printf(" (%s)", v->n_content->t_str);
fx_printf(" (%s)", v->n_content->t_str);
break;
}
case IVY_AST_STRING: {
struct ivy_ast_string_node *v = (struct ivy_ast_string_node *)node;
b_printf(" (\"%s\")", v->n_value->t_str);
fx_printf(" (\"%s\")", v->n_value->t_str);
break;
}
case IVY_AST_ATOM: {
struct ivy_ast_atom_node *v = (struct ivy_ast_atom_node *)node;
b_printf(" (%s)", v->n_content->t_str);
fx_printf(" (%s)", v->n_content->t_str);
break;
}
case IVY_AST_SELECTOR: {
struct ivy_ast_selector_node *v
= (struct ivy_ast_selector_node *)node;
b_printf(" [[");
fx_printf(" [[");
switch (v->n_recipient) {
case IVY_SELECTOR_RECIPIENT_CLASS:
b_putc('+');
fx_putc('+');
break;
case IVY_SELECTOR_RECIPIENT_OBJECT:
b_putc('-');
fx_putc('-');
break;
default:
/* this will occur if the selector is being used to send
@@ -263,101 +263,101 @@ extern enum ivy_status print_ast_node(
}
if (v->n_msg_name) {
b_printf("%s", v->n_msg_name->t_str);
fx_printf("%s", v->n_msg_name->t_str);
}
if (v->n_msg_name && !b_queue_empty(&v->n_arg_labels)) {
b_putc('(');
if (v->n_msg_name && !fx_queue_empty(&v->n_arg_labels)) {
fx_putc('(');
}
b_queue_iterator label_it = {0};
b_queue_iterator name_it = {0};
fx_queue_iterator label_it = {0};
fx_queue_iterator name_it = {0};
b_queue_iterator_begin(&v->n_arg_labels, &label_it);
b_queue_iterator_begin(&v->n_arg_names, &name_it);
fx_queue_iterator_begin(&v->n_arg_labels, &label_it);
fx_queue_iterator_begin(&v->n_arg_names, &name_it);
bool name_present = false;
int i = 0;
while (b_queue_iterator_is_valid(&label_it)) {
while (fx_queue_iterator_is_valid(&label_it)) {
if (i > 0 && name_present) {
fputc(' ', stdout);
}
struct ivy_token *label = b_unbox(
struct ivy_token *label = fx_unbox(
struct ivy_token, label_it.entry, t_entry);
struct ivy_token *name = b_unbox(
struct ivy_token *name = fx_unbox(
struct ivy_token, name_it.entry, t_entry);
if (label) {
b_printf("%s:", label->t_str);
fx_printf("%s:", label->t_str);
}
if (name) {
b_printf("%s", name->t_str);
fx_printf("%s", name->t_str);
}
name_present = (name != NULL);
i++;
b_queue_iterator_next(&label_it);
b_queue_iterator_next(&name_it);
fx_queue_iterator_next(&label_it);
fx_queue_iterator_next(&name_it);
}
if (v->n_msg_name && !b_queue_empty(&v->n_arg_labels)) {
b_putc(')');
if (v->n_msg_name && !fx_queue_empty(&v->n_arg_labels)) {
fx_putc(')');
}
b_puts("]");
fx_puts("]");
break;
}
case IVY_AST_OP: {
struct ivy_ast_op_node *v = (struct ivy_ast_op_node *)node;
b_printf(" (%s)", ivy_operator_id_to_string(v->n_op->op_id));
fx_printf(" (%s)", ivy_operator_id_to_string(v->n_op->op_id));
break;
}
case IVY_AST_CLASS: {
struct ivy_ast_class_node *v = (struct ivy_ast_class_node *)node;
b_printf(" (%s)", v->n_ident->t_str);
fx_printf(" (%s)", v->n_ident->t_str);
break;
}
case IVY_AST_UNIT_PACKAGE: {
struct ivy_ast_unit_package_node *v
= (struct ivy_ast_unit_package_node *)node;
b_printf(" (");
b_queue_iterator it = {0};
fx_printf(" (");
fx_queue_iterator it = {0};
int i = 0;
b_queue_foreach (&it, &v->n_ident) {
fx_queue_foreach (&it, &v->n_ident) {
struct ivy_token *tok
= b_unbox(struct ivy_token, it.entry, t_entry);
= fx_unbox(struct ivy_token, it.entry, t_entry);
if (i > 0) {
b_printf(".");
fx_printf(".");
}
b_printf("%s", tok->t_str);
fx_printf("%s", tok->t_str);
i++;
}
b_printf(")");
fx_printf(")");
break;
}
case IVY_AST_UNIT_IMPORT: {
struct ivy_ast_unit_import_node *v
= (struct ivy_ast_unit_import_node *)node;
b_printf(" (");
b_queue_iterator it = {0};
fx_printf(" (");
fx_queue_iterator it = {0};
int i = 0;
b_queue_foreach (&it, &v->n_ident) {
fx_queue_foreach (&it, &v->n_ident) {
struct ivy_token *tok
= b_unbox(struct ivy_token, it.entry, t_entry);
= fx_unbox(struct ivy_token, it.entry, t_entry);
if (i > 0) {
b_printf(".");
fx_printf(".");
}
b_printf("%s", tok->t_str);
fx_printf("%s", tok->t_str);
i++;
}
b_printf(")");
fx_printf(")");
break;
}
default:
@@ -389,6 +389,6 @@ extern enum ivy_status print_ast_node(
}
#endif
b_puts("[reset]\n");
fx_puts("[reset]\n");
return IVY_OK;
}