func()

in lint/lint_license.go [33:69]


func (l *LicenseLinter) lint() ([]string, error) {
	var errFiles []string
	// glob files
	files, err := glob(l.Dir, l.g)
	if err != nil {
		return nil, err
	}

	// check license
	var wg sync.WaitGroup
	ch := make(chan string)

	for _, f := range files {
		wg.Add(1)
		go func(f string) {
			defer wg.Done()
			b, err := os.ReadFile(f)
			if err != nil {
				panic(err)
			}
			if !strings.Contains(string(b), "http://www.apache.org/licenses/LICENSE-2.0") {
				ch <- f
			}
		}(f)
	}

	go func() {
		wg.Wait()
		close(ch)
	}()

	for s := range ch {
		errFiles = append(errFiles, s)
	}

	return errFiles, nil
}