Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members
|
The dictionary class is a fast-access hash table, mapping strings to void-pointers. More...
#include <FXDictionary.h>
Classes | |
struct | Entry |
Public Member Functions | |
FXDictionary () | |
Construct empty dictionary. | |
FXDictionary (const FXDictionary &other) | |
Construct from another dictionary. | |
FXival | no () const |
Return the size of the table, including the empty slots. | |
FXival | used () const |
Return number of used slots in the table. | |
FXival | free () const |
Return number of free slots in the table. | |
FXbool | empty () const |
See if map is empty. | |
FXDictionary & | operator= (const FXDictionary &other) |
Assignment operator. | |
FXDictionary & | adopt (FXDictionary &other) |
Adopt dictionary from another. | |
FXival | find (const FXchar *ky) const |
Find position of given key, returning -1 if not found. | |
FXival | find (const FXString &ky) const |
Find position of given key, returning -1 if not found. | |
FXbool | has (const FXchar *ky) const |
Check if key is mapped. | |
FXbool | has (const FXString &ky) const |
Check if key is mapped. | |
void *& | at (const FXchar *ky) |
Return reference to slot assocated with given key. | |
void *const & | at (const FXchar *ky) const |
Return constant reference to slot assocated with given key. | |
void *& | at (const FXString &ky) |
Return reference to slot assocated with given key. | |
void *const & | at (const FXString &ky) const |
Return constant reference to slot assocated with given key. | |
void *& | operator[] (const FXchar *ky) |
Return reference to slot assocated with given key. | |
void *const & | operator[] (const FXchar *ky) const |
Return constant reference to slot assocated with given key. | |
void *& | operator[] (const FXString &ky) |
Return reference to slot assocated with given key. | |
void *const & | operator[] (const FXString &ky) const |
Return constant reference to slot assocated with given key. | |
void * | insert (const FXchar *ky, void *ptr=nullptr) |
Insert association with given key; return old value, if any. | |
void * | insert (const FXString &ky, void *ptr=nullptr) |
Insert association with given key; return old value, if any. | |
void * | remove (const FXchar *ky) |
Remove association with given key; return old value, if any. | |
void * | remove (const FXString &ky) |
Remove association with given key; return old value, if any. | |
void * | erase (FXival pos) |
Erase data at pos in the table; return old value, if any. | |
FXbool | empty (FXival pos) const |
Return true if slot is empty. | |
const FXString & | key (FXival pos) const |
Return key at position pos. | |
void *& | data (FXival pos) |
Return reference to slot at position pos. | |
void *const & | data (FXival pos) const |
Return constant reference to slot at position pos. | |
FXbool | clear () |
Clear entire table. | |
~FXDictionary () | |
Destroy table. | |
Protected Member Functions | |
FXbool | no (FXival n) |
void | used (FXival u) |
void | free (FXival f) |
FXbool | resize (FXival n) |
Protected Attributes | |
Entry * | table |
The dictionary class is a fast-access hash table, mapping strings to void-pointers.
Subclasses of dictionary can easily specialize the void-pointers to pointers to particular types; to this end subclasses must overload certain API's and perform the necessary type-casts for the proper interpretation of the stored pointer values. Note that many complex containers in FOX now fit inside a pointer, and thus these types can be used in dictionaries as well!
Copyright © 1997-2022 Jeroen van der Zijp |