From 81a60105f90f55e4a15478e4104ca3ee912b0faa Mon Sep 17 00:00:00 2001
From: Wolfgang Welz <welzwo@gmail.com>
Date: Sat, 4 Jan 2020 15:43:21 +0100
Subject: [PATCH] fix: use hive.go bitmask

---
 packages/bitutils/bitmask.go                  | 15 --------
 packages/bitutils/bitmask_test.go             | 34 -------------------
 packages/model/bundle/bundle.go               |  6 ++--
 .../transactionmetadata.go                    |  6 ++--
 4 files changed, 6 insertions(+), 55 deletions(-)
 delete mode 100644 packages/bitutils/bitmask.go
 delete mode 100644 packages/bitutils/bitmask_test.go

diff --git a/packages/bitutils/bitmask.go b/packages/bitutils/bitmask.go
deleted file mode 100644
index 64bc5067..00000000
--- a/packages/bitutils/bitmask.go
+++ /dev/null
@@ -1,15 +0,0 @@
-package bitutils
-
-type BitMask byte
-
-func (bitmask BitMask) SetFlag(pos uint) BitMask {
-	return bitmask | (1 << pos)
-}
-
-func (bitmask BitMask) ClearFlag(pos uint) BitMask {
-	return bitmask & ^(1 << pos)
-}
-
-func (bitmask BitMask) HasFlag(pos uint) bool {
-	return (bitmask&(1<<pos) > 0)
-}
diff --git a/packages/bitutils/bitmask_test.go b/packages/bitutils/bitmask_test.go
deleted file mode 100644
index 1d04a895..00000000
--- a/packages/bitutils/bitmask_test.go
+++ /dev/null
@@ -1,34 +0,0 @@
-package bitutils
-
-import (
-	"testing"
-)
-
-func TestBitmask(t *testing.T) {
-	var b BitMask
-
-	if b.HasFlag(0) {
-		t.Error("flag at pos 0 should not be set")
-	}
-	if b.HasFlag(1) {
-		t.Error("flag at pos 1 should not be set")
-	}
-
-	b = b.SetFlag(0)
-	if !b.HasFlag(0) {
-		t.Error("flag at pos 0 should be set")
-	}
-	b = b.SetFlag(1)
-	if !b.HasFlag(1) {
-		t.Error("flag at pos 1 should be set")
-	}
-
-	b = b.ClearFlag(0)
-	if b.HasFlag(0) {
-		t.Error("flag at pos 0 should not be set")
-	}
-	b = b.ClearFlag(1)
-	if b.HasFlag(1) {
-		t.Error("flag at pos 1 should not be set")
-	}
-}
diff --git a/packages/model/bundle/bundle.go b/packages/model/bundle/bundle.go
index e2e3aa8b..3c9c6208 100644
--- a/packages/model/bundle/bundle.go
+++ b/packages/model/bundle/bundle.go
@@ -6,9 +6,9 @@ import (
 	"sync"
 	"unsafe"
 
-	"github.com/iotaledger/goshimmer/packages/bitutils"
 	"github.com/iotaledger/goshimmer/packages/errors"
 	"github.com/iotaledger/goshimmer/packages/typeutils"
+	"github.com/iotaledger/hive.go/bitmask"
 	"github.com/iotaledger/iota.go/trinary"
 )
 
@@ -116,7 +116,7 @@ func (bundle *Bundle) Marshal() (result []byte) {
 	copy(result[MARSHALED_HASH_START:MARSHALED_HASH_END], typeutils.StringToBytes(bundle.hash))
 	copy(result[MARSHALED_BUNDLE_ESSENCE_HASH_START:MARSHALED_BUNDLE_ESSENCE_HASH_END], typeutils.StringToBytes(bundle.bundleEssenceHash))
 
-	var flags bitutils.BitMask
+	var flags bitmask.BitMask
 	if bundle.isValueBundle {
 		flags = flags.SetFlag(0)
 	}
@@ -161,7 +161,7 @@ func (bundle *Bundle) Unmarshal(data []byte) (err errors.IdentifiableError) {
 	bundle.hash = trinary.Trytes(typeutils.BytesToString(data[MARSHALED_HASH_START:MARSHALED_HASH_END]))
 	bundle.bundleEssenceHash = trinary.Trytes(typeutils.BytesToString(data[MARSHALED_BUNDLE_ESSENCE_HASH_START:MARSHALED_BUNDLE_ESSENCE_HASH_END]))
 
-	flags := bitutils.BitMask(data[MARSHALED_FLAGS_START])
+	flags := bitmask.BitMask(data[MARSHALED_FLAGS_START])
 	if flags.HasFlag(0) {
 		bundle.isValueBundle = true
 	}
diff --git a/packages/model/transactionmetadata/transactionmetadata.go b/packages/model/transactionmetadata/transactionmetadata.go
index 6fd4ab4e..b8618810 100644
--- a/packages/model/transactionmetadata/transactionmetadata.go
+++ b/packages/model/transactionmetadata/transactionmetadata.go
@@ -4,9 +4,9 @@ import (
 	"sync"
 	"time"
 
-	"github.com/iotaledger/goshimmer/packages/bitutils"
 	"github.com/iotaledger/goshimmer/packages/errors"
 	"github.com/iotaledger/goshimmer/packages/typeutils"
+	"github.com/iotaledger/hive.go/bitmask"
 	"github.com/iotaledger/iota.go/trinary"
 )
 
@@ -226,7 +226,7 @@ func (metadata *TransactionMetadata) Marshal() ([]byte, errors.IdentifiableError
 	}
 	copy(marshaledMetadata[MARSHALED_RECEIVED_TIME_START:MARSHALED_RECEIVED_TIME_END], marshaledReceivedTime)
 
-	var booleanFlags bitutils.BitMask
+	var booleanFlags bitmask.BitMask
 	if metadata.solid {
 		booleanFlags = booleanFlags.SetFlag(0)
 	}
@@ -259,7 +259,7 @@ func (metadata *TransactionMetadata) Unmarshal(data []byte) errors.IdentifiableE
 		return ErrUnmarshalFailed.Derive(err, "could not unmarshal the received time")
 	}
 
-	booleanFlags := bitutils.BitMask(data[MARSHALED_FLAGS_START])
+	booleanFlags := bitmask.BitMask(data[MARSHALED_FLAGS_START])
 	if booleanFlags.HasFlag(0) {
 		metadata.solid = true
 	}
-- 
GitLab