LVAL elementseq P1C(LVAL, x) { if (! compoundp(x)) xlerror("not a compound data item", x); x = compounddataseq(x); if (all_simple(x)) return(x); else return(elementlist(x)); }
static LVAL elementlist P1C(LVAL, x) { LVAL next, last, result; if (!compoundp(x)) result = consa(x); else { xlprot1(x); x = compounddataseq(x); x = (listp(x)) ? copylist(x) : coerce_to_list(x); if (all_simple(x)) result = x; else { for (next = x; consp(next); next = cdr(next)) rplaca(next, elementlist(car(next))); result = car(x); last = lastcdr(car(x)); for (next = cdr(x); consp(next); next = cdr(next)) { rplacd(last, car(next)); last = lastcdr(car(next)); } } xlpop(); } return(result); }
std::string UpdateSpec::columnlist() const { return std::for_each(begin(), end(), elementlist()); }