Mercurial > hg > isophonics-drupal-site
view vendor/psy/psysh/src/Readline/HoaConsole.php @ 19:fa3358dc1485 tip
Add ndrum files
author | Chris Cannam |
---|---|
date | Wed, 28 Aug 2019 13:14:47 +0100 |
parents | 129ea1e6d783 |
children |
line wrap: on
line source
<?php /* * This file is part of Psy Shell. * * (c) 2012-2018 Justin Hileman * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Psy\Readline; use Hoa\Console\Readline\Readline as HoaReadline; use Psy\Exception\BreakException; /** * Hoa\Console Readline implementation. */ class HoaConsole implements Readline { /** @var HoaReadline */ private $hoaReadline; /** * @return bool */ public static function isSupported() { return \class_exists('\Hoa\Console\Console', true); } public function __construct() { $this->hoaReadline = new HoaReadline(); } /** * {@inheritdoc} */ public function addHistory($line) { $this->hoaReadline->addHistory($line); return true; } /** * {@inheritdoc} */ public function clearHistory() { $this->hoaReadline->clearHistory(); return true; } /** * {@inheritdoc} */ public function listHistory() { $i = 0; $list = []; while (($item = $this->hoaReadline->getHistory($i++)) !== null) { $list[] = $item; } return $list; } /** * {@inheritdoc} */ public function readHistory() { return true; } /** * {@inheritdoc} * * @throws BreakException if user hits Ctrl+D * * @return string */ public function readline($prompt = null) { return $this->hoaReadline->readLine($prompt); } /** * {@inheritdoc} */ public function redisplay() { // noop } /** * {@inheritdoc} */ public function writeHistory() { return true; } }