/** * Will push a given element to the stack * * @param mixed $obj The element to push * * @return null * * @Requires("!in_array($obj, $this->container)") */ public function push($obj) { return parent::push($obj); }
/** * Main program. * * @param array $args Command-line arguments. * @return integer Zero on success; non-zero on failure. */ public static function main($args) { printf("StackAsLinkedList main program.\n"); $status = 0; $stack = new StackAsLinkedList(); AbstractStack::test($stack); return $status; }
$stack->reduce(create_function('$sum,$obj', 'printf("%s\\n", str($obj));'), ''); printf("Top is %s\n", str($stack->getTop())); printf("Popping\n"); while (!$stack->isEmpty()) { $obj = $stack->pop(); printf("%s\n", str($obj)); } $stack->push(box(2)); $stack->push(box(4)); $stack->push(box(6)); printf("%s\n", str($stack)); printf("Purging\n"); $stack->purge(); printf("%s\n", str($stack)); } /** * Main program. * * @param array $args Command-line arguments. * @return integer Zero on success; non-zero on failure. */ public static function main($args) { printf("AbstractStack main program.\n"); $status = 0; return $status; } } if (realpath($argv[0]) == realpath(__FILE__)) { exit(AbstractStack::main(array_slice($argv, 1))); }