From 437bf733021a6aa3b90042a12a35b887b8ed45a2 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 1 Jun 2022 09:56:56 -0600 Subject: lib: eagerly unmarshal items --- pkg/btrfs/btrfsitem/items_gen.go | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'pkg/btrfs/btrfsitem/items_gen.go') diff --git a/pkg/btrfs/btrfsitem/items_gen.go b/pkg/btrfs/btrfsitem/items_gen.go index 5234c96..40a0b53 100644 --- a/pkg/btrfs/btrfsitem/items_gen.go +++ b/pkg/btrfs/btrfsitem/items_gen.go @@ -1,6 +1,10 @@ package btrfsitem -import "lukeshu.com/btrfs-tools/pkg/btrfs/internal" +import ( + "reflect" + + "lukeshu.com/btrfs-tools/pkg/btrfs/internal" +) const ( CHUNK_ITEM_KEY = internal.CHUNK_ITEM_KEY @@ -17,6 +21,21 @@ const ( UUID_RECEIVED_SUBVOL_KEY = internal.UUID_RECEIVED_SUBVOL_KEY ) +var keytype2gotype = map[Type]reflect.Type{ + CHUNK_ITEM_KEY: reflect.TypeOf(Chunk{}), + DEV_ITEM_KEY: reflect.TypeOf(Dev{}), + DEV_EXTENT_KEY: reflect.TypeOf(DevExtent{}), + UNTYPED_KEY: reflect.TypeOf(Empty{}), + QGROUP_RELATION_KEY: reflect.TypeOf(Empty{}), + INODE_ITEM_KEY: reflect.TypeOf(Inode{}), + INODE_REF_KEY: reflect.TypeOf(InodeRef{}), + ORPHAN_ITEM_KEY: reflect.TypeOf(Orphan{}), + PERSISTENT_ITEM_KEY: reflect.TypeOf(DevStats{}), + ROOT_ITEM_KEY: reflect.TypeOf(Root{}), + UUID_SUBVOL_KEY: reflect.TypeOf(UUIDMap{}), + UUID_RECEIVED_SUBVOL_KEY: reflect.TypeOf(UUIDMap{}), +} + func (Chunk) isItem() {} func (Dev) isItem() {} func (DevExtent) isItem() {} -- cgit v1.2.3-2-g168b