dragonfly/docs/hash/README.md
2026-01-13 20:19:07 -06:00

46 lines
1.8 KiB
Markdown

# Hash Operations
## Important Payload Limit
Keep payloads under 20,480 bytes. This is the maximum size the engine can send or receive at one time. If you expect a response larger than 20,480 bytes, provide a callback function so the mod can use its internal fetch/chunking flow and deliver the reconstructed data to your callback.
This section contains documentation for the hash operations of ArmaDragonflyClient that allow for working with hash tables (key-value pairs within a namespace).
## Available Functions
- [hashGet](hashGet.md) - Get a field from a hash
- [hashGetAll](hashGetAll.md) - Get all fields from a hash
- [hashGetAllId](hashGetAllId.md) - Get all fields from a hash for a specific ID
- [hashGetId](hashGetId.md) - Get a field from a hash for a specific ID
- [hashSet](hashSet.md) - Set a field in a hash
- [hashSetBulk](hashSetBulk.md) - Set multiple fields in a hash in one operation
- [hashSetId](hashSetId.md) - Set a field in a hash for a specific ID
- [hashSetIdBulk](hashSetIdBulk.md) - Set multiple fields in a hash for a specific ID in one operation
## Example Usage
```sqf
// Context mode examples
["myField", [myValue]] call dragonfly_db_fnc_hashSet;
["myField", "myFunction"] call dragonfly_db_fnc_hashGet;
["myFunction"] call dragonfly_db_fnc_hashGetAll;
// Set multiple hash fields in one operation
[[
"loadout", [getUnitLoadout player],
"position", [getPosASL player],
"direction", [getDir player]
]] call dragonfly_db_fnc_hashSetBulk;
// ID-specific examples
["myHash", "myField", [myValue]] call dragonfly_db_fnc_hashSetId;
["myHash", "myField", "myFunction"] call dragonfly_db_fnc_hashGetId;
["myHash"] call dragonfly_db_fnc_hashGetAllId;
```
## Related Categories
- [Core Functions](../core/README.md)
- [Basic Data Operations](../basic/README.md)
- [List Operations](../list/README.md)