{"version":3,"sources":["iterable/sequenceequal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE/D,MAAM,UAAU,aAAa,CAC3B,MAAmB,EACnB,KAAkB,EAClB,WAA6C,eAAe;IAE5D,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IACtC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;IACrC,IAAI,KAAwB,CAAC;IAC7B,IAAI,KAAwB,CAAC;IAC7B,OAAO,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;QACjC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE;YACvE,OAAO,KAAK,CAAC;SACd;KACF;IAED,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC;AAC3B,CAAC","file":"sequenceequal.js","sourcesContent":["import { comparer as defaultComparer } from '../util/comparer';\n\nexport function sequenceEqual<T>(\n  source: Iterable<T>,\n  other: Iterable<T>,\n  comparer: (first: T, second: T) => boolean = defaultComparer\n): boolean {\n  const it1 = source[Symbol.iterator]();\n  const it2 = other[Symbol.iterator]();\n  let next1: IteratorResult<T>;\n  let next2: IteratorResult<T>;\n  while (!(next1 = it1.next()).done) {\n    if (!(!(next2 = it2.next()).done && comparer(next1.value, next2.value))) {\n      return false;\n    }\n  }\n\n  return !!it2.next().done;\n}\n"]}