
All checks were successful
Build / Build (push) Successful in 40s
This commit adds documentation for the `ramdb_db_fnc_fetch` function. The documentation explains the function's purpose, which is to handle data chunks received from the database extension when data is too large to be returned in a single callback. The documentation includes a title, icon, and excerpt for better readability and understanding.
133 lines
6.6 KiB
XML
133 lines
6.6 KiB
XML
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
|
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_md_docs_2hash_2hash_set" xml:lang="en-US">
|
|
<title>hashSet</title>
|
|
<indexterm><primary>hashSet</primary></indexterm>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md287">
|
|
<title>autotoc_md287</title>
|
|
<para>title: ArmaRAMDb - Hash Set icon: mdi:file-text-outline </para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md288">
|
|
<title>excerpt: Set a field value in the current client's hash table in RAMDb.</title></section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md289">
|
|
<title>ramdb_db_fnc_hashSet</title><section xml:id="_md_docs_2hash_2hash_set_1autotoc_md290">
|
|
<title>Description</title>
|
|
<para>Sets the value of a specified field in the hash table associated with the current client/player. This function automatically determines the appropriate hash ID based on the caller's identity, making it more convenient than <computeroutput>hashSetId</computeroutput> which requires manually specifying an ID. It allows storing various data types (arrays, strings, numbers, or booleans) in a field of the client-specific hash structure.</para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md291">
|
|
<title>Syntax</title>
|
|
<para><literallayout><computeroutput>[_keyField, _data] call ramdb_db_fnc_hashSet
|
|
</computeroutput></literallayout></para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md292">
|
|
<title>Parameters</title>
|
|
<para><informaltable frame="all">
|
|
<tgroup cols="4" align="left" colsep="1" rowsep="1">
|
|
<colspec colname='c1'/>
|
|
<colspec colname='c2'/>
|
|
<colspec colname='c3'/>
|
|
<colspec colname='c4'/>
|
|
<thead>
|
|
<row class='markdownTableHead'>
|
|
<entry>
|
|
<para>Parameter </para>
|
|
</entry><entry>
|
|
<para>Type </para>
|
|
</entry><entry>
|
|
<para>Description </para>
|
|
</entry><entry>
|
|
<para>Default </para>
|
|
</entry></row>
|
|
</thead><tbody>
|
|
<row class='markdownTableRowOdd'>
|
|
<entry>
|
|
<para><computeroutput>_keyField</computeroutput> </para>
|
|
</entry><entry>
|
|
<para>String </para>
|
|
</entry><entry>
|
|
<para>Name of the field in the hash to set </para>
|
|
</entry><entry>
|
|
<para>"" </para>
|
|
</entry></row>
|
|
<row class='markdownTableRowEven'>
|
|
<entry>
|
|
<para><computeroutput>_data</computeroutput> </para>
|
|
</entry><entry>
|
|
<para>Array, String, Number, or Boolean </para>
|
|
</entry><entry>
|
|
<para>The value to store in the hash field </para>
|
|
</entry><entry>
|
|
<para>[] </para>
|
|
</entry></row>
|
|
</tbody>
|
|
</tgroup>
|
|
</informaltable>
|
|
</para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md293">
|
|
<title>Return Value</title>
|
|
<para>None. The operation runs synchronously to store the data.</para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md294">
|
|
<title>Examples</title><section xml:id="_md_docs_2hash_2hash_set_1autotoc_md295">
|
|
<title>Store a player's loadout:</title>
|
|
<para><literallayout><computeroutput>["loadout", [getUnitLoadout player]] call ramdb_db_fnc_hashSet;
|
|
</computeroutput></literallayout></para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md296">
|
|
<title>Store player preferences:</title>
|
|
<para><literallayout><computeroutput>["settings", [true, 30, "normal"]] call ramdb_db_fnc_hashSet;
|
|
</computeroutput></literallayout></para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md297">
|
|
<title>Store data from a client:</title>
|
|
<para><literallayout><computeroutput>["clientInfo", [name player, getPlayerUID player]] remoteExecCall ["ramdb_db_fnc_hashSet", 2, false];
|
|
</computeroutput></literallayout></para>
|
|
</section>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md298">
|
|
<title>Notes</title>
|
|
<para><itemizedlist>
|
|
<listitem>
|
|
<para>Stores a single field-value pair in the current client's hash table</para>
|
|
</listitem><listitem>
|
|
<para>Both the field name and data parameters are required and validated</para>
|
|
</listitem><listitem>
|
|
<para>If the field already exists, its value will be overwritten</para>
|
|
</listitem><listitem>
|
|
<para>Supports various data types: arrays, strings, numbers, and booleans</para>
|
|
</listitem><listitem>
|
|
<para>This function automatically determines which hash table to use based on the caller's identity</para>
|
|
</listitem><listitem>
|
|
<para>Use <computeroutput>hashSetId</computeroutput> when you need to specify a particular hash table by ID</para>
|
|
</listitem><listitem>
|
|
<para>Complex data structures should be serialized into arrays</para>
|
|
</listitem><listitem>
|
|
<para>The operation is executed immediately and synchronously</para>
|
|
</listitem><listitem>
|
|
<para>All operations are logged for debugging purposes</para>
|
|
</listitem></itemizedlist>
|
|
</para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md299">
|
|
<title>Related Functions</title>
|
|
<para><itemizedlist>
|
|
<listitem>
|
|
<para><computeroutput>ramdb_db_fnc_hashSetId</computeroutput>: Sets a field value in a specific hash table (when you need to specify the ID)</para>
|
|
</listitem><listitem>
|
|
<para><computeroutput>ramdb_db_fnc_hashGet</computeroutput>: Retrieves a field value from the current client's hash table</para>
|
|
</listitem><listitem>
|
|
<para><computeroutput>ramdb_db_fnc_hashGetAll</computeroutput>: Retrieves all fields from the current client's hash table</para>
|
|
</listitem><listitem>
|
|
<para><computeroutput>ramdb_db_fnc_hashSetBulk</computeroutput>: Sets multiple fields in the current client's hash table</para>
|
|
</listitem><listitem>
|
|
<para><computeroutput>ramdb_db_fnc_hashDelete</computeroutput>: Removes the current client's hash table</para>
|
|
</listitem></itemizedlist>
|
|
</para>
|
|
</section>
|
|
<section xml:id="_md_docs_2hash_2hash_set_1autotoc_md300">
|
|
<title>Links</title>
|
|
<para><link linkend="_md_docs_2hash_2hash_delete">Hash Delete</link> | <link linkend="_md_docs_2hash_2hash_delete_id">Hash Delete ID</link> | <link linkend="_md_docs_2hash_2hash_get">Hash Get</link> | <link linkend="_md_docs_2hash_2hash_get_all">Hash Get All</link> | <link linkend="_md_docs_2hash_2hash_get_all_id">Hash Get All ID</link> | <link linkend="_md_docs_2hash_2hash_get_id">Hash Get ID</link> | <link linkend="_md_docs_2hash_2hash_remove">Hash Remove</link> | <link linkend="_md_docs_2hash_2hash_remove_id">Hash Remove ID</link> | <link linkend="_md_docs_2hash_2hash_set">Hash Set</link> | <link linkend="_md_docs_2hash_2hash_set_bulk">Hash Set Bulk</link> | <link linkend="_md_docs_2hash_2hash_set_id">Hash Set ID</link> | <link linkend="_md_docs_2hash_2hash_set_id_bulk">Hash Set ID Bulk</link> </para>
|
|
</section>
|
|
</section>
|
|
</section>
|