UNPKG

evt

Version:

Type safe replacement for node's EventEmitter

21 lines (15 loc) 451 B
import { toReduceArguments, ReduceArguments } from "./reduceify"; export function arrCount<ArrOf>( arr: readonly ArrOf[], matcher: (e: ArrOf) => boolean ): number { return arr .map(e => matcher(e) ? 1 : 0) .reduce<number>((prev, curr) => prev + curr, 0) ; } export function count<ArrOf>( matcher: (e: ArrOf) => boolean ): ReduceArguments<ArrOf, number> { return toReduceArguments(arrCount, matcher); }