move doxy docs out of the ghash header into the C file.
This commit is contained in:
@@ -78,60 +78,15 @@ void BLI_ghash_flag_clear(GHash *gh, unsigned int flag);
|
|||||||
|
|
||||||
/* *** */
|
/* *** */
|
||||||
|
|
||||||
/**
|
|
||||||
* Create a new GHashIterator. The hash table must not be mutated
|
|
||||||
* while the iterator is in use, and the iterator will step exactly
|
|
||||||
* BLI_ghash_size(gh) times before becoming done.
|
|
||||||
*
|
|
||||||
* \param gh The GHash to iterate over.
|
|
||||||
* \return Pointer to a new DynStr.
|
|
||||||
*/
|
|
||||||
GHashIterator *BLI_ghashIterator_new(GHash *gh);
|
GHashIterator *BLI_ghashIterator_new(GHash *gh);
|
||||||
/**
|
|
||||||
* Init an already allocated GHashIterator. The hash table must not
|
|
||||||
* be mutated while the iterator is in use, and the iterator will
|
|
||||||
* step exactly BLI_ghash_size(gh) times before becoming done.
|
|
||||||
*
|
|
||||||
* \param ghi The GHashIterator to initialize.
|
|
||||||
* \param gh The GHash to iterate over.
|
|
||||||
*/
|
|
||||||
void BLI_ghashIterator_init(GHashIterator *ghi, GHash *gh);
|
void BLI_ghashIterator_init(GHashIterator *ghi, GHash *gh);
|
||||||
/**
|
|
||||||
* Free a GHashIterator.
|
|
||||||
*
|
|
||||||
* \param ghi The iterator to free.
|
|
||||||
*/
|
|
||||||
void BLI_ghashIterator_free(GHashIterator *ghi);
|
void BLI_ghashIterator_free(GHashIterator *ghi);
|
||||||
|
|
||||||
/**
|
|
||||||
* Retrieve the key from an iterator.
|
|
||||||
*
|
|
||||||
* \param ghi The iterator.
|
|
||||||
* \return The key at the current index, or NULL if the
|
|
||||||
* iterator is done.
|
|
||||||
*/
|
|
||||||
void *BLI_ghashIterator_getKey(GHashIterator *ghi);
|
void *BLI_ghashIterator_getKey(GHashIterator *ghi);
|
||||||
/**
|
|
||||||
* Retrieve the value from an iterator.
|
|
||||||
*
|
|
||||||
* \param ghi The iterator.
|
|
||||||
* \return The value at the current index, or NULL if the
|
|
||||||
* iterator is done.
|
|
||||||
*/
|
|
||||||
void *BLI_ghashIterator_getValue(GHashIterator *ghi);
|
void *BLI_ghashIterator_getValue(GHashIterator *ghi);
|
||||||
/**
|
|
||||||
* Steps the iterator to the next index.
|
|
||||||
*
|
|
||||||
* \param ghi The iterator.
|
|
||||||
*/
|
|
||||||
void BLI_ghashIterator_step(GHashIterator *ghi);
|
void BLI_ghashIterator_step(GHashIterator *ghi);
|
||||||
/**
|
|
||||||
* Determine if an iterator is done (has reached the end of
|
|
||||||
* the hash table).
|
|
||||||
*
|
|
||||||
* \param ghi The iterator.
|
|
||||||
* \return True if done, False otherwise.
|
|
||||||
*/
|
|
||||||
bool BLI_ghashIterator_done(GHashIterator *ghi);
|
bool BLI_ghashIterator_done(GHashIterator *ghi);
|
||||||
|
|
||||||
#define GHASH_ITER(gh_iter_, ghash_) \
|
#define GHASH_ITER(gh_iter_, ghash_) \
|
||||||
|
@@ -486,12 +486,29 @@ void BLI_ghash_flag_clear(GHash *gh, unsigned int flag)
|
|||||||
/** \name Iterator API
|
/** \name Iterator API
|
||||||
* \{ */
|
* \{ */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new GHashIterator. The hash table must not be mutated
|
||||||
|
* while the iterator is in use, and the iterator will step exactly
|
||||||
|
* BLI_ghash_size(gh) times before becoming done.
|
||||||
|
*
|
||||||
|
* \param gh The GHash to iterate over.
|
||||||
|
* \return Pointer to a new DynStr.
|
||||||
|
*/
|
||||||
GHashIterator *BLI_ghashIterator_new(GHash *gh)
|
GHashIterator *BLI_ghashIterator_new(GHash *gh)
|
||||||
{
|
{
|
||||||
GHashIterator *ghi = MEM_mallocN(sizeof(*ghi), "ghash iterator");
|
GHashIterator *ghi = MEM_mallocN(sizeof(*ghi), "ghash iterator");
|
||||||
BLI_ghashIterator_init(ghi, gh);
|
BLI_ghashIterator_init(ghi, gh);
|
||||||
return ghi;
|
return ghi;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Init an already allocated GHashIterator. The hash table must not
|
||||||
|
* be mutated while the iterator is in use, and the iterator will
|
||||||
|
* step exactly BLI_ghash_size(gh) times before becoming done.
|
||||||
|
*
|
||||||
|
* \param ghi The GHashIterator to initialize.
|
||||||
|
* \param gh The GHash to iterate over.
|
||||||
|
*/
|
||||||
void BLI_ghashIterator_init(GHashIterator *ghi, GHash *gh)
|
void BLI_ghashIterator_init(GHashIterator *ghi, GHash *gh)
|
||||||
{
|
{
|
||||||
ghi->gh = gh;
|
ghi->gh = gh;
|
||||||
@@ -504,20 +521,46 @@ void BLI_ghashIterator_init(GHashIterator *ghi, GHash *gh)
|
|||||||
ghi->curEntry = ghi->gh->buckets[ghi->curBucket];
|
ghi->curEntry = ghi->gh->buckets[ghi->curBucket];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Free a GHashIterator.
|
||||||
|
*
|
||||||
|
* \param ghi The iterator to free.
|
||||||
|
*/
|
||||||
void BLI_ghashIterator_free(GHashIterator *ghi)
|
void BLI_ghashIterator_free(GHashIterator *ghi)
|
||||||
{
|
{
|
||||||
MEM_freeN(ghi);
|
MEM_freeN(ghi);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the key from an iterator.
|
||||||
|
*
|
||||||
|
* \param ghi The iterator.
|
||||||
|
* \return The key at the current index, or NULL if the
|
||||||
|
* iterator is done.
|
||||||
|
*/
|
||||||
void *BLI_ghashIterator_getKey(GHashIterator *ghi)
|
void *BLI_ghashIterator_getKey(GHashIterator *ghi)
|
||||||
{
|
{
|
||||||
return ghi->curEntry ? ghi->curEntry->key : NULL;
|
return ghi->curEntry ? ghi->curEntry->key : NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Retrieve the value from an iterator.
|
||||||
|
*
|
||||||
|
* \param ghi The iterator.
|
||||||
|
* \return The value at the current index, or NULL if the
|
||||||
|
* iterator is done.
|
||||||
|
*/
|
||||||
void *BLI_ghashIterator_getValue(GHashIterator *ghi)
|
void *BLI_ghashIterator_getValue(GHashIterator *ghi)
|
||||||
{
|
{
|
||||||
return ghi->curEntry ? ghi->curEntry->val : NULL;
|
return ghi->curEntry ? ghi->curEntry->val : NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Steps the iterator to the next index.
|
||||||
|
*
|
||||||
|
* \param ghi The iterator.
|
||||||
|
*/
|
||||||
void BLI_ghashIterator_step(GHashIterator *ghi)
|
void BLI_ghashIterator_step(GHashIterator *ghi)
|
||||||
{
|
{
|
||||||
if (ghi->curEntry) {
|
if (ghi->curEntry) {
|
||||||
@@ -530,6 +573,14 @@ void BLI_ghashIterator_step(GHashIterator *ghi)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if an iterator is done (has reached the end of
|
||||||
|
* the hash table).
|
||||||
|
*
|
||||||
|
* \param ghi The iterator.
|
||||||
|
* \return True if done, False otherwise.
|
||||||
|
*/
|
||||||
bool BLI_ghashIterator_done(GHashIterator *ghi)
|
bool BLI_ghashIterator_done(GHashIterator *ghi)
|
||||||
{
|
{
|
||||||
return ghi->curEntry == NULL;
|
return ghi->curEntry == NULL;
|
||||||
|
Reference in New Issue
Block a user