func()

in internal/satellite/tools/catalog.go [49:70]


func (c *Catalog) Find(namePaths ...string) *Catalog {
	if c.Catalog == nil {
		return nil
	}

	children := c.Catalog
	finded := c
	for _, name := range namePaths {
		finded = nil
		for _, cc := range children {
			if cc.Name == name {
				finded = cc
				break
			}
		}
		if finded == nil {
			return nil
		}
		children = finded.Catalog
	}
	return finded
}