22 lines
528 B
C
22 lines
528 B
C
#include <common/fzl_types.h>
|
|
#include <compiler/internals/gen.h>
|
|
#include <stdbool.h>
|
|
#include <stdio.h>
|
|
|
|
// Format string
|
|
gen_res_t gen_fmtstr(fzl_gen_t *gen, fzl_node_t *node)
|
|
{
|
|
if (!gen || !node)
|
|
return gen_error;
|
|
|
|
for (size_t i = 0; i < node->list.entry_count; i++)
|
|
if (gen_common(gen, node->list.entries[i]).error)
|
|
return gen_error;
|
|
|
|
gen_op(gen, FZL_OPCODE_BUILD_STR);
|
|
gen_word(gen, node->list.entry_count);
|
|
|
|
return (gen_res_t){
|
|
.error = false, .type = FZL_TYPE_STRING, .classname = NULL};
|
|
}
|