protected function genericList(&$out, $parseItem, $delim = "", $flatten = true)
{
$s = $this->seek();
$items = array();
while ($this->{$parseItem}($value)) {
$items[] = $value;
if ($delim) {
if (!$this->literal($delim)) {
break;
}
}
}
if (count($items) == 0) {
$this->seek($s);
return false;
}
if ($flatten && count($items) == 1) {
$out = $items[0];
} else {
$out = array("list", $delim, $items);
}
return true;
}