mccp_result_t mccp_hashmap_clear(mccp_hashmap_t *hmptr, bool free_values) { mccp_result_t ret = MCCP_RESULT_ANY_FAILURES; if (hmptr != NULL && *hmptr != NULL) { s_write_lock(*hmptr); { if ((*hmptr)->m_is_operational == true) { (*hmptr)->m_is_operational = false; s_reinit(*hmptr, free_values); (*hmptr)->m_is_operational = true; ret = MCCP_RESULT_OK; } else { ret = MCCP_RESULT_NOT_OPERATIONAL; } } s_unlock(*hmptr); } else { ret = MCCP_RESULT_INVALID_ARGS; } return ret; }
static inline lagopus_result_t s_clear(lagopus_hashmap_t *hmptr, bool free_values) { lagopus_result_t ret = LAGOPUS_RESULT_ANY_FAILURES; if ((*hmptr)->m_is_operational == true) { (*hmptr)->m_is_operational = false; s_reinit(*hmptr, free_values); (*hmptr)->m_is_operational = true; ret = LAGOPUS_RESULT_OK; } else { ret = LAGOPUS_RESULT_NOT_OPERATIONAL; } return ret; }