<?php/* * This file is part of Psy Shell. * * (c) 2012-2015 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\Variable;usePsy\Exception\RuntimeException;/** * Validate that the user input does not reference the `$__psysh__` variable. */classLeavePsyshAlonePassextendsCodeCleanerPass{/** * Validate that the user input does not reference the `$__psysh__` variable. * * @throws RuntimeException if the user is messing with $__psysh__. * * @param Node $node */publicfunctionenterNode(Node$node){if($nodeinstanceofVariable&&$node->name==='__psysh__'){thrownewRuntimeException('Don\'t mess with $__psysh__. Bad things will happen.');}}}