Класс Stack

(No version information available, might only be in Git)

Введение

Стек - это коллекция типа "Последний вошел, первый вышел" (Last In, First Out или LIFO), которая позволяет работать только с самым верхним (последним) значением. Итерация происходит от конца к началу с удалением взятого элемента.

Внутри себя использует класс Ds\Vector.

Обзор классов

Ds\Stack implements Ds\Collection , ArrayAccess {
/* Методы */
public allocate ( int $capacity ) : void
public capacity ( ) : int
public clear ( ) : void
public copy ( ) : Ds\Stack
public isEmpty ( ) : bool
public peek ( ) : mixed
public pop ( ) : mixed
public push ( mixed ...$values ) : void
public toArray ( ) : array
}

Список изменений

Версия Описание
PECL ds 1.3.0 Теперь класс реализует ArrayAccess.

Содержание

  • Ds\Stack::allocate — Выделяет память под указанную вместимость
  • Ds\Stack::capacity — Возвращает текущую вместимость
  • Ds\Stack::clear — Удаляет все значения из коллекции
  • Ds\Stack::__construct — Создает новый экземпляр класса
  • Ds\Stack::copy — Возвращает поверхностную копию коллекции
  • Ds\Stack::count — Возвращает количество элементов коллекции
  • Ds\Stack::isEmpty — Проверяет, пуста ли коллекция
  • Ds\Stack::jsonSerialize — Возвращает коллекцию в JSON-представлении
  • Ds\Stack::peek — Возвращает значение с вершины стека
  • Ds\Stack::pop — Удаляет и возвращает значение с вершины стека
  • Ds\Stack::push — Добавляет значения в стек
  • Ds\Stack::toArray — Преобразует коллекцию в массив (array)