MagickCore  7.0.0
hashmap.c File Reference
Include dependency graph for hashmap.c:

Go to the source code of this file.

Data Structures

struct  _ElementInfo
 
struct  _EntryInfo
 
struct  _LinkedListInfo
 
struct  _HashmapInfo
 

Macros

#define MaxCapacities   20
 

Typedefs

typedef struct _ElementInfo ElementInfo
 
typedef struct _EntryInfo EntryInfo
 

Functions

MagickExport MagickBooleanType AppendValueToLinkedList (LinkedListInfo *list_info, const void *value)
 
MagickExport void ClearLinkedList (LinkedListInfo *list_info, void *(*relinquish_value)(void *))
 
MagickExport MagickBooleanType CompareHashmapString (const void *target, const void *source)
 
MagickExport MagickBooleanType CompareHashmapStringInfo (const void *target, const void *source)
 
MagickExport HashmapInfoDestroyHashmap (HashmapInfo *hashmap_info)
 
MagickExport LinkedListInfoDestroyLinkedList (LinkedListInfo *list_info, void *(*relinquish_value)(void *))
 
MagickExport void * GetLastValueInLinkedList (LinkedListInfo *list_info)
 
MagickExport void * GetNextKeyInHashmap (HashmapInfo *hashmap_info)
 
MagickExport void * GetNextValueInHashmap (HashmapInfo *hashmap_info)
 
MagickExport void * GetNextValueInLinkedList (LinkedListInfo *list_info)
 
MagickExport size_t GetNumberOfEntriesInHashmap (const HashmapInfo *hashmap_info)
 
MagickExport size_t GetNumberOfElementsInLinkedList (const LinkedListInfo *list_info)
 
MagickExport void * GetValueFromHashmap (HashmapInfo *hashmap_info, const void *key)
 
MagickExport void * GetValueFromLinkedList (LinkedListInfo *list_info, const size_t index)
 
MagickExport size_t HashPointerType (const void *pointer)
 
MagickExport size_t HashStringType (const void *string)
 
MagickExport size_t HashStringInfoType (const void *string_info)
 
MagickExport MagickBooleanType InsertValueInLinkedList (LinkedListInfo *list_info, const size_t index, const void *value)
 
MagickExport MagickBooleanType InsertValueInSortedLinkedList (LinkedListInfo *list_info, int(*compare)(const void *, const void *), void **replace, const void *value)
 
MagickExport MagickBooleanType IsHashmapEmpty (const HashmapInfo *hashmap_info)
 
MagickExport MagickBooleanType IsLinkedListEmpty (const LinkedListInfo *list_info)
 
MagickExport MagickBooleanType LinkedListToArray (LinkedListInfo *list_info, void **array)
 
MagickExport HashmapInfoNewHashmap (const size_t capacity, size_t(*hash)(const void *), MagickBooleanType(*compare)(const void *, const void *), void *(*relinquish_key)(void *), void *(*relinquish_value)(void *))
 
MagickExport LinkedListInfoNewLinkedList (const size_t capacity)
 
static MagickBooleanType IncreaseHashmapCapacity (HashmapInfo *hashmap_info)
 
MagickExport MagickBooleanType PutEntryInHashmap (HashmapInfo *hashmap_info, const void *key, const void *value)
 
MagickExport void * RemoveElementByValueFromLinkedList (LinkedListInfo *list_info, const void *value)
 
MagickExport void * RemoveElementFromLinkedList (LinkedListInfo *list_info, const size_t index)
 
MagickExport void * RemoveEntryFromHashmap (HashmapInfo *hashmap_info, const void *key)
 
MagickExport void * RemoveLastElementFromLinkedList (LinkedListInfo *list_info)
 
MagickExport void ResetHashmapIterator (HashmapInfo *hashmap_info)
 
MagickExport void ResetLinkedListIterator (LinkedListInfo *list_info)
 

Macro Definition Documentation

#define MaxCapacities   20

Referenced by IncreaseHashmapCapacity().

Typedef Documentation

typedef struct _ElementInfo ElementInfo
typedef struct _EntryInfo EntryInfo

Function Documentation

MagickExport MagickBooleanType CompareHashmapString ( const void *  target,
const void *  source 
)

Definition at line 258 of file hashmap.c.

References LocaleCompare(), MagickFalse, and MagickTrue.

MagickExport MagickBooleanType CompareHashmapStringInfo ( const void *  target,
const void *  source 
)

Definition at line 296 of file hashmap.c.

References CompareStringInfo(), MagickFalse, and MagickTrue.

MagickExport size_t GetNumberOfEntriesInHashmap ( const HashmapInfo hashmap_info)

Definition at line 647 of file hashmap.c.

References _HashmapInfo::entries, MagickCoreSignature, and _HashmapInfo::signature.

MagickExport size_t HashPointerType ( const void *  pointer)

Definition at line 848 of file hashmap.c.

Referenced by NewHashmap().

MagickExport size_t HashStringInfoType ( const void *  string_info)
MagickExport MagickBooleanType IsHashmapEmpty ( const HashmapInfo hashmap_info)