stasatdaglabs 01c7c67aed
[NOD-1493] Implement serialization in AcceptanceDataStore, BlockRelationStore, BlockStatusStore, and BlockStore (#982)
* [NOD-1493] Add DbHashToDomainHash and DomainHashToDbHash.

* [NOD-1493] Use DbHashToDomainHash and DomainHashToDbHash.

* [NOD-1493] Begin implementing serializeAcceptanceData.

* [NOD-1493] Extract serialization blockHeader logic to serialization.

* [NOD-1493] Extract serialization acceptance data logic to serialization.

* [NOD-1493] Implement acceptance data serialization/deserialization.

* [NOD-1493] Implement transaction serialization/deserialization.

* [NOD-1493] Implement outpoint serialization/deserialization.

* [NOD-1493] Implement transaction ID serialization/deserialization.

* [NOD-1493] Implement subnetwork ID serialization/deserialization.

* [NOD-1493] Implement block relation serialization/deserialization.

* [NOD-1493] Implement block status serialization/deserialization.

* [NOD-1493] Implement block serialization/deserialization.

* [NOD-1493] Implement serialization/deserialization in BlockRelationStore.

* [NOD-1493] Implement serialization/deserialization in BlockStatusStore.

* [NOD-1493] Implement serialization/deserialization in BlockStore.

* [NOD-1493] Make go vet happy.

* [NOD-1493] Use DomainHashesToDbHashes.
2020-10-29 16:49:05 +02:00

18 lines
614 B
Go

package subnetworks
import (
"github.com/kaspanet/kaspad/domain/consensus/model/externalapi"
"github.com/pkg/errors"
)
// FromBytes creates a DomainSubnetworkID from the given byte slice
func FromBytes(subnetworkIDBytes []byte) (*externalapi.DomainSubnetworkID, error) {
if len(subnetworkIDBytes) != externalapi.DomainSubnetworkIDSize {
return nil, errors.Errorf("invalid hash size. Want: %d, got: %d",
externalapi.DomainSubnetworkIDSize, len(subnetworkIDBytes))
}
var domainSubnetworkID externalapi.DomainSubnetworkID
copy(domainSubnetworkID[:], subnetworkIDBytes)
return &domainSubnetworkID, nil
}