func()

in lib/lib.go [241:264]


func (obj *Scanner) Init() error {
	obj.wg = &sync.WaitGroup{}
	obj.mu = &sync.Mutex{}

	obj.results = make(interfaces.ResultSet)

	obj.skipdirs = make(map[interfaces.Backend]map[string]struct{})
	for _, backend := range obj.Backends {
		_, ok1 := backend.(interfaces.DataBackend)
		_, ok2 := backend.(interfaces.PathBackend)
		_, ok3 := backend.(interfaces.RootBackend)
		_, ok4 := backend.(interfaces.SeekBackend)
		if !ok1 && !ok2 && !ok3 && !ok4 {
			return fmt.Errorf("invalid backend: %s", backend.String())
		}
		if !ok1 && !ok2 { // TODO: remove this when we implement them!
			return fmt.Errorf("the RootBackend and SeekBackend is not yet supported")
		}

		obj.skipdirs[backend] = make(map[string]struct{})
	}

	return nil
}