code: func (st smallBlobStreamer) StreamBlobs(ctx context.Context, dest chan<- blobserver.BlobAndToken, contToken string) (err error) {
  	small := st.sto.small
  	if bs, ok := small.(blobserver.BlobStreamer); ok {
  		return bs.StreamBlobs(ctx, dest, contToken)
  	}
  	defer close(dest)
  	donec := ctx.Done()
  	return blobserver.EnumerateAllFrom(ctx, small, contToken, func(sb blob.SizedRef) error {
  		select {
  		case dest <- blobserver.BlobAndToken{
  			Blob: blob.NewBlob(sb.Ref, sb.Size, func(ctx context.Context) ([]byte, error) {
  				return slurpSizedRef(ctx, small, sb)
  			}),
  			Token: sb.Ref.StringMinusOne(), // streamer is >=, enumerate is >
  		}:
  			return nil
  		case <-donec:
  			return ctx.Err()
  		}
  	})
  }
docs: // stream the loose blobs