Home Reference Source

src/replace.js

import map from './map';

/**
 * 集合の要素をマップの値で置き換えます。
 *
 * @param {Map} smap - 要素の置き換え規則のマップ
 * @param {*[] | iterator | null} coll - 集合
 *
 * @return {iterator} 置き換えられた集合のイテレーター
 *
 * @example
 * replace(new Map([[0, 'zero'], [1, 'one'], [2, 'two']]), range(3));  // ['zero', 'one', 'two']のイテレーター
 */
export default function replace(smap, coll) {
  return map(x => smap.get(x), coll);
}