ANTLR3_HASH_TABLE_struct(3)

ANTLR3_HASH_TABLE_struct(3) ANTLR3C ANTLR3_HASH_TABLE_struct(3)

NAME

ANTLR3_HASH_TABLE_struct - Structure that tracks a hash table.

SYNOPSIS

#include <antlr3collections.h>

Data Fields


int allowDups
Indicates whether the table allows duplicate keys. pANTLR3_HASH_BUCKET buckets
Points to the memory where the array of buckets starts. ANTLR3_UINT32 count
How many elements currently exist in the table. void(* del )(struct ANTLR3_HASH_TABLE_struct *table, void *key)
void(* delI )(struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key)
ANTLR3_BOOLEAN doStrdup
Whether the hash table should strdup the keys it is given or not. void(* free )(struct ANTLR3_HASH_TABLE_struct *table)
Pointer to function to completely delete this table. void *(* get )(struct ANTLR3_HASH_TABLE_struct *table, void *key)
void *(* getI )(struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key)
ANTLR3_UINT32 modulo
Number of buckets available in this table. ANTLR3_INT32(* put )(struct ANTLR3_HASH_TABLE_struct *table, void *key, void *element, void(ANTLR3_CDECL *freeptr)(void *))
ANTLR3_INT32(* putI )(struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key, void *element, void(ANTLR3_CDECL *freeptr)(void *))
pANTLR3_HASH_ENTRY(* remove )(struct ANTLR3_HASH_TABLE_struct *table, void *key)
pANTLR3_HASH_ENTRY(* removeI )(struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key)
ANTLR3_UINT32(* size )(struct ANTLR3_HASH_TABLE_struct *table)

Detailed Description

Structure that tracks a hash table.

Field Documentation

int ANTLR3_HASH_TABLE_struct::allowDups

Indicates whether the table allows duplicate keys.

Referenced by antlr3HashPut(), antlr3HashPutI(), and antlr3HashTableNew().

pANTLR3_HASH_BUCKET ANTLR3_HASH_TABLE_struct::buckets

Points to the memory where the array of buckets starts.

Referenced by antlr3EnumNew(), antlr3EnumNextEntry(), antlr3HashFree(), antlr3HashGet(), antlr3HashGetI(), antlr3HashPut(), antlr3HashPutI(), antlr3HashRemove(), antlr3HashRemoveI(), and antlr3HashTableNew().

ANTLR3_UINT32 ANTLR3_HASH_TABLE_struct::count

How many elements currently exist in the table.

Referenced by antlr3HashPut(), antlr3HashPutI(), antlr3HashRemove(), antlr3HashRemoveI(), antlr3HashSize(), and antlr3HashTableNew().

void(* ANTLR3_HASH_TABLE_struct::del) (struct ANTLR3_HASH_TABLE_struct *table, void *key)

Referenced by antlr3HashTableNew().

void(* ANTLR3_HASH_TABLE_struct::delI) (struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key)

Referenced by antlr3HashTableNew(), and antlr3ListDelete().

ANTLR3_BOOLEAN ANTLR3_HASH_TABLE_struct::doStrdup

Whether the hash table should strdup the keys it is given or not.

Referenced by antlr3HashPut(), antlr3HashRemove(), and antlr3HashTableNew().

void(* ANTLR3_HASH_TABLE_struct::free) (struct ANTLR3_HASH_TABLE_struct *table)

Pointer to function to completely delete this table.

Referenced by antlr3HashTableNew(), and antlr3ListFree().

void *(* ANTLR3_HASH_TABLE_struct::get) (struct ANTLR3_HASH_TABLE_struct *table, void *key)

Referenced by antlr3HashTableNew().

void *(* ANTLR3_HASH_TABLE_struct::getI) (struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key)

Referenced by antlr3HashTableNew(), and antlr3ListGet().

ANTLR3_UINT32 ANTLR3_HASH_TABLE_struct::modulo

Number of buckets available in this table.

Referenced by antlr3EnumNext(), antlr3EnumNextEntry(), antlr3HashFree(), antlr3HashGet(), antlr3HashGetI(), antlr3HashPut(), antlr3HashPutI(), antlr3HashRemove(), antlr3HashRemoveI(), and antlr3HashTableNew().

ANTLR3_INT32(* ANTLR3_HASH_TABLE_struct::put) (struct ANTLR3_HASH_TABLE_struct *table, void *key, void *element, void(ANTLR3_CDECL *freeptr)(void *))

Referenced by antlr3HashTableNew().

ANTLR3_INT32(* ANTLR3_HASH_TABLE_struct::putI) (struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key, void *element, void(ANTLR3_CDECL *freeptr)(void *))

Referenced by antlr3HashTableNew(), and antlr3ListPut().

pANTLR3_HASH_ENTRY(* ANTLR3_HASH_TABLE_struct::remove) (struct ANTLR3_HASH_TABLE_struct *table, void *key)

Referenced by antlr3HashTableNew().

pANTLR3_HASH_ENTRY(* ANTLR3_HASH_TABLE_struct::removeI) (struct ANTLR3_HASH_TABLE_struct *table, ANTLR3_INTKEY key)

Referenced by antlr3HashTableNew(), and antlr3ListRemove().

ANTLR3_UINT32(* ANTLR3_HASH_TABLE_struct::size) (struct ANTLR3_HASH_TABLE_struct *table)

Referenced by antlr3HashTableNew(), antlr3ListAdd(), and antlr3ListSize().

Author

Generated automatically by Doxygen for ANTLR3C from the source code.

Tue Apr 18 2023 Version 3.3.1