BiMap<K, V>.fromIterables constructor
Creates a bi-map from two equal length iterables.
Implementation
factory BiMap.fromIterables(Iterable<K> keys, Iterable<V> values) {
final result = BiMap<K, V>();
final keyIterator = keys.iterator;
final valueIterator = values.iterator;
var moreKeys = keyIterator.moveNext();
var moreValues = valueIterator.moveNext();
while (moreKeys && moreValues) {
result[keyIterator.current] = valueIterator.current;
moreKeys = keyIterator.moveNext();
moreValues = valueIterator.moveNext();
}
if (moreKeys || moreValues) {
throw ArgumentError('Iterables do not have same length');
}
return result;
}