MapContainsPair
Description
Check if the map stores a specific key/value pair.
Parameters
| Name | Direction | Description |
|---|---|---|
m |
in | Map. |
lookup_key |
in | Key to search for. |
lookup_value |
in | Value to search for. Uses value_compare for equality. |
Success
Returns true when at least one entry mapping lookup_key to lookup_value exists. The map is not modified.
Failure
Returns false when no matching pair exists. The map is not modified. A NULL value_compare is a caller bug and aborts via LOG_FATAL.
Usage example (Cross-references)
Usage examples (Cross-references)
- In
Map.c:673:
if (!map->value_compare) {
LOG_FATAL("MapContainsPair requires a value comparator");
}- In
Map.Insert.c:58:
result = result && (MapValueCountForKey(&map, 1) == 3);
result = result && MapGetFirstPtr(&map, 1) && (*MapGetFirstPtr(&map, 1) == 100);
result = result && MapContainsPair(&map, 1, 11);
result = result && MapContainsPair(&map, 1, 12);
result = result && !MapContainsPair(&map, 1, 10);- In
Map.Insert.c:59:
result = result && MapGetFirstPtr(&map, 1) && (*MapGetFirstPtr(&map, 1) == 100);
result = result && MapContainsPair(&map, 1, 11);
result = result && MapContainsPair(&map, 1, 12);
result = result && !MapContainsPair(&map, 1, 10);- In
Map.Insert.c:60:
result = result && MapContainsPair(&map, 1, 11);
result = result && MapContainsPair(&map, 1, 12);
result = result && !MapContainsPair(&map, 1, 10);
MapDeinit(&map);- In
Map.Deadend.c:32:
static bool test_map_contains_pair_without_value_compare_fails(void) {
WriteFmt("Testing MapContainsPair without value comparator\n");
typedef Map(int, int) IntIntMap;- In
Map.Deadend.c:38:
IntIntMap map = MapInit(i32_hash, i32_compare, &alloc);
MapContainsPair(&map, 1, 10);
MapDeinit(&map);- In
Map.Remove.c:51:
bool result = MapRemovePair(&map, 5, 51);
result = result && MapContainsPair(&map, 5, 50);
result = result && !MapContainsPair(&map, 5, 51);
result = result && MapContainsPair(&map, 5, 52);- In
Map.Remove.c:52:
bool result = MapRemovePair(&map, 5, 51);
result = result && MapContainsPair(&map, 5, 50);
result = result && !MapContainsPair(&map, 5, 51);
result = result && MapContainsPair(&map, 5, 52);
result = result && (MapValueCountForKey(&map, 5) == 2);- In
Map.Remove.c:53:
result = result && MapContainsPair(&map, 5, 50);
result = result && !MapContainsPair(&map, 5, 51);
result = result && MapContainsPair(&map, 5, 52);
result = result && (MapValueCountForKey(&map, 5) == 2);- In
Map.Access.c:33:
result = result && MapContainsKey(&map, 9);
result = result && !MapContainsKey(&map, 8);
result = result && MapContainsPair(&map, 7, 70);
result = result && MapContainsPair(&map, 7, 71);
result = result && !MapContainsPair(&map, 7, 72);- In
Map.Access.c:34:
result = result && !MapContainsKey(&map, 8);
result = result && MapContainsPair(&map, 7, 70);
result = result && MapContainsPair(&map, 7, 71);
result = result && !MapContainsPair(&map, 7, 72);
result = result && (MapValueCountForKey(&map, 7) == 2);- In
Map.Access.c:35:
result = result && MapContainsPair(&map, 7, 70);
result = result && MapContainsPair(&map, 7, 71);
result = result && !MapContainsPair(&map, 7, 72);
result = result && (MapValueCountForKey(&map, 7) == 2);
result = result && (MapValueCountForKey(&map, 9) == 1);- In
Map.Ops.c:129:
result = result && (MapTombstones(&first) == 0);
result = result && MapContainsPair(&first, 1, 11);
result = result && MapContainsPair(&first, 2, 20);
result = result && (MapPairCount(&first) == 2);- In
Map.Ops.c:130:
result = result && (MapTombstones(&first) == 0);
result = result && MapContainsPair(&first, 1, 11);
result = result && MapContainsPair(&first, 2, 20);
result = result && (MapPairCount(&first) == 2);
result = result && (MapUniqueKeyCount(&first) == 2);- In
Map.Ops.c:136:
MapSwap(&first, &second);
result = result && MapContainsPair(&first, 9, 90);
result = result && MapContainsPair(&first, 10, 100);
result = result && (MapPairCount(&first) == 2);- In
Map.Ops.c:137:
result = result && MapContainsPair(&first, 9, 90);
result = result && MapContainsPair(&first, 10, 100);
result = result && (MapPairCount(&first) == 2);
result = result && MapContainsPair(&second, 1, 11);- In
Map.Ops.c:139:
result = result && MapContainsPair(&first, 10, 100);
result = result && (MapPairCount(&first) == 2);
result = result && MapContainsPair(&second, 1, 11);
result = result && MapContainsPair(&second, 2, 20);
result = result && (MapPairCount(&second) == 2);- In
Map.Ops.c:140:
result = result && (MapPairCount(&first) == 2);
result = result && MapContainsPair(&second, 1, 11);
result = result && MapContainsPair(&second, 2, 20);
result = result && (MapPairCount(&second) == 2);
Last updated on