dispatch for CallX

def eval_callx(self, exp):
    "dispatch for CallX"
    # below: this isn't contains(exp,consumes_row) -- it's just checking the current expression
    return (self.eval_agg_call if consumes_rows(exp) else self.eval_nonagg_call)(exp)