lib/bind_keys.js
function parentSetter (x) {
    var previousValue = memoizedObject[key]
    var returnValue

    // Optimistically set the memoized value, so it persists even if an error
    // occurs after this point.
    memoizedObject[key] = x

    // Check for no-op.
    if (x === previousValue) return x

    // Need to qualify this check for non-empty value.
    if (definition && x !== null && x !== void 0)
      bindKeys(scope, x, definition, parentNode, keyPath)

    else if (change) {
      returnValue = change(parentNode, x,
        previousValue === void 0 ? null : previousValue, keyPath)
      if (returnValue !== void 0)
        changeValue(parentNode, returnValue, branch[replaceAttributeKey])
    }

    return x
  }
function parentSetter (x) {
    var previousValue = memoizedObject[key]
    var returnValue

    // Optimistically set the memoized value, so it persists even if an error
    // occurs after this point.
    memoizedObject[key] = x

    // Check for no-op.
    if (x === previousValue) return x

    // Need to qualify this check for non-empty value.
    if (definition && x !== null && x !== void 0)
      bindKeys(scope, x, definition, parentNode, keyPath)

    else if (change) {
      returnValue = change(parentNode, x,
        previousValue === void 0 ? null : previousValue, keyPath)
      if (returnValue !== void 0)
        changeValue(parentNode, returnValue, branch[replaceAttributeKey])
    }

    return x
  }
function parentSetter ( x ) { var previousValue = memoizedObject [ key ] var returnValue // Optimistically set the memoized value, so it persists even if an error // occurs after this point. memoizedObject [ key ] = x // Check for no-op. if ( x === previousValue ) return x // Need to qualify this check for non-empty value. if ( definition && x !== null && x !== void 0 ) bindKeys ( scope , x , definition , parentNode , keyPath ) else if ( change ) { returnValue = change ( parentNode , x , previousValue === void 0 ? null : previousValue , keyPath ) if ( returnValue !== void 0 ) changeValue ( parentNode , returnValue , branch [ replaceAttributeKey ] ) } return x }
Special case for binding same node as parent.
Special case for binding same node as parent .