func (d *Dir) Merge(other *Dir) (next *Dir, err error) {
	next = &Dir{
		Dirs:  make(map[string]*Dir),
		Files: make(map[string]*File),
	}
	if err = next.merge(d); err != nil {
		return
	}
	err = next.merge(other)
	return
}
// Merge combines two directories as if they shared the same root
Merge combines two directories as if they shared the same root
// Merge combines two directories as if they shared the same root
func (d *Dir) Merge(other *Dir) (next *Dir, err error) {
	next = &Dir{
		Dirs:  make(map[string]*Dir),
		Files: make(map[string]*File),
	}
	if err = next.merge(d); err != nil {
		return
	}
	err = next.merge(other)
	return
}
func ( d * Dir ) Merge ( other * Dir ) ( next * Dir , err error ) { next = & Dir { Dirs : make ( map [ string ] * Dir ) , Files : make ( map [ string ] * File ) , } if err = next . merge ( d ) ; err != nil { return } err = next . merge ( other ) return }
Merge combines two directories as if they shared the same root
Merge combines two directories as if they shared the same root