Source code

Revision control

Copy as Markdown

Other Tools

# PL_HashTableRemove
Removes the entry with the specified key from the hash table.
## Syntax
```{code}
#include <plhash.h>
PRBool PL_HashTableRemove(
PLHashTable *ht,
const void *key);
```
### Parameters
The function has the following parameters:
`ht`
: A pointer to the hash table from which to remove the entry.
`key`
: A pointer to the key for the entry to be removed.
## Description
If there is no entry in the table with the specified key,
{ref}`PL_HashTableRemove` returns `PR_FALSE`. If the entry exists,
{ref}`PL_HashTableRemove` removes the entry from the table, invokes
`freeEntry` with the `HT_FREE_ENTRY` flag to frees the entry, and
returns `PR_TRUE`.
If the table is underloaded, {ref}`PL_HashTableRemove` also shrinks the
number of buckets by half.
## Remark
This function should return {ref}`PRStatus`.