code: func (b *Builder) Path(paths ...string) *Builder {
  	for _, p := range paths {
  		_, err := os.Stat(p)
  		if os.IsNotExist(err) {
  			b.errs = append(b.errs, fmt.Errorf("the path %q does not exist", p))
  			continue
  		}
  		if err != nil {
  			b.errs = append(b.errs, fmt.Errorf("the path %q cannot be accessed: %v", p, err))
  			continue
  		}
  
  		visitors, err := ExpandPathsToFileVisitors(b.mapper, p, false, FileExtensions, b.schema)
  		if err != nil {
  			b.errs = append(b.errs, fmt.Errorf("error reading %q: %v", p, err))
  		}
  		if len(visitors) > 1 {
  			b.dir = true
  		}
  
  		b.paths = append(b.paths, visitors...)
  	}
  	return b
  }
docs: // Path accepts a set of paths that may be files, directories (all can containing
  // one or more resources). Creates a FileVisitor for each file and then each
  // FileVisitor is streaming the content to a StreamVisitor. If ContinueOnError() is set
  // prior to this method being called, objects on the path that are unrecognized will be
  // ignored (but logged at V(2)).