print(); } elseif ($v instanceof IContent) { self::_write($v->getContent()); } else { echo $v; } } } /** afficher $vs suivi d'un saut à la ligne */ static final function _print(?iterable $vs): void { if ($vs === null) return; $print_nl = false; foreach (c::flatten($vs) as $v) { if ($v instanceof IPrintable) { $v->print(); } elseif ($v instanceof IContent) { self::_write($v->getContent()); } else { echo $v; } $print_nl = true; } if ($print_nl) echo "\n"; } static final function write($vs): void { self::_write(c::nq($vs)); } static final function print($vs): void { self::_print(c::nq($vs)); } }