Add torrent.File documentation.
This commit is contained in:
parent
d0429086be
commit
bac1a906fc
|
@ -11,6 +11,8 @@ import (
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// SingleFile represents the specific data of the single file torrent file. That
|
||||||
|
// includes length of the file and its recommended name.
|
||||||
type SingleFile struct {
|
type SingleFile struct {
|
||||||
Name string
|
Name string
|
||||||
Length int64
|
Length int64
|
||||||
|
@ -18,11 +20,15 @@ type SingleFile struct {
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// MultiFile represents the specific data of the multiple files torrent
|
||||||
|
// file. That includes Name of the directory which will contain all the files
|
||||||
|
// and the files information.
|
||||||
type MultiFile struct {
|
type MultiFile struct {
|
||||||
Name string
|
Name string
|
||||||
Files []FileInfo
|
Files []FileInfo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Information of a single file in multiple files torrent file.
|
||||||
type FileInfo struct {
|
type FileInfo struct {
|
||||||
Length int64
|
Length int64
|
||||||
Path []string
|
Path []string
|
||||||
|
@ -30,8 +36,11 @@ type FileInfo struct {
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// File is the type you should use when reading torrent files. See Load and
|
||||||
|
// LoadFromFile functions. All the fields are intended to be read-only. The
|
||||||
|
// "Info" field has SingleFile or MultiFile type, use the type switch or type
|
||||||
|
// assertion to determine the exact type.
|
||||||
type File struct {
|
type File struct {
|
||||||
// the type is SingleFile or MultiFile
|
|
||||||
Info interface{}
|
Info interface{}
|
||||||
InfoHash []byte
|
InfoHash []byte
|
||||||
PieceLength int64
|
PieceLength int64
|
||||||
|
@ -46,6 +55,7 @@ type File struct {
|
||||||
URLList []string
|
URLList []string
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Load a File from an io.Reader. Returns a non-nil error in case of failure.
|
||||||
func Load(r io.Reader) (*File, error) {
|
func Load(r io.Reader) (*File, error) {
|
||||||
var file File
|
var file File
|
||||||
var data torrent_data
|
var data torrent_data
|
||||||
|
@ -109,6 +119,7 @@ func Load(r io.Reader) (*File, error) {
|
||||||
return &file, nil
|
return &file, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Convenience function for loading a torrent.File from a file.
|
||||||
func LoadFromFile(filename string) (*File, error) {
|
func LoadFromFile(filename string) (*File, error) {
|
||||||
f, err := os.Open(filename)
|
f, err := os.Open(filename)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
Loading…
Reference in New Issue