github.com/polym/upx@v0.2.6/reader.go (about)

     1  package main
     2  
     3  import (
     4  	"os"
     5  )
     6  
     7  type ProgressReader struct {
     8  	fd    *os.File
     9  	coyed int
    10  }
    11  
    12  func (r *ProgressReader) Len() int {
    13  	fInfo, _ := r.fd.Stat()
    14  	return int(fInfo.Size())
    15  }
    16  
    17  func (r *ProgressReader) MD5() string {
    18  	return ""
    19  }
    20  
    21  func (r *ProgressReader) Read(b []byte) (n int, err error) {
    22  	n, err = r.fd.Read(b)
    23  	r.coyed += n
    24  	return
    25  }
    26  
    27  func (r *ProgressReader) Copyed() int {
    28  	return r.coyed
    29  }