Lines Matching defs:lhs

60  * begins_with -- return true if rhs path begins with everything in lhs path
63 begins_with(struct node *lhs, struct node *rhs, struct lut *ex)
69 if (lhs == NULL)
75 ASSERTeq(lhs->t, T_NAME, ptree_nodetype2str);
78 if (lhs->u.name.s != rhs->u.name.s)
81 if (lhs->u.name.child && lhs->u.name.child->t == T_NUM) {
82 lnum = (int)lhs->u.name.child->u.ull;
83 } else if (lhs->u.name.child && lhs->u.name.child->t == T_NAME) {
84 iterinfop = lut_lookup(ex, (void *)lhs->u.name.child->u.name.s,
89 out(O_DIE, "begins_with: unexpected lhs child");
91 out(O_DIE, "begins_with: unexpected lhs child");
110 return (begins_with(lhs->u.name.next, rhs->u.name.next, ex));
216 struct node *lhs;
229 lhs = eval_getname(funcnp, ex, events, np->u.expr.left, globals,
233 if (!rhs || !lhs)
235 if (rhs->t != T_NAME || lhs->t != T_NAME) {
241 valuep->v = begins_with(lhs, rhs, ex);
243 ptree_name_iter(O_ALTFP|O_VERB2|O_NONL, lhs);
249 tree_free(lhs);
340 lhs = eval_getname(funcnp, ex, events, np->u.expr.left, globals,
344 if (!rhs || !lhs)
346 if (rhs->t != T_NAME || lhs->t != T_NAME) {
351 path = ipath2str(NULL, ipath(lhs));
353 if (lhs->u.name.last->u.name.cp != NULL)
354 cp[0] = lhs->u.name.last->u.name.cp;
366 tree_free(lhs);
1300 out(O_ALTFP|O_VERB2, "convert lhs path to \"%s\"",
1424 * first evaluate rhs, then try to store value in lhs which
1467 * if lhs is an uninitialized global variable, perform
1726 * if lhs is unknown, still check rhs. If that
1727 * is false we can return false irrespective of lhs
1760 * if lhs is unknown, still check rhs. If that
1761 * is true we can return true irrespective of lhs