本文整理匯總了Golang中github.com/richardlehane/siegfried/pkg/core/siegreader.Buffer.SizeNow方法的典型用法代碼示例。如果您正苦於以下問題:Golang Buffer.SizeNow方法的具體用法?Golang Buffer.SizeNow怎麽用?Golang Buffer.SizeNow使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/richardlehane/siegfried/pkg/core/siegreader.Buffer
的用法示例。
在下文中一共展示了Buffer.SizeNow方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: newGzip
func newGzip(b *siegreader.Buffer, path string) (decompressor, error) {
_ = b.SizeNow() // in case of a stream, force full read
buf, err := b.EofSlice(0, 4) // gzip stores uncompressed size in last 4 bytes of the stream
if err != nil {
return nil, err
}
sz := int64(uint32(buf[0]) | uint32(buf[1])<<8 | uint32(buf[2])<<16 | uint32(buf[3])<<24)
g, err := gzip.NewReader(siegreader.ReaderFrom(b))
return &gzipD{sz: sz, p: path, rdr: g}, err
}
示例2: zipRdr
func zipRdr(b *siegreader.Buffer) (Reader, error) {
r, err := zip.NewReader(siegreader.ReaderFrom(b), b.SizeNow())
return &zipReader{idx: -1, rdr: r}, err
}