Quickhash

目次

The QuickHashIntSet class

はじめに

This class wraps around a set containing integer numbers.

Sets can also be iterated over with foreach as the Iterator interface is implemented as well. The order of which elements are returned in is not guaranteed.

クラス概要

QuickHashIntSet
class QuickHashIntSet {
/* 定数 */
const int QuickHashIntSet::CHECK_FOR_DUPES = 1;
const int QuickHashIntSet::DO_NOT_USE_ZEND_ALLOC = 2;
const int QuickHashIntSet::HASHER_NO_HASH = 256;
const int QuickHashIntSet::HASHER_JENKINS1 = 512;
const int QuickHashIntSet::HASHER_JENKINS2 = 1024;
/* メソッド */
public bool add(int $key)
public __construct(int $size, int $options = ?)
public bool delete(int $key)
public bool exists(int $key)
publicint getSize()
public static QuickHashIntSet loadFromFile(string $filename, int $size = ?, int $options = ?)
public static QuickHashIntSet loadFromString(string $contents, int $size = ?, int $options = ?)
public void saveToFile(string $filename)
public string saveToString()
}

定義済み定数

QuickHashIntSet::CHECK_FOR_DUPES

If enabled, adding duplicate elements to a set (through either QuickHashIntSet::add or QuickHashIntSet::loadFromFile) will result in those elements to be dropped from the set. This will take up extra time, so only used when it is required.

QuickHashIntSet::DO_NOT_USE_ZEND_ALLOC

Disables the use of PHP's internal memory manager for internal set structures. With this option enabled, internal allocations will not count towards the memory_limit settings.

QuickHashIntSet::HASHER_NO_HASH

Selects to not use a hashing function, but merely use a modulo to find the bucket list index. This is not faster than normal hashing, and gives more collisions.

QuickHashIntSet::HASHER_JENKINS1

This is the default hashing function to turn the integer hashes into bucket list indexes.

QuickHashIntSet::HASHER_JENKINS2

Selects a variant hashing algorithm.

The QuickHashIntHash class

はじめに

This class wraps around a hash containing integer numbers, where the values are also integer numbers. Hashes are also available as implementation of the ArrayAccess interface.

Hashes can also be iterated over with foreach as the Iterator interface is implemented as well. The order of which elements are returned in is not guaranteed.

クラス概要

QuickHashIntHash
class QuickHashIntHash {
/* 定数 */
const int QuickHashIntHash::CHECK_FOR_DUPES = 1;
const int QuickHashIntHash::DO_NOT_USE_ZEND_ALLOC = 2;
const int QuickHashIntHash::HASHER_NO_HASH = 256;
const int QuickHashIntHash::HASHER_JENKINS1 = 512;
const int QuickHashIntHash::HASHER_JENKINS2 = 1024;
/* メソッド */
public bool add(int $key, int $value = ?)
public __construct(int $size, int $options = ?)
public bool delete(int $key)
public bool exists(int $key)
public int get(int $key)
public int getSize()
public static QuickHashIntHash loadFromFile(string $filename, int $options = ?)
public static QuickHashIntHash loadFromString(string $contents, int $options = ?)
public void saveToFile(string $filename)
public string saveToString()
public bool set(int $key, int $value)
public bool update(int $key, int $value)
}

定義済み定数

QuickHashIntHash::CHECK_FOR_DUPES

If enabled, adding duplicate elements to a set (through either QuickHashIntHash::add or QuickHashIntHash::loadFromFile) will result in those elements to be dropped from the set. This will take up extra time, so only used when it is required.

QuickHashIntHash::DO_NOT_USE_ZEND_ALLOC

Disables the use of PHP's internal memory manager for internal set structures. With this option enabled, internal allocations will not count towards the memory_limit settings.

QuickHashIntHash::HASHER_NO_HASH

Selects to not use a hashing function, but merely use a modulo to find the bucket list index. This is not faster than normal hashing, and gives more collisions.

QuickHashIntHash::HASHER_JENKINS1

This is the default hashing function to turn the integer hashes into bucket list indexes.

QuickHashIntHash::HASHER_JENKINS2

Selects a variant hashing algorithm.

The QuickHashStringIntHash class

はじめに

This class wraps around a hash containing strings, where the values are integer numbers. Hashes are also available as implementation of the ArrayAccess interface.

Hashes can also be iterated over with foreach as the Iterator interface is implemented as well. The order of which elements are returned in is not guaranteed.

クラス概要

QuickHashStringIntHash
class QuickHashStringIntHash {
/* 定数 */
const int QuickHashStringIntHash::CHECK_FOR_DUPES = 1;
const int QuickHashStringIntHash::DO_NOT_USE_ZEND_ALLOC = 2;
/* メソッド */
public bool add(string $key, int $value)
public __construct(int $size, int $options = 0)
public bool delete(string $key)
public bool exists(string $key)
public mixed get(string $key)
public int getSize()
public static QuickHashStringIntHash loadFromFile(string $filename, int $size = 0, int $options = 0)
public static QuickHashStringIntHash loadFromString(string $contents, int $size = 0, int $options = 0)
public void saveToFile(string $filename)
public string saveToString()
public int set(string $key, int $value)
public bool update(string $key, int $value)
}

定義済み定数

QuickHashStringIntHash::CHECK_FOR_DUPES

If enabled, adding duplicate elements to a set (through either QuickHashStringIntHash::add or QuickHashStringIntHash::loadFromFile) will result in those elements to be dropped from the set. This will take up extra time, so only used when it is required.

QuickHashStringIntHash::DO_NOT_USE_ZEND_ALLOC

Disables the use of PHP's internal memory manager for internal set structures. With this option enabled, internal allocations will not count towards the memory_limit settings.

The QuickHashIntStringHash class

はじめに

This class wraps around a hash containing integer numbers, where the values are strings. Hashes are also available as implementation of the ArrayAccess interface.

Hashes can also be iterated over with foreach as the Iterator interface is implemented as well. The order of which elements are returned in is not guaranteed.

クラス概要

QuickHashIntStringHash
class QuickHashIntStringHash {
/* 定数 */
const int QuickHashIntStringHash::CHECK_FOR_DUPES = 1;
const int QuickHashIntStringHash::DO_NOT_USE_ZEND_ALLOC = 2;
const int QuickHashIntStringHash::HASHER_NO_HASH = 256;
const int QuickHashIntStringHash::HASHER_JENKINS1 = 512;
const int QuickHashIntStringHash::HASHER_JENKINS2 = 1024;
/* メソッド */
public bool add(int $key, string $value)
public __construct(int $size, int $options = 0)
public bool delete(int $key)
public bool exists(int $key)
public mixed get(int $key)
public int getSize()
public static QuickHashIntStringHash loadFromFile(string $filename, int $size = 0, int $options = 0)
public static QuickHashIntStringHash loadFromString(string $contents, int $size = 0, int $options = 0)
public void saveToFile(string $filename)
public string saveToString()
public int set(int $key, string $value)
public bool update(int $key, string $value)
}

定義済み定数

QuickHashIntStringHash::CHECK_FOR_DUPES

If enabled, adding duplicate elements to a set (through either QuickHashIntStringHash::add or QuickHashIntStringHash::loadFromFile) will result in those elements to be dropped from the set. This will take up extra time, so only used when it is required.

QuickHashIntStringHash::DO_NOT_USE_ZEND_ALLOC

Disables the use of PHP's internal memory manager for internal set structures. With this option enabled, internal allocations will not count towards the memory_limit settings.

QuickHashIntStringHash::HASHER_NO_HASH

Selects to not use a hashing function, but merely use a modulo to find the bucket list index. This is not faster than normal hashing, and gives more collisions.

QuickHashIntStringHash::HASHER_JENKINS1

This is the default hashing function to turn the integer hashes into bucket list indexes.

QuickHashIntStringHash::HASHER_JENKINS2

Selects a variant hashing algorithm.