INNER CODE UNIT · Python
_no_duplicate_keys
llm-d/llm-d · scripts/guide.py:181
def _no_duplicate_keys(loader: yaml.SafeLoader, node: yaml.MappingNode, deep: bool = False):
seen: dict[object, yaml.Node] = {}
for key_node, _value_node in node.value:
key = loader.construct_object(key_node, deep=deep)
try:
duplicate = key in seen
except TypeError:
raise yaml.constructor.ConstructorError(
None,
None,
"unhashable mapping key; YAML mapping keys must be hashable",
key_node.start_mark,
)
if duplicate:
first_line = seen[key].start_mark.line + 1
dup_line = key_node.start_mark.line + 1
raise yaml.constructor.ConstructorError(
None,