---
name: "rhash_remove"
section: "3"
platform: "linux"
package: "libroy-dev"
version: "1.0.8-1"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/rhash_remove"
---

# rhash\_remove(3)

remove an entry from an RHash by key.

## NAME

rhash\_remove - remove an entry from an RHash by key.

## SYNOPSIS

\#include \<roy.h\>

void \* rhash\_remove (RHash *\*hash*, void \**key*);

## DESCRIPTION

Removes the entry specified in *key* from a hash table.  The entry is not free'd, it is simply unlinked from the hash table, and will no longer be available for lookup.  It is the programmers responsability to free the user defined entry.

*key* is of the type as defined by the compare and hash functions provided at RHash creation time.  See [*rhash*(3)](/rhash/3.md) for details.

## RETURN VALUE

This function returns the entry as inserted via [*rhash\_insert*(3)](/rhash_insert/3.md). If no such entry exists identified by the given key, then NULL is returned.

## SEE ALSO

[*rhash*(3)](/rhash/3.md), [*rhash\_entry\_getkey*(3)](/rhash_entry_getkey/3.md),  [*rhash\_entry\_setkey*(3)](/rhash_entry_setkey/3.md), [*rhash\_free*(3)](/rhash_free/3.md),  [*rhash\_insert*(3)](/rhash_insert/3.md), [*rhash\_len*(3)](/rhash_len/3.md),  [*rhash\_lookup*(3)](/rhash_lookup/3.md), [*rhash\_lookup\_next*(3)](/rhash_lookup_next/3.md),  [*rhash\_new*(3)](/rhash_new/3.md), [*rhash\_remove\_entry*(3)](/rhash_remove_entry/3.md),  [*roy*(3)](/roy/3.md)
