diff options
Diffstat (limited to 'pkg/btrfs/btrfsitem/item_metadata.go')
-rw-r--r-- | pkg/btrfs/btrfsitem/item_metadata.go | 44 |
1 files changed, 0 insertions, 44 deletions
diff --git a/pkg/btrfs/btrfsitem/item_metadata.go b/pkg/btrfs/btrfsitem/item_metadata.go deleted file mode 100644 index 7bfe677..0000000 --- a/pkg/btrfs/btrfsitem/item_metadata.go +++ /dev/null @@ -1,44 +0,0 @@ -package btrfsitem - -import ( - "lukeshu.com/btrfs-tools/pkg/binstruct" -) - -// Metadata is like Extent, but doesn't have .Info. -type Metadata struct { // METADATA_ITEM=169 - Head ExtentHeader - Refs []ExtentInlineRef -} - -func (o *Metadata) UnmarshalBinary(dat []byte) (int, error) { - n, err := binstruct.Unmarshal(dat, &o.Head) - if err != nil { - return n, err - } - o.Refs = nil - for n < len(dat) { - var ref ExtentInlineRef - _n, err := binstruct.Unmarshal(dat[n:], &ref) - n += _n - o.Refs = append(o.Refs, ref) - if err != nil { - return n, err - } - } - return n, nil -} - -func (o Metadata) MarshalBinary() ([]byte, error) { - dat, err := binstruct.Marshal(o.Head) - if err != nil { - return dat, err - } - for _, ref := range o.Refs { - bs, err := binstruct.Marshal(ref) - dat = append(dat, bs...) - if err != nil { - return dat, err - } - } - return dat, nil -} |