}
}
-struct cfunction function_list[] = {
+static struct cfunction function_list[] = {
{f_true, "true", CALL_BUILTIN_1_1},
{f_false, "false", CALL_BUILTIN_1_1},
{f_null, "null", CALL_BUILTIN_1_1},
{f_equal, "_equal", CALL_BUILTIN_3_1},
{f_length, "length", CALL_BUILTIN_1_1},
};
-struct symbol_table builtins = {function_list, sizeof(function_list)/sizeof(function_list[0])};
+static struct symbol_table builtins = {function_list, sizeof(function_list)/sizeof(function_list[0])};
+
+block builtins_bind(block b) {
+ return gen_cbinding(&builtins, b);
+}
int nerrors = jq_parse(&locations, &program);
if (nerrors == 0) {
block_append(&program, block_join(gen_op_simple(YIELD), gen_op_simple(BACKTRACK)));
- program = gen_cbinding(&builtins, program);
+ program = builtins_bind(program);
nerrors = block_compile(program, &locations, &bc);
block_free(program);
}