# A classe Stack

(PECL ds >= 1.0.0)

## Introdução

Uma Stack é uma coleção "último a entrar, primeiro a sair" ou "LIFO" que permite apenas acesso ao valor no topo da estrutura e itera nessa ordem, destrutivamente.

Usa internamente um Ds\Vector.

## Resumo da classe

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
}

## Registro de Alterações

Versão | Descrição
--- | ---
PECL ds 1.3.0 | A classe agora implementa ArrayAccess.

## Índice

- Ds\Stack::allocate — Aloca memória suficiente para uma capacidade requerida
- Ds\Stack::capacity — Retorna a capacidade atual
- Ds\Stack::clear — Remove todos os valores
- Ds\Stack::__construct — Cria uma nova instância
- Ds\Stack::copy — Retorna uma cópia rasa da pilha
- Ds\Stack::count — Retorna o número de valores na pilha
- Ds\Stack::isEmpty — Retorna se a pilha está vazia
- Ds\Stack::jsonSerialize — Retorna uma representação que pode ser convertida para JSON
- Ds\Stack::peek — Retorna o valor no topo da pilha
- Ds\Stack::pop — Remove e retorna o valor no topo da pilha
- Ds\Stack::push — Empurra valores para a pilha
- Ds\Stack::toArray — Converte a pilha para um array

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