本文整理汇总了Golang中github.com/FactomProject/factomd/common/interfaces.IFBlock.GetLedgerKeyMR方法的典型用法代码示例。如果您正苦于以下问题:Golang IFBlock.GetLedgerKeyMR方法的具体用法?Golang IFBlock.GetLedgerKeyMR怎么用?Golang IFBlock.GetLedgerKeyMR使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/FactomProject/factomd/common/interfaces.IFBlock
的用法示例。
在下文中一共展示了IFBlock.GetLedgerKeyMR方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: CheckBlockPairIntegrity
func CheckBlockPairIntegrity(block interfaces.IFBlock, prev interfaces.IFBlock) error {
if block == nil {
return fmt.Errorf("No block specified")
}
if prev == nil {
if block.GetPrevKeyMR().IsZero() == false {
return fmt.Errorf("Invalid PrevKeyMR")
}
if block.GetPrevLedgerKeyMR().IsZero() == false {
return fmt.Errorf("Invalid PrevLedgerKeyMR")
}
if block.GetDBHeight() != 0 {
return fmt.Errorf("Invalid DBHeight")
}
} else {
if block.GetPrevKeyMR().IsSameAs(prev.GetKeyMR()) == false {
return fmt.Errorf("Invalid PrevKeyMR")
}
if block.GetPrevLedgerKeyMR().IsSameAs(prev.GetLedgerKeyMR()) == false {
return fmt.Errorf("Invalid PrevLedgerKeyMR")
}
if block.GetDBHeight() != (prev.GetDBHeight() + 1) {
return fmt.Errorf("Invalid DBHeight")
}
}
return nil
}
示例2: NewFBlockFromPreviousBlock
func NewFBlockFromPreviousBlock(exchangeRate uint64, prev interfaces.IFBlock) interfaces.IFBlock {
if prev != nil {
newBlock := NewFBlock(exchangeRate, prev.GetDBHeight()+1)
newBlock.SetPrevKeyMR(prev.GetKeyMR().Bytes())
newBlock.SetPrevLedgerKeyMR(prev.GetLedgerKeyMR().Bytes())
return newBlock
}
return NewFBlock(exchangeRate, 0)
}
示例3: NewFBlock
func NewFBlock(prev interfaces.IFBlock) interfaces.IFBlock {
scb := new(FBlock)
scb.BodyMR = new(primitives.Hash)
if prev != nil {
scb.PrevKeyMR = prev.GetKeyMR()
scb.PrevLedgerKeyMR = prev.GetLedgerKeyMR()
scb.ExchRate = prev.GetExchRate()
scb.DBHeight = prev.GetDBHeight() + 1
} else {
scb.PrevKeyMR = primitives.NewZeroHash()
scb.PrevLedgerKeyMR = primitives.NewZeroHash()
scb.ExchRate = 1
scb.DBHeight = 0
}
return scb
}