+++ /dev/null
-<?php\r
-/**\r
- * An Event Stack for inter-program communication, particularly for parsing\r
- *\r
- * phpDocumentor :: automatic documentation generator\r
- * \r
- * PHP versions 4 and 5\r
- *\r
- * Copyright (c) 2000-2007 Joshua Eichorn\r
- * \r
- * LICENSE:\r
- * \r
- * This library is free software; you can redistribute it\r
- * and/or modify it under the terms of the GNU Lesser General\r
- * Public License as published by the Free Software Foundation;\r
- * either version 2.1 of the License, or (at your option) any\r
- * later version.\r
- * \r
- * This library is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\r
- * Lesser General Public License for more details.\r
- * \r
- * You should have received a copy of the GNU Lesser General Public\r
- * License along with this library; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\r
- *\r
- * @category ToolsAndUtilities\r
- * @package phpDocumentor\r
- * @author Joshua Eichorn <jeichorn@phpdoc.org>\r
- * @copyright 2000-2007 Joshua Eichorn\r
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL\r
- * @version CVS: $Id: EventStack.inc,v 1.4 2007/10/10 02:27:28 ashnazg Exp $\r
- * @filesource\r
- * @link http://www.phpdoc.org\r
- * @link http://pear.php.net/PhpDocumentor\r
- * @since 0.1\r
- * @todo CS cleanup - change package to PhpDocumentor\r
- */\r
-/**\r
- * An event Stack\r
- * \r
- * @category ToolsAndUtilities\r
- * @package phpDocumentor\r
- * @author Joshua Eichorn <jeichorn@phpdoc.org>\r
- * @license http://www.opensource.org/licenses/lgpl-license.php LGPL\r
- * @version Release: 1.4.1\r
- * @link http://www.phpdoc.org\r
- * @link http://pear.php.net/PhpDocumentor\r
- * @todo CS cleanup - change package to PhpDocumentor\r
- */\r
-class EventStack\r
-{\r
- /**\r
- * The stack\r
- * @var array\r
- */\r
- var $stack = array(PARSER_EVENT_NOEVENTS);\r
-\r
- /**\r
- * The number of events in the stack\r
- * @var integer\r
- */\r
- var $num = 0;\r
-\r
- /**\r
- * Push an event onto the stack\r
- *\r
- * @param int $event All events must be constants\r
- *\r
- * @return void\r
- */\r
- function pushEvent($event)\r
- {\r
- $this->num = array_push($this->stack, $event) - 1;\r
- }\r
-\r
- /**\r
- * Pop an event from the stack\r
- *\r
- * @return int An event\r
- */\r
- function popEvent()\r
- {\r
- $this->num--;\r
- return array_pop($this->stack);\r
- }\r
-\r
- /**\r
- * Get the current event\r
- *\r
- * @return int An event\r
- */\r
- function getEvent()\r
- {\r
- return $this->stack[$this->num];\r
- }\r
-}\r