UNPKG

@monstermann/fn

Version:

A utility library for TypeScript.

26 lines (24 loc) 789 B
import { dfdlT } from "@monstermann/dfdl"; //#region src/set/isSubsetOf.ts /** * `isSubsetOf(target, source)` * * Checks if the `target` set is a subset of the `source` set (i.e., all values in target exist in source). Returns `true` if target is a subset of source, `false` otherwise. * * ```ts * isSubsetOf(new Set([1, 2]), new Set([1, 2, 3])); // true * isSubsetOf(new Set([1, 4]), new Set([1, 2, 3])); // false * ``` * * ```ts * pipe(new Set([1, 2]), isSubsetOf(new Set([1, 2, 3]))); // true * pipe(new Set([1, 4]), isSubsetOf(new Set([1, 2, 3]))); // false * ``` */ const isSubsetOf = dfdlT((target, source) => { if (target.size > source.size) return false; for (const value of target) if (!source.has(value)) return false; return true; }, 2); //#endregion export { isSubsetOf };