isWeakSet

isWeakSet :: a → Boolean

Evaluates whether the given value is of type WeakSet

import isWeakSet from 'deep-waters/isWeakSet';

const wSet = new WeakSet();

wSet.add({ prop: 1 });

isWeakSet(map); // → true
isWeakSet(new Set()); // → false

isWeakSet, like any other type validator, is mostly used in composed validators:

import isString from 'deep-waters/isString';
import matchesPattern from 'deep-waters/matchesPattern';

const isEmail = compose(
  isString,
  matchesPattern(/^\w+([.-]?\w+)*@\w+([.-]?\w+)*(\.\w{2,3})+$/),
);

isWeakSet is built on top of ofClass validator and rely on Object.prototype.toString to check on the received value type in order to avoid typeof weird behaviours and encouraging a runtime strict type validation.

Last updated