# Класс QuickHashIntSet

(PECL quickhash >= Unknown)

## Введение

Класс-обёртка над множеством целых чисел.

Множества также можно перебирать конструкцией `foreach`, поскольку интерфейс Iterator также реализовали. Порядок, в котором множество возвращает элементы, не гарантируется.

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

class QuickHashIntSet {
/* Константы */
const int CHECK_FOR_DUPES = 1;
const int DO_NOT_USE_ZEND_ALLOC = 2;
const int HASHER_NO_HASH = 256;
const int HASHER_JENKINS1 = 512;
const int HASHER_JENKINS2 = 1024;
/* Методы */
public function add(int `$key`): bool
public function __construct(int `$size`, int `$options` = ?)
public function delete(int `$key`): bool
public function exists(int `$key`): bool
publicfunction getSize(): int
public static function loadFromFile(string `$filename`, int `$size` = ?, int `$options` = ?): QuickHashIntSet
public static function loadFromString(string `$contents`, int `$size` = ?, int `$options` = ?): QuickHashIntSet
public function saveToFile(string `$filename`): void
public function saveToString(): string
}

## Предопределённые константы

`QuickHashIntSet::CHECK_FOR_DUPES`
  Если включено, то добавление повторяющихся элементов в набор (с помощью методов QuickHashIntSet::add() или QuickHashIntSet::loadFromFile()) приведёт к отбрасыванию этих элементов. Это займёт дополнительное время, поэтому опцию включают только при необходимости.
`QuickHashIntSet::DO_NOT_USE_ZEND_ALLOC`
  Запрещает использование встроенного в PHP менеджера памяти для внутренних структур. Если опцию включили, используемая память не будет учитываться настройкой memory_limit.
`QuickHashIntSet::HASHER_NO_HASH`
  Указывает, что не нужно использовать функцию хеширования, а вместо неё для поиска индекса в цепочке использовать модуль. Это не быстрее обычного хеширования и порождает больше коллизий.
`QuickHashIntSet::HASHER_JENKINS1`
  Хеширующая функция по умолчанию.
`QuickHashIntHash::HASHER_JENKINS2`
  Другой хеширующий алгоритм.

## Содержание

- QuickHashIntSet::add — Добавляет новую запись в набор
- QuickHashIntSet::__construct — Создаёт новый объект QuickHashIntSet
- QuickHashIntSet::delete — Удаляет запись из множества
- QuickHashIntSet::exists — Проверяет, представляет ли собой ключ часть множества
- QuickHashIntSet::getSize — Возвращает количество элементов во множестве
- QuickHashIntSet::loadFromFile — Создаёт множество из файла
- QuickHashIntSet::loadFromString — Создаёт множество из строки
- QuickHashIntSet::saveToFile — Сохраняет множество в памяти на диске
- QuickHashIntSet::saveToString — Возвращает сериализованную версию множества

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