ramdb/docs/hash/README.md

49 lines
1.9 KiB
Markdown

# Hash Operations
This section contains documentation for the hash operations of ArmaRAMDb that allow for working with hash tables (key-value pairs within a namespace).
## Available Functions
- [hashDelete](hashDelete.md) - Delete a hash
- [hashDeleteId](hashDeleteId.md) - Delete a hash for a specific ID
- [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
- [hashRemove](hashRemove.md) - Remove a field from a hash
- [hashRemoveId](hashRemoveId.md) - Remove 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 ramdb_db_fnc_hashSet;
["myField", "myFunction"] call ramdb_db_fnc_hashGet;
["myFunction"] call ramdb_db_fnc_hashGetAll;
["myField"] call ramdb_db_fnc_hashRemove;
[] call ramdb_db_fnc_hashDelete;
// Set multiple hash fields in one operation
[[
"loadout", [getUnitLoadout player],
"position", [getPosASL player],
"direction", [getDir player]
]] call ramdb_db_fnc_hashSetBulk;
// ID-specific examples
["myHash", "myField", [myValue]] call ramdb_db_fnc_hashSetId;
["myHash", "myField", "myFunction"] call ramdb_db_fnc_hashGetId;
["myHash"] call ramdb_db_fnc_hashGetAllId;
["myHash", "myField"] call ramdb_db_fnc_hashRemoveId;
["myHash"] call ramdb_db_fnc_hashDeleteId;
```
## Related Categories
- [Core Functions](../core/index.md)
- [Basic Data Operations](../basic/index.md)
- [List Operations](../list/index.md)