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

# rbhash\_lookup(3)

look up an entry in an RBHash.

## NAME

rbhash\_lookup - look up an entry in an RBHash.

## SYNOPSIS

\#include \<roy.h\>

void \* rbhash\_lookup (RBHash *\*hash*, RBuf \**key*);

## DESCRIPTION

Look up an entry in an RBHash.  *key* is a regular RBuf. See [*rbhash*(3)](/rbhash/3.md) for details.

[*rbhash\_lookup\_next*(3)](/rbhash_lookup_next/3.md) uses the *entry* returned from a previous call to [*rbhash\_lookup*(3)](/rbhash_lookup/3.md) to return the next entry in the hash table matching the same key as used in [*rbhash\_lookup*(3)](/rbhash_lookup/3.md).

## RETURN VALUE

These functions return a pointer to the entry that was previously inserted into the hash with [*rbhash\_insert*(3)](/rbhash_insert/3.md).  If no entry exists with this key, NULL is returned.

## DUPLICATE ENTRIES

If an entry is inserted into the hash table with a key of an entry that already exists in the hash table, they will both be added and no error condition will exist.  Any calls thereafter to [*rbhash\_lookup*(3)](/rbhash_lookup/3.md) will return the last entry inserted with that key.  [*rbhash\_lookup\_next*(3)](/rbhash_lookup_next/3.md) may be used after using [*rbhash\_lookup*(3)](/rbhash_lookup/3.md) to return the previous entries with the same key in the hash table.

If you do not wish to have multiple entries with the same key, you must do a [*rbhash\_lookup*(3)](/rbhash_lookup/3.md) prior to inserting the new entry.

## SEE ALSO

[*rbhash*(3)](/rbhash/3.md), [*rbhash\_entry\_getkey*(3)](/rbhash_entry_getkey/3.md),  [*rbhash\_entry\_setkey*(3)](/rbhash_entry_setkey/3.md), [*rbhash\_free*(3)](/rbhash_free/3.md),  [*rbhash\_insert*(3)](/rbhash_insert/3.md), [*rbhash\_len*(3)](/rbhash_len/3.md),  [*rbhash\_lookup\_next*(3)](/rbhash_lookup_next/3.md), [*rbhash\_new*(3)](/rbhash_new/3.md),  [*rbhash\_remove*(3)](/rbhash_remove/3.md), [*rbhash\_remove\_entry*(3)](/rbhash_remove_entry/3.md),  [*roy*(3)](/roy/3.md)
