Documentation ¶
Index ¶
- Variables
- func Check(err error) bool
- func Debug(a ...interface{})
- func Debugc(fn func() string)
- func Debugf(format string, a ...interface{})
- func Debugs(a interface{})
- func Error(a ...interface{})
- func Errorc(fn func() string)
- func Errorf(format string, a ...interface{})
- func Errors(a interface{})
- func Fatal(a ...interface{})
- func Fatalc(fn func() string)
- func Fatalf(format string, a ...interface{})
- func Fatals(a interface{})
- func Get(node *chainrpc.Node, activeNet *netparams.Params, uuid uint64, mB *util.Block) (cbs *map[int32]*util.Tx, out []byte, txr []*util.Tx)
- func Info(a ...interface{})
- func Infoc(fn func() string)
- func Infof(format string, a ...interface{})
- func Infos(a interface{})
- func Trace(a ...interface{})
- func Tracec(fn func() string)
- func Tracef(format string, a ...interface{})
- func Traces(a interface{})
- func Warn(a ...interface{})
- func Warnc(fn func() string)
- func Warnf(format string, a ...interface{})
- func Warns(a interface{})
- type Job
Constants ¶
This section is empty.
Variables ¶
var Magic = []byte{'j', 'o', 'b', 1}
Functions ¶
func Get ¶
func Get(node *chainrpc.Node, activeNet *netparams.Params, uuid uint64, mB *util.Block) ( cbs *map[int32]*util.Tx, out []byte, txr []*util.Tx, )
Get returns a message broadcast by a node and each field is decoded where possible avoiding memory allocation (slicing the data). Yes, this is not concurrent safe, put a mutex in to share it. Using the same principles as used in FlatBuffers, we define a message type that instead of using a reflect based encoder, there is a creation function, and a set of methods that extracts the individual requested field without copying memory, or deserialize their contents which will be concurrent safe The varying coinbase payment values are in transaction 0 last output, the individual varying transactions are stored separately and will be reassembled at the end
Types ¶
type Job ¶
type Job struct { // IPs map[string]struct{} // P2PListenerPort uint16 // RPCListenerPort uint16 ControllerNonce uint64 Height int32 PrevBlockHash *chainhash.Hash MinTimestamp time.Time Diffs blockchain.Diffs Merkles blockchain.Merkles }
func (*Job) GetMsgBlock ¶
GetMsgBlock takes the handy go struct version and returns a wire.MsgBlock ready for giving nonce extranonce and computing the merkel root based on the extranonce in the coinbase as needs to be done when mining, so this would be called for each round for each algorithm to start.