code: func (si *SegmentCommitInfo) Files() []string {
  	// Start from the wrapped info's files:
  	files := make(map[string]bool)
  	for name, _ := range si.Info.Files() {
  		files[name] = true
  	}
  
  	// Must separately add any live docs files
  	for _, name := range si.Info.Codec().(Codec).LiveDocsFormat().Files(si) {
  		files[name] = true
  	}
  
  	// Must separately add any per-gen updates files. This can go away
  	// when we get rid of genUpdatesFiles (6.0)
  	for _, names := range si.genUpdatesFiles {
  		for name, _ := range names {
  			files[name] = true
  		}
  	}
  
  	// must separately add any field updates files
  	for _, names := range si.dvUpdatesFiles {
  		for name, _ := range names {
  			files[name] = true
  		}
  	}
  
  	// must separately add fieldInfos files
  	for name, _ := range si.fieldInfosFiles {
  		files[name] = true
  	}
  
  	ans := make([]string, 0, len(files))
  	for s, _ := range files {
  		ans = append(ans, s)
  	}
  	return ans
  }
docs: // Returns all files in use by this segment.