subscribe_ method

dynamic subscribe_(
  1. dynamic path,
  2. dynamic parsedPath
)

Implementation

subscribe_(path, parsedPath) {
  // returns an array of bindings for the given path that is changed
  // according to the contained objects in the group

  var indicesByPath = _bindingsIndicesByPath;
  var index = indicesByPath[path];
  var bindings = _bindings;

  if (index != null) return bindings[index];

  var paths = _paths,
      parsedPaths = _parsedPaths,
      objects = _objects,
      nObjects = objects.length,
      nCachedObjects = nCachedObjects_;

  var bindingsForPath = List<PropertyBinding?>.filled(nObjects, null);

  index = bindings.length;

  indicesByPath[path] = index;

  paths.add(path);
  parsedPaths.add(parsedPath);
  bindings.add(bindingsForPath);

  for (var i = nCachedObjects, n = objects.length; i != n; ++i) {
    var object = objects[i];
    bindingsForPath[i] = PropertyBinding(object, path, parsedPath);
  }

  return bindingsForPath;
}