|
|
@ -911,6 +911,16 @@ static enum fh_error w_parse_name(struct fh_thread_s *fh, const struct fh_word_s |
|
|
|
return FH_OK; |
|
|
|
return FH_OK; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static enum fh_error w_refill(struct fh_thread_s *fh, const struct fh_word_s *w) |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
(void) w; |
|
|
|
|
|
|
|
enum fh_error rv; |
|
|
|
|
|
|
|
bool suc = fh->input->refill_input_buffer(fh, fh->input); |
|
|
|
|
|
|
|
if (fh->input->source_id == -1) suc = false; // string always says it can't refill
|
|
|
|
|
|
|
|
TRY(ds_push(fh, TOBOOL(suc))); |
|
|
|
|
|
|
|
return FH_OK; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
const struct name_and_handler fh_builtins_meta[] = { |
|
|
|
const struct name_and_handler fh_builtins_meta[] = { |
|
|
|
{"depth", w_depth, 0, 0}, |
|
|
|
{"depth", w_depth, 0, 0}, |
|
|
|
{"unused", w_unused, 0, 0}, |
|
|
|
{"unused", w_unused, 0, 0}, |
|
|
@ -957,5 +967,6 @@ const struct name_and_handler fh_builtins_meta[] = { |
|
|
|
{"evaluate", w_evaluate, 0, 0}, |
|
|
|
{"evaluate", w_evaluate, 0, 0}, |
|
|
|
{"included", w_included, 0, 0}, |
|
|
|
{"included", w_included, 0, 0}, |
|
|
|
{"include", w_include, 0, 0}, |
|
|
|
{"include", w_include, 0, 0}, |
|
|
|
|
|
|
|
{"refill", w_refill, 0, 0}, |
|
|
|
{ /* end marker */ } |
|
|
|
{ /* end marker */ } |
|
|
|
}; |
|
|
|
}; |
|
|
|