Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type PackageChecksum ¶
type PackageChecksum [32 + 4]byte // sha256 + int
func CalculatePackageChecksum ¶
func CalculatePackageChecksum(hash HASH, size int) PackageChecksum
type PackageGraph ¶
type PackageGraph map[PackageChecksum]*PackageNode
func NewPackageGraph ¶
func NewPackageGraph() *PackageGraph
func (*PackageGraph) Insert ¶
func (g *PackageGraph) Insert(name string, path string, size int, sha1 SHA1, hash HASH, subPackages ...*PackageNode) *PackageNode
func (*PackageGraph) InsertHexString ¶
func (g *PackageGraph) InsertHexString(name string, path string, size int, sha1HexString string, hashHexString string, subPackages ...*PackageNode) (*PackageNode, error)
type PackageNode ¶
type PackageNode struct {
Name string
Path string
Size int
Sha1 SHA1
Hash HASH
SubPackages PackageNodeList
}
func (PackageNode) Checksum ¶
func (node PackageNode) Checksum() PackageChecksum
func (*PackageNode) IsInCycle ¶
func (node *PackageNode) IsInCycle() bool
type PackageNodeList ¶
type PackageNodeList []*PackageNode // implement sort.Interface
func (*PackageNodeList) Add ¶
func (list *PackageNodeList) Add(new *PackageNode)
func (PackageNodeList) Len ¶
func (list PackageNodeList) Len() int
func (PackageNodeList) Less ¶
func (list PackageNodeList) Less(i, j int) bool
func (PackageNodeList) Search ¶
func (list PackageNodeList) Search(checksum PackageChecksum) *PackageNode
func (PackageNodeList) Swap ¶
func (list PackageNodeList) Swap(i, j int)
Click to show internal directories.
Click to hide internal directories.