resolvePath method

SearchResult resolvePath(
  1. Path? path
)

Implementation

SearchResult resolvePath(Path? path) {
  ArgumentError.checkNotNull(path);
  if (path!.isRelative == true) {
    var nearestContainer = asOrNull<Container>(this);
    if (nearestContainer == null) {
      assert(parent != null,
          "Can't resolve relative path because we don't have a parent");
      nearestContainer = asOrNull<Container>(parent);
      assert(nearestContainer != null, 'Expected parent to be a container');
      assert(path.getComponent(0).isParent);
      path = path.tail;
    }

    ArgumentError.checkNotNull(nearestContainer, 'nearestContainer');

    return nearestContainer!.contentAtPath(path);
  } else {
    return rootContentContainer!.contentAtPath(path);
  }
}