third_party/polymer3/bower_components/polymer/lib/mixins/property-effects.js
function computeLinkedPaths(inst, path, value) {
  let links = inst.__dataLinkedPaths;
  if (links) {
    let link;
    for (let a in links) {
      let b = links[a];
      if (isDescendant(a, path)) {
        link = translate(a, b, path);
        inst._setPendingPropertyOrPath(link, value, true, true);
      } else if (isDescendant(b, path)) {
        link = translate(b, a, path);
        inst._setPendingPropertyOrPath(link, value, true, true);
      }
    }
  }
}
function computeLinkedPaths(inst, path, value) {
  let links = inst.__dataLinkedPaths;
  if (links) {
    let link;
    for (let a in links) {
      let b = links[a];
      if (isDescendant(a, path)) {
        link = translate(a, b, path);
        inst._setPendingPropertyOrPath(link, value, true, true);
      } else if (isDescendant(b, path)) {
        link = translate(b, a, path);
        inst._setPendingPropertyOrPath(link, value, true, true);
      }
    }
  }
}
function computeLinkedPaths ( inst , path , value ) { let links = inst . __dataLinkedPaths ; if ( links ) { let link ; for ( let a in links ) { let b = links [ a ] ; if ( isDescendant ( a , path ) ) { link = translate ( a , b , path ) ; inst . _setPendingPropertyOrPath ( link , value , true , true ) ; } else if ( isDescendant ( b , path ) ) { link = translate ( b , a , path ) ; inst . _setPendingPropertyOrPath ( link , value , true , true ) ; } } } }
Computes path changes based on path links set up using the `linkPaths`
API.

@param {!PropertyEffectsType} inst The instance whose props are changing
@param {string | !Array<(string|number)>} path Path that has changed
@param {*} value Value of changed path
@return {void}
@private
Computes path changes based on path links set up using the linkPaths API .