tendermint/merkle/util.go

44 lines
813 B
Go
Raw Normal View History

package merkle
import (
2014-07-01 14:50:24 -07:00
"fmt"
)
// Prints the in-memory children recursively.
func PrintIAVLNode(node *IAVLNode) {
2014-07-01 14:50:24 -07:00
fmt.Println("==== NODE")
if node != nil {
printIAVLNode(node, 0)
}
fmt.Println("==== END")
}
func printIAVLNode(node *IAVLNode, indent int) {
2014-07-01 14:50:24 -07:00
indentPrefix := ""
for i := 0; i < indent; i++ {
indentPrefix += " "
}
2014-10-06 01:46:39 -07:00
if node.rightNode != nil {
printIAVLNode(node.rightNode, indent+1)
2014-10-06 00:15:37 -07:00
} else if node.rightHash != nil {
fmt.Printf("%s %X\n", indentPrefix, node.rightHash)
2014-07-01 14:50:24 -07:00
}
2014-07-01 14:50:24 -07:00
fmt.Printf("%s%v:%v\n", indentPrefix, node.key, node.height)
2014-10-06 01:46:39 -07:00
if node.leftNode != nil {
printIAVLNode(node.leftNode, indent+1)
2014-10-06 00:15:37 -07:00
} else if node.leftHash != nil {
fmt.Printf("%s %X\n", indentPrefix, node.leftHash)
2014-07-01 14:50:24 -07:00
}
}
2014-05-23 17:49:28 -07:00
2014-05-23 23:11:22 -07:00
func maxUint8(a, b uint8) uint8 {
2014-07-01 14:50:24 -07:00
if a > b {
return a
}
return b
2014-05-23 23:11:22 -07:00
}