ANTLR3_HASH_TABLE_struct Struct Reference

#include <antlr3collections.h>

Collaboration diagram for ANTLR3_HASH_TABLE_struct:

Collaboration graph
[legend]

Detailed Description

Structure that tracks a hash table.

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)

Field Documentation

Indicates whether the table allows duplicate keys.

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

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().

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

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

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().

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().


The documentation for this struct was generated from the following file:

Generated on Mon Nov 29 17:24:05 2010 for ANTLR3C by  doxygen 1.5.5