dragonfly/docs/hash/hashGetAll.md
Jacob Schmidt c8d81ba3bb
All checks were successful
Build / Build (push) Successful in 39s
docs: Update README.md with detailed documentation
This commit significantly enhances the `README.md` file, providing comprehensive documentation for the ArmaDragonflyClient.

Key changes:

*   **Detailed Function Categories:** Categorized functions for better organization (Core, Basic Data Operations, Hash Operations, List Operations).
*   **Usage Examples:** Added clear and concise usage examples for basic operations, hash operations (context and ID-specific), and list operations.
*   **Function Documentation Structure:** Outlined the structure for individual function documentation.
*   **License Information:** Updated the license information.
2025-03-30 17:15:35 -05:00

70 lines
3.2 KiB
Markdown

---
title: ArmaDragonflyClient - Hash Get All
icon: mdi:file-text-outline
excerpt: Get all fields from the current client's hash table in DragonflyClient.
---
# dragonfly_db_fnc_hashGetAll
## Description
Retrieves all fields and values from 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 `hashGetAllId` which requires manually specifying an ID. It returns the entire hash table data through a callback function, allowing access to all stored key-value pairs at once.
## Syntax
```sqf
[_function, _call, _netId] call dragonfly_db_fnc_hashGetAll
```
## Parameters
| Parameter | Type | Description | Default |
|-------------|---------|------------------------------------------------------------|---------|
| `_function` | String | Name of the function to receive the retrieved data | "" |
| `_call` | Boolean | Whether to call the function directly (true) or spawn (false) | false |
| `_netId` | String | (Optional) NetID of the player to receive the data | "" |
## Return Value
None. The retrieved data is passed to the specified callback function asynchronously.
## Examples
### Retrieve all client hash data:
```sqf
["dragonfly_db_fnc_test"] call dragonfly_db_fnc_hashGetAll;
```
### Retrieve data with synchronous callback:
```sqf
["dragonfly_db_fnc_processAllData", true] call dragonfly_db_fnc_hashGetAll;
```
### Retrieve data and send it to a specific client:
```sqf
["dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGetAll", 2, false];
```
## Notes
- Returns the complete hash table for the current client with all fields and values as a nested array
- The data is retrieved asynchronously through the extension's callback system
- The callback function name must be provided and is validated
- When a netId is provided, the data is sent to that specific client
- The `_call` parameter determines whether the function is called directly (synchronous) or spawned (asynchronous)
- This function automatically determines which hash table to use based on the caller's identity
- Use `hashGetAllId` when you need to specify a particular hash table by ID
- For large hash tables, retrieving all data may impact performance
- All operations are logged for debugging purposes
## Related Functions
- `dragonfly_db_fnc_hashGet`: Retrieves a specific field value from the current client's hash table
- `dragonfly_db_fnc_hashGetId`: Retrieves a specific field value from a specific hash table (when you need to specify the ID)
- `dragonfly_db_fnc_hashGetAllId`: Retrieves all fields from a specific hash table (when you need to specify the ID)
- `dragonfly_db_fnc_hashSet`: Sets a field value in the current client's hash table
- `dragonfly_db_fnc_scheduler`: Processes the callback from the database extension
## Links
[Hash Get](hashGet.md) |
[Hash Get All](hashGetAll.md) |
[Hash Get All ID](hashGetAllId.md) |
[Hash Get ID](hashGetId.md) |
[Hash Set](hashSet.md) |
[Hash Set Bulk](hashSetBulk.md) |
[Hash Set ID](hashSetId.md) |
[Hash Set ID Bulk](hashSetIdBulk.md)