Lines Matching refs:val
80 keymacro_value_t val; /* command code or pointer to str, */
138 el->el_keymacro.val.cmd = (el_action_t) cmd;
139 return &el->el_keymacro.val;
150 el->el_keymacro.val.str = str;
151 return &el->el_keymacro.val;
175 * Returns NULL in val.str and XK_STR for no match.
179 keymacro_get(EditLine *el, Char *ch, keymacro_value_t *val)
182 return node_trav(el, el->el_keymacro.map, ch, val);
188 * val with it. If key is already is in el->el_keymacro.map, the new
193 keymacro_add(EditLine *el, const Char *key, keymacro_value_t *val, int ntype)
201 if (ntype == XK_CMD && val->cmd == ED_SEQUENCE_LEAD_IN) {
212 (void) node__try(el, el->el_keymacro.map, key, val, ntype);
283 node_trav(EditLine *el, keymacro_node_t *ptr, Char *ch, keymacro_value_t *val)
292 val->cmd = ED_END_OF_FILE;
297 return node_trav(el, ptr->next, ch, val);
299 *val = ptr->val;
308 return node_trav(el, ptr->sibling, ch, val);
311 val->str = NULL;
323 keymacro_value_t *val, int ntype)
349 if (ptr->val.str)
350 el_free(ptr->val.str);
360 ptr->val = *val;
364 if ((ptr->val.str = Strdup(val->str)) == NULL)
375 (void) node__try(el, ptr->next, str, val, ntype);
450 if (ptr->val.str != NULL)
451 el_free(ptr->val.str);
474 ptr->val.str = NULL;
525 &ptr->val, ptr->type);
574 keymacro_kprint(el, el->el_keymacro.buf, &ptr->val, ptr->type);
587 * function specified by val
590 keymacro_kprint(EditLine *el, const Char *key, keymacro_value_t *val, int ntype)
596 if (val != NULL)
600 (void) keymacro__decode_str(val->str, unparsbuf,
608 if (val->cmd == fp->func) {