Добавление перевода

This commit is contained in:
Sergey Panteleev
2022-07-27 09:24:42 +03:00
parent bbe5749ff6
commit 7b8db4734c
6 changed files with 576 additions and 0 deletions

View File

@ -0,0 +1,128 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 95a1b13144581b79cbebe041abed61d43430d902 Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="quickhashintstringhash.add" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>QuickHashIntStringHash::add</refname>
<refpurpose>Метод добавляет новую запись в хеш</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>bool</type><methodname>QuickHashIntStringHash::add</methodname>
<methodparam><type>int</type><parameter>key</parameter></methodparam>
<methodparam><type>string</type><parameter>value</parameter></methodparam>
</methodsynopsis>
<para>
Метод добавляет новую запись в набор и возвращает, была ли запись добавлена.
По умолчанию, добавление происходит всегда, если при создании хеша не использовался флаг
<constant>QuickHashIntStringHash::CHECK_FOR_DUPES</constant>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>key</parameter></term>
<listitem>
<para>
Ключ добавляемой записи.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>value</parameter></term>
<listitem>
<para>
Значение добавляемой записи. Если передаётся нестроковое значение,
оно будет автоматически преобразовано в строку, если это возможно.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Метод возвращает &true;, если запись была добавлена и &false;, если запись не была добавлена.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>QuickHashIntStringHash::add</function></title>
<programlisting role="php">
<![CDATA[
<?php
echo "без проверки дубликатов\n";
$hash = new QuickHashIntStringHash( 1024 );
var_dump( $hash->exists( 4 ) );
var_dump( $hash->get( 4 ) );
var_dump( $hash->add( 4, "twenty two" ) );
var_dump( $hash->exists( 4 ) );
var_dump( $hash->get( 4 ) );
var_dump( $hash->add( 4, "twelve" ) );
echo "\nс проверкой дубликатов\n";
$hash = new QuickHashIntStringHash( 1024, QuickHashIntStringHash::CHECK_FOR_DUPES );
var_dump( $hash->exists( 4 ) );
var_dump( $hash->get( 4 ) );
var_dump( $hash->add( 4, "seventy eight" ) );
var_dump( $hash->exists( 4 ) );
var_dump( $hash->get( 4 ) );
var_dump( $hash->add( 4, "nine" ) );
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
без проверки дубликатов
bool(false)
bool(false)
bool(true)
bool(true)
string(10) "twenty two"
bool(true)
с проверкой дубликатов
bool(false)
bool(false)
bool(true)
bool(true)
string(13) "seventy eight"
bool(false)
]]>
</screen>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@ -0,0 +1,107 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 12ff796708d2460fed5a241950e667ea938d07e7 Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="quickhashintstringhash.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>QuickHashIntStringHash::__construct</refname>
<refpurpose>Создаёт новый объект QuickHashIntStringHash</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <methodname>QuickHashIntStringHash::__construct</methodname>
<methodparam><type>int</type><parameter>size</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>options</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Конструктор создаёт новый объект <classname>QuickHashIntStringHash</classname>.
Размер - это количество списков, которые нужно создать.
Чем больше списков, тем меньше будет коллизий. Также поддерживаются опции.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>size</parameter></term>
<listitem>
<para>
Количество списков, которое необходимо настроить. Число, которое вы передадите,
будет автоматически округлено до следующей степени числа 2.
Оно также автоматически ограничивается от <literal>64</literal> до <literal>4194304</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>options</parameter></term>
<listitem>
<para>
Вы можете использовать следующие варианты:
<constant>QuickHashIntStringHash::CHECK_FOR_DUPES</constant>,
что гарантирует, что в хеш не будут добавлены дублирующие записи;
<constant>QuickHashIntStringHash::DO_NOT_USE_ZEND_ALLOC</constant> чтобы не использовать внутренний менеджер памяти PHP,
а также одну из констант: <constant>QuickHashIntStringHash::HASHER_NO_HASH</constant>,
<constant>QuickHashIntStringHash::HASHER_JENKINS1</constant> или <constant>QuickHashIntStringHash::HASHER_JENKINS2</constant>.
Последние три параметра определяют, какой алгоритм хеширования использовать.
Все параметры можно комбинировать с помощью побитовых операторов.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Возвращает новый объект <classname>QuickHashIntStringHash</classname>.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>QuickHashIntStringHash::__construct</function></title>
<programlisting role="php">
<![CDATA[
<?php
var_dump( new QuickHashIntStringHash( 1024 ) );
var_dump( new QuickHashIntStringHash( 1024, QuickHashIntStringHash::CHECK_FOR_DUPES ) );
var_dump(
new QuickHashIntStringHash(
1024,
QuickHashIntStringHash::DO_NOT_USE_ZEND_ALLOC | QuickHashIntStringHash::HASHER_JENKINS2
)
);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@ -0,0 +1,101 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 29054534f689e0ed3a1ebe982d9ff996bf97d3ca Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="quickhashintstringhash.delete" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>QuickHashIntStringHash::delete</refname>
<refpurpose>Метод удаляет запись из хеша</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>bool</type><methodname>QuickHashIntStringHash::delete</methodname>
<methodparam><type>int</type><parameter>key</parameter></methodparam>
</methodsynopsis>
<para>
Метод удаляет запись из хеша и возвращает, была ли эта запись удалена или нет.
Соответствующие структуры памяти будут освобождены не сразу, а при освобождении самого хеша.
</para>
<para>
Элементы не могут быть удалены, если хеш используется в итераторе.
Метод не выбросит исключение, а просто вернёт &false;,
как это произошло бы при любой другой ошибке удаления.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>key</parameter></term>
<listitem>
<para>
Ключ удаляемой записи.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Метод возвращает &true;, если запись была удалена и &false;, если запись не была удалена.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>QuickHashIntStringHash::delete</function></title>
<programlisting role="php">
<![CDATA[
<?php
$hash = new QuickHashIntStringHash( 1024 );
var_dump( $hash->exists( 4 ) );
var_dump( $hash->add( 4, "five" ) );
var_dump( $hash->delete( 4 ) );
var_dump( $hash->exists( 4 ) );
var_dump( $hash->delete( 4 ) );
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
bool(false)
bool(true)
bool(true)
bool(false)
bool(false)
]]>
</screen>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@ -0,0 +1,64 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: bfa171ecb7d958d09e9fd576090c95a62caff784 Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="quickhashintstringhash.exists" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>QuickHashIntStringHash::exists</refname>
<refpurpose>Метод проверяет, является ли ключ частью хеша</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>bool</type><methodname>QuickHashIntStringHash::exists</methodname>
<methodparam><type>int</type><parameter>key</parameter></methodparam>
</methodsynopsis>
<para>
Метод проверяет, существует ли в хеше запись с указанным ключом.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>key</parameter></term>
<listitem>
<para>
Ключ записи для проверки её существования в хеше.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Метод возвращает &true;, если запись была найдена или &false;, если запись не найдена.
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@ -0,0 +1,97 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 29054534f689e0ed3a1ebe982d9ff996bf97d3ca Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="quickhashintstringhash.get" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>QuickHashIntStringHash::get</refname>
<refpurpose>Метод извлекает значение из хеша по его ключу</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>mixed</type><methodname>QuickHashIntStringHash::get</methodname>
<methodparam><type>int</type><parameter>key</parameter></methodparam>
</methodsynopsis>
<para>
Метод извлекает значение из хеша по его ключу.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>key</parameter></term>
<listitem>
<para>
Ключ получаемой записи.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Метод возвращает значение, если ключ существует или &null;, если ключ не является частью хеша.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>QuickHashIntStringHash::get</function></title>
<programlisting role="php">
<![CDATA[
<?php
$hash = new QuickHashIntStringHash( 8 );
var_dump( $hash->get( 1 ) );
var_dump( $hash->add( 2, "two" ) );
var_dump( $hash->get( 2 ) );
var_dump( $hash->add( 3, 5 ) );
var_dump( $hash->get( 3 ) );
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
bool(false)
bool(true)
string(3) "two"
bool(true)
string(1) "5"
]]>
</screen>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@ -0,0 +1,79 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: f11733393fcdd02606822885aa9ad7a61e4ffff8 Maintainer: sergey Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="quickhashintstringhash.getsize" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>QuickHashIntStringHash::getSize</refname>
<refpurpose>Возвращает количество элементов в хеше</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>int</type><methodname>QuickHashIntStringHash::getSize</methodname><void/>
</methodsynopsis>
<para>
Возвращает количество элементов в хеше.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
&no.function.parameters;
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Количество элементов в хеше.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Пример использования <function>QuickHashIntStringHash::getSize</function></title>
<programlisting role="php">
<![CDATA[
<?php
$hash = new QuickHashIntStringHash( 8 );
var_dump( $hash->add( 2, "two" ) );
var_dump( $hash->add( 3, 5 ) );
var_dump( $hash->getSize() );
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
bool(true)
bool(true)
int(2)
]]>
</screen>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->