code: func Filtered(paths []string, filter Filter) (*Result, error) {
  	return all(paths, filter, func(curr *Result, path string, depth int) error {
  
  		bs, err := ioutil.ReadFile(path)
  		if err != nil {
  			return err
  		}
  
  		result, err := loadKnownTypes(path, bs)
  		if err != nil {
  			if !isUnrecognizedFile(err) {
  				return err
  			}
  			if depth > 0 {
  				return nil
  			}
  			result, err = loadFileForAnyType(path, bs)
  			if err != nil {
  				return err
  			}
  		}
  
  		return curr.merge(path, result)
  	})
  }
docs: // Filtered returns a Result object loaded (recursively) from the specified
  // paths while applying the given filters. If any filter returns true, the
  // file/directory is excluded.