code: func (l *linkIndex) link(parent, child *container.Container, alias string) {
  	l.mu.Lock()
  
  	if l.idx[parent] == nil {
  		l.idx[parent] = make(map[string]*container.Container)
  	}
  	l.idx[parent][alias] = child
  	if l.childIdx[child] == nil {
  		l.childIdx[child] = make(map[*container.Container]map[string]struct{})
  	}
  	if l.childIdx[child][parent] == nil {
  		l.childIdx[child][parent] = make(map[string]struct{})
  	}
  	l.childIdx[child][parent][alias] = struct{}{}
  
  	l.mu.Unlock()
  }
docs: // link adds indexes for the passed in parent/child/alias relationships