function __toString()
{
$usage = "Usage:\n\n \$ ";
$usage .= $this->prog;
list($flags, $required, $optional, $positional) = $this->listSpec();
if ($flags) {
$usage .= $this->dumpFlags($flags);
}
if ($required) {
$usage .= $this->dumpRequired($required);
}
if ($optional) {
$usage .= $this->dumpOptional($optional);
}
if ($positional) {
$usage .= $this->dumpPositional($positional);
}
$help = $this->dumpHelp($positional);
return $usage . "\n\n" . $help . "\n";
}