mccp_result_t mccp_hashmap_statistics(mccp_hashmap_t *hmptr, const char **msgptr) { mccp_result_t ret = MCCP_RESULT_ANY_FAILURES; if (hmptr != NULL && *hmptr != NULL && msgptr != NULL) { *msgptr = NULL; s_read_lock(*hmptr); { if ((*hmptr)->m_is_operational == true) { *msgptr = (const char *)HashStats(&((*hmptr)->m_hashtable)); if (*msgptr != NULL) { ret = MCCP_RESULT_OK; } else { ret = MCCP_RESULT_NO_MEMORY; } } else { ret = MCCP_RESULT_NOT_OPERATIONAL; } } s_unlock(*hmptr); } else { ret = MCCP_RESULT_INVALID_ARGS; } return ret; }
mccp_result_t mccp_hashmap_find(mccp_hashmap_t *hmptr, void *key, void **valptr) { mccp_result_t ret = MCCP_RESULT_ANY_FAILURES; if (hmptr != NULL && *hmptr != NULL && valptr != NULL) { s_read_lock(*hmptr); { ret = s_find(hmptr, key, valptr); } s_unlock(*hmptr); } else { ret = MCCP_RESULT_INVALID_ARGS; } return ret; }
lagopus_result_t lagopus_hashmap_find(lagopus_hashmap_t *hmptr, void *key, void **valptr) { lagopus_result_t ret = LAGOPUS_RESULT_ANY_FAILURES; if (hmptr != NULL && *hmptr != NULL && valptr != NULL) { int cstate; s_read_lock(*hmptr, &cstate); { ret = s_find(hmptr, key, valptr); } s_unlock(*hmptr, cstate); } else { ret = LAGOPUS_RESULT_INVALID_ARGS; } return ret; }
mccp_result_t mccp_hashmap_size(mccp_hashmap_t *hmptr) { mccp_result_t ret = MCCP_RESULT_ANY_FAILURES; if (hmptr != NULL && *hmptr != NULL) { s_read_lock(*hmptr); { if ((*hmptr)->m_is_operational == true) { ret = (*hmptr)->m_n_entries; } else { ret = MCCP_RESULT_NOT_OPERATIONAL; } } s_unlock(*hmptr); } else { ret = MCCP_RESULT_INVALID_ARGS; } return ret; }
lagopus_result_t lagopus_hashmap_size(lagopus_hashmap_t *hmptr) { lagopus_result_t ret = LAGOPUS_RESULT_ANY_FAILURES; if (hmptr != NULL && *hmptr != NULL) { int cstate; s_read_lock(*hmptr, &cstate); { if ((*hmptr)->m_is_operational == true) { ret = (*hmptr)->m_n_entries; } else { ret = LAGOPUS_RESULT_NOT_OPERATIONAL; } } s_unlock(*hmptr, cstate); } else { ret = LAGOPUS_RESULT_INVALID_ARGS; } return ret; }