ValidateMap
ValidateMap
Description
Validate whether a given Map object is valid. Aborts if provided map is uninitialized or corrupted.
Parameters
| Name | Direction | Description |
|---|---|---|
m |
in | Pointer to Map object to validate. |
Success
Continue execution, meaning given map is most probably valid.
Failure
abort
Usage example (Cross-references)
Usage examples (Cross-references)
- In
Map.c:413:
size hash_offset
) {
ValidateMap(map);
clear_map(map, entry_size, key_offset, key_size, value_offset, value_size, hash_offset);- In
Map.c:452:
size idx;
ValidateMap(map);
for (idx = 0; idx < map->capacity; idx++) {- In
Map.c:487:
size new_capacity;
size idx;
ValidateMap(map);
validate_map_policy(&policy);- In
Map.c:556:
size target_capacity;
ValidateMap(map);
target_capacity = map->policy.next_capacity(map->length, map->capacity, map->tombstones, n);- In
Map.c:579:
u64 hash;
ValidateMap(map);
if (!map->capacity) {- In
Map.c:592:
bool map_contains(GenericMap *map, const void *key, size entry_size, size key_offset, size key_size, size hash_offset) {
ValidateMap(map);
return map->capacity && (map_find_index(map, key, entry_size, key_offset, key_size, hash_offset) < map->capacity);- In
Map.c:609:
size idx;
ValidateMap(map);
if (!map->value_compare) {- In
Map.c:634:
size count = 0;
ValidateMap(map);
for (idx = 0; idx < map->capacity; idx++) {- In
Map.c:669:
bool previous_seen = false;
ValidateMap(map);
if (!map->capacity || previous_index >= map->capacity) {- In
Map.c:717:
size count = 0;
ValidateMap(map);
if (!map->capacity) {- In
Map.c:743:
size idx;
ValidateMap(map);
if (!map->capacity) {- In
Map.c:802:
size idx;
ValidateMap(map);
if (cursor.__index == (size)-1) {- In
Map.c:813:
void *map_value_ptr_from_cursor(GenericMap *map, MapValueCursor cursor, size entry_size, size value_offset) {
ValidateMap(map);
if (cursor.__index == (size)-1 || cursor.__index >= map->capacity ||- In
Map.c:838:
u64 hash;
ValidateMap(map);
if (map->capacity == 0) {- In
Map.c:914:
void *dst_value;
ValidateMap(map);
if (!map->capacity) {- In
Map.c:981:
size idx;
ValidateMap(map);
if (!map->capacity) {- In
Map.c:1009:
size idx;
ValidateMap(map);
if (!map->value_compare) {- In
Map.c:1044:
size removed = 0;
ValidateMap(map);
if (!map->capacity) {- In
Map.c:1075:
size removed = 0;
ValidateMap(map);
if (!predicate) {- In
Map.c:1110:
size removed = 0;
ValidateMap(map);
if (!predicate) {- In
KvConfig.c:350:
}
ValidateMap(cfg);
while (StrIterRemainingLength(&si)) {- In
Foreach.h:19:
#define MapForeachPairPtr(m, key_ptr, value_ptr) \
for (TYPE_OF(m) UNPL(pm) = (m); UNPL(pm); UNPL(pm) = NULL) \
if ((ValidateMap(UNPL(pm)), 1) && UNPL(pm)->length > 0) \
for (size UNPL(slot) = 0; UNPL(slot) < UNPL(pm)->capacity; UNPL(slot)++) \
if (MISRA_PRIV_MapSlotOccupied(UNPL(pm), UNPL(slot))) \- In
Foreach.h:37:
#define MapForeachPair(m, key_var, value_var) \
for (TYPE_OF(m) UNPL(pm) = (m); UNPL(pm); UNPL(pm) = NULL) \
if ((ValidateMap(UNPL(pm)), 1) && UNPL(pm)->length > 0) \
for (size UNPL(slot) = 0; UNPL(slot) < UNPL(pm)->capacity; UNPL(slot)++) \
if (MISRA_PRIV_MapSlotOccupied(UNPL(pm), UNPL(slot))) \- In
Foreach.h:55:
#define MapForeachKey(m, key_var) \
for (TYPE_OF(m) UNPL(pm) = (m); UNPL(pm); UNPL(pm) = NULL) \
if ((ValidateMap(UNPL(pm)), 1) && UNPL(pm)->length > 0) \
for (size UNPL(slot) = 0; UNPL(slot) < UNPL(pm)->capacity; UNPL(slot)++) \
if (MISRA_PRIV_MapSlotOccupied(UNPL(pm), UNPL(slot)) && \- In
Foreach.h:78:
#define MapForeachValue(m, value_var) \
for (TYPE_OF(m) UNPL(pm) = (m); UNPL(pm); UNPL(pm) = NULL) \
if ((ValidateMap(UNPL(pm)), 1) && UNPL(pm)->length > 0) \
for (size UNPL(slot) = 0; UNPL(slot) < UNPL(pm)->capacity; UNPL(slot)++) \
if (MISRA_PRIV_MapSlotOccupied(UNPL(pm), UNPL(slot))) \- In
Foreach.h:93:
#define MapForeachValuePtr(m, value_ptr) \
for (TYPE_OF(m) UNPL(pm) = (m); UNPL(pm); UNPL(pm) = NULL) \
if ((ValidateMap(UNPL(pm)), 1) && UNPL(pm)->length > 0) \
for (size UNPL(slot) = 0; UNPL(slot) < UNPL(pm)->capacity; UNPL(slot)++) \
if (MISRA_PRIV_MapSlotOccupied(UNPL(pm), UNPL(slot))) \- In
Foreach.h:108:
#define MapForeachValueForKey(m, lookup_key, value_var) \
for (TYPE_OF(m) UNPL(pm) = (m); UNPL(pm); UNPL(pm) = NULL) \
if ((ValidateMap(UNPL(pm)), 1) && UNPL(pm)->length > 0) \
for (bool UNPL(_key_once) = true; UNPL(_key_once); UNPL(_key_once) = false) \
for (MAP_KEY_TYPE(UNPL(pm)) UNPL(find_key) = (lookup_key); UNPL(_key_once); UNPL(_key_once) = false) \- In
Foreach.h:128:
#define MapForeachValuePtrForKey(m, lookup_key, value_ptr) \
for (TYPE_OF(m) UNPL(pm) = (m); UNPL(pm); UNPL(pm) = NULL) \
if ((ValidateMap(UNPL(pm)), 1) && UNPL(pm)->length > 0) \
for (bool UNPL(_key_once) = true; UNPL(_key_once); UNPL(_key_once) = false) \
for (MAP_KEY_TYPE(UNPL(pm)) UNPL(find_key) = (lookup_key); UNPL(_key_once); UNPL(_key_once) = false) \- In
Ops.h:27:
#define MapSwap(lhs, rhs) \
do { \
ValidateMap(lhs); \
ValidateMap(rhs); \
TYPE_OF(*(lhs)) UNPL(tmp) = *(lhs); \- In
Ops.h:28:
do { \
ValidateMap(lhs); \
ValidateMap(rhs); \
TYPE_OF(*(lhs)) UNPL(tmp) = *(lhs); \
*(lhs) = *(rhs); \
- In
Insert.h:28:
#define MapInsertL(m, in_key, in_value) \
do { \
ValidateMap(m); \
MAP_KEY_TYPE(m) *__hm_key_ptr_##__LINE__ = &(in_key); \
MAP_VALUE_TYPE(m) *__hm_value_ptr_##__LINE__ = &(in_value); \- In
Insert.h:64:
#define MapInsertR(m, in_key, in_value) \
do { \
ValidateMap(m); \
MAP_KEY_TYPE(m) __hm_key_tmp_##__LINE__ = (in_key); \
MAP_VALUE_TYPE(m) __hm_value_tmp_##__LINE__ = (in_value); \- In
Insert.h:99:
#define MapSetFirstL(m, in_key, in_value) \
do { \
ValidateMap(m); \
MAP_VALUE_TYPE(m) *__hm_value_ptr_##__LINE__ = &(in_value); \
MAP_KEY_TYPE(m) __hm_key_tmp_##__LINE__ = (in_key); \- In
Insert.h:130:
#define MapSetFirstR(m, in_key, in_value) \
do { \
ValidateMap(m); \
MAP_KEY_TYPE(m) __hm_key_tmp_##__LINE__ = (in_key); \
MAP_VALUE_TYPE(m) __hm_value_tmp_##__LINE__ = (in_value); \- In
Insert.h:159:
#define MapSetOnlyL(m, in_key, in_value) \
do { \
ValidateMap(m); \
MAP_KEY_TYPE(m) *__hm_key_ptr_##__LINE__ = &(in_key); \
MAP_VALUE_TYPE(m) *__hm_value_ptr_##__LINE__ = &(in_value); \- In
Insert.h:204:
#define MapSetOnlyR(m, in_key, in_value) \
do { \
ValidateMap(m); \
MAP_KEY_TYPE(m) __hm_key_tmp_##__LINE__ = (in_key); \
MAP_VALUE_TYPE(m) __hm_value_tmp_##__LINE__ = (in_value); \
Last updated on