astr variableDump(le *varlist) { astr as = astr_new(); for (; varlist; varlist = varlist->list_next) { if (varlist->branch) { astr_afmt(as, "%s \t", varlist->data); astr_cat_delete(as, leDumpReformat(varlist->branch)); astr_cat_char(as, '\n'); } } return as; }
le * eval_cb_princ( lithp_burrito * lb, const int argc, le * branch ) { le * thisnode; le * retblock = NULL; if (!branch || argc < 1 ) return( leNew( "NIL" )); thisnode = branch->list_next; while (thisnode) { if (retblock) leWipe( retblock ); retblock = evaluateNode(lb, thisnode); leDumpReformat(stdout, retblock); thisnode = thisnode->list_next; } return( retblock ); }