Stack
Basic Stack Class.
Defined (1)
The class is defined in the following location(s).
- /includes/Libraries/EOS/Stack.php
- class Stack {
- private $index;
- private $locArray;
- /**
- * Constructor
- *
- * Initializes the stack
- */
- public function __construct() {
- //define the private vars
- $this->locArray = array();
- $this->index = -1;
- }
- /**
- * Peek
- *
- * Will view the last element of the stack without removing it
- *
- * @return Mixed An element of the array or false if none exist
- */
- public function peek() {
- if($this->index > -1)
- return $this->locArray[$this->index];
- else
- return false;
- }
- /**
- * Poke
- *
- * Will add an element to the end of the stack
- *
- * @param Mixed $data Element to add
- */
- public function poke($data) {
- $this->locArray[++$this->index] = $data;
- }
- /**
- * Push
- *
- * Alias of {@see Stack::poke()}
- * Adds element to the stack
- *
- * @param Mixed $data Element to add
- */
- public function push($data) {
- //allias for 'poke'
- $this->poke($data);
- }
- /**
- * Pop
- *
- * Retrives an element from the end of the stack, and removes it from
- * the stack at the same time. If no elements, returns boolean false
- *
- * @return Mixed Element at end of stack or false if none exist
- */
- public function pop() {
- if($this->index > -1)
- {
- $this->index--;
- return $this->locArray[$this->index+1];
- }
- else
- return false;
- }
- /**
- * Clear
- *
- * Clears the stack to be reused.
- */
- public function clear() {
- $this->index = -1;
- $this->locArray = array();
- }
- /**
- * Get Stack
- *
- * Returns the array of stack elements, keeping all, indexed at 0
- *
- * @return Mixed Array of stack elements or false if none exist.
- */
- public function getStack() {
- if($this->index > -1)
- {
- return array_values($this->locArray);
- }
- else
- return false;
- }
- }