int map_empty(Value *vret, Value *v, RefNode *node) { RefMap *rm = Value_vp(*v); *vret = bool_Value(rm->count == 0); return TRUE; }
int textio_translit(Value *vret, Value *v, RefNode *node) { Ref *ref = Value_ref(*v); RefTextIO *tio = Value_vp(ref->v[INDEX_TEXTIO_TEXTIO]); *vret = bool_Value(tio != NULL && tio->trans); return TRUE; }
static int markdown_enable_tex(Value *vret, Value *v, RefNode *node) { Ref *r = Value_vp(*v); Markdown *md = Value_ptr(r->v[INDEX_MARKDOWN_MD]); if (fg->stk_top > v + 1) { md->enable_tex = Value_bool(v[1]); } else { *vret = bool_Value(md->enable_tex); } return TRUE; }
int map_has_key(Value *vret, Value *v, RefNode *node) { RefMap *rm = Value_vp(*v); HashValueEntry *ep; Value key = v[1]; if (!refmap_get(&ep, rm, key)) { return FALSE; } *vret = bool_Value(ep != NULL); return TRUE; }
static int strio_empty(Value *vret, Value *v, RefNode *node) { RefBytesIO *mb = Value_bytesio(*v); *vret = bool_Value(mb->buf.size == 0); return TRUE; }