# La clase Stack

(PECL ds >= 1.0.0)

## Introducción

Una Stack es una colección "último en entrar, primero en salir" o "LIFO" que solo permite el acceso al valor en la parte superior de la estructura e itera en este orden, de manera destructiva.

Utiliza un Ds\Vector internamente.

## Sinopsis de la Clase

class Ds\Stack implements Ds\Collection, ArrayAccess {
/* Métodos */
public function allocate(int `$capacity`): void
public function capacity(): int
public function clear(): void
public function copy(): Ds\Stack
public function isEmpty(): bool
public function peek(): mixed
public function pop(): mixed
public function push(mixed `...$values`): void
public function toArray(): array
}

## Historial de cambios

Versión | Descripción
--- | ---
PECL ds 1.3.0 | Esta clase ahora implementa ArrayAccess.

## Tabla de contenidos

- Ds\Stack::allocate — Asigna suficiente memoria para una capacidad requerida
- Ds\Stack::capacity — Devuelve la capacidad actual
- Ds\Stack::clear — Elimina todos los valores
- Ds\Stack::__construct — Crear una nueva instancia
- Ds\Stack::copy — Devuelve una copia superficial de la pila
- Ds\Stack::count — Devuelve el número de valores en la pila
- Ds\Stack::isEmpty — Indica si la pila está vacía
- Ds\Stack::jsonSerialize — Devuelve una representación que puede ser convertida en JSON
- Ds\Stack::peek — Devuelve el valor en la parte superior de la pila
- Ds\Stack::pop — Elimina y devuelve el valor en la parte superior de la pila
- Ds\Stack::push — Añade valores a la pila
- Ds\Stack::toArray — Convierte la pila en un array

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open