dist/tulipan.cjs.js
// Internal recursive comparison function for `isEqual`.
Internal recursive comparison function for `isEqual`.
Internal recursive comparison function for ` isEqual ` .
function eq(a, b, aStack, bStack) {
    if (a === b) return a !== 0 || 1 / a === 1 / b;
    if (a == null || b == null) return false;
    if (a !== a) return b !== b;
    var type = typeof a;
    if (type !== 'function' && type !== 'object' && typeof b != 'object') return false;
    return deepEq(a, b, aStack, bStack);
  }
function eq ( a , b , aStack , bStack ) { if ( a === b ) return a !== 0 || 1 / a === 1 / b ; if ( a == null || b == null ) return false ; if ( a !== a ) return b !== b ; var type = typeof a ; if ( type !== 'function' && type !== 'object' && typeof b != 'object' ) return false ; return deepEq ( a , b , aStack , bStack ) ; }
Internal recursive comparison function for `isEqual`.
Internal recursive comparison function for ` isEqual ` .
// Identical objects are equal. `0 === -0`, but they aren't identical. // See the [Harmony `egal` proposal](https://wiki.ecmascript.org/doku.php?id=harmony:egal). // `null` or `undefined` only equal to itself (strict comparison). // `NaN`s are equivalent, but non-reflexive. // Exhaust primitive checks