in lib/src/editor.dart [498:519]
void _assertNoChildAlias(Iterable<Object?> path, [YamlNode? node]) {
if (node == null) return _assertNoChildAlias(path, _traverse(path));
if (_aliases.contains(node)) throw AliasError(path, node);
if (node is YamlScalar) return;
if (node is YamlList) {
for (var i = 0; i < node.length; i++) {
final updatedPath = [...path, i];
_assertNoChildAlias(updatedPath, node.nodes[i]);
}
}
if (node is YamlMap) {
final keyList = node.keys.toList();
for (var i = 0; i < node.length; i++) {
final updatedPath = [...path, keyList[i]];
if (_aliases.contains(keyList[i])) throw AliasError(path, keyList[i]);
_assertNoChildAlias(updatedPath, node.nodes[keyList[i]]);
}
}
}