func (src List) Match(f Filter) (List, error) {
	var result List
	for _, tools := range src {
		if f.match(tools) {
			result = append(result, tools)
		}
	}
	if len(result) == 0 {
		return nil, ErrNoMatches
	}
	return result, nil
}
// Match returns a List, derived from src, containing only those tools that
// match the supplied Filter. If no tools match, it returns ErrNoMatches.
Match returns a List, derived from src, containing only those tools that
match the supplied Filter. If no tools match, it returns ErrNoMatches.
// Match returns a List derived from src containing only those tools that // match the supplied Filter . If no tools match it returns ErrNoMatches .
func (src List) Match(f Filter) (List, error) {
	var result List
	for _, tools := range src {
		if f.match(tools) {
			result = append(result, tools)
		}
	}
	if len(result) == 0 {
		return nil, ErrNoMatches
	}
	return result, nil
}
func ( src List ) Match ( f Filter ) ( List , error ) { var result List for _ , tools := range src { if f . match ( tools ) { result = append ( result , tools ) } } if len ( result ) == 0 { return nil , ErrNoMatches } return result , nil }
Match returns a List, derived from src, containing only those tools that
match the supplied Filter.
Match returns a List derived from src containing only those tools that match the supplied Filter .