<?php/* * This file is part of Psy Shell. * * (c) 2012-2022 Justin Hileman * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */namespacePsy\CodeCleaner;usePhpParser\Node;usePhpParser\Node\Expr\Exit_;usePhpParser\Node\Expr\StaticCall;usePhpParser\Node\Name\FullyQualifiedasFullyQualifiedName;usePsy\Exception\BreakException;classExitPassextendsCodeCleanerPass{/** * Converts exit calls to BreakExceptions. * * @param \PhpParser\Node $node */publicfunctionleaveNode(Node$node){if($nodeinstanceofExit_){returnnewStaticCall(newFullyQualifiedName(BreakException::class),'exitShell');}}}