Links

isWeakMap

isWeakMap :: a → Boolean
Evaluates whether the given value is of type WeakMap
import isWeakMap from 'deep-waters/isWeakMap';
const wMap = new WeakMap();
wMap.set({ prop: 1 }, 'value');
isWeakMap(wMap); // → true
isWeakMap(new Map()); // → false
isWeakMap, 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})+$/),
);
isWeakMap 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.