本文整理汇总了Golang中github.com/FactomProject/factomd/common/primitives.Buffer类的典型用法代码示例。如果您正苦于以下问题:Golang Buffer类的具体用法?Golang Buffer怎么用?Golang Buffer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Buffer类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: MarshalBinary
func (s FactoidSignature) MarshalBinary() ([]byte, error) {
var out primitives.Buffer
out.Write(s.Signature[:])
return out.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:7,代码来源:signature.go
示例2: String
func (e *ECBlockBody) String() string {
var out primitives.Buffer
for _, v := range e.Entries {
out.WriteString(v.String())
}
return string(out.DeepCopyBytes())
}
开发者ID:FactomProject,项目名称:factomd,代码行数:7,代码来源:ecblockBody.go
示例3: String
func (e *EBlockBody) String() string {
var out primitives.Buffer
for _, eh := range e.EBEntries {
out.WriteString(fmt.Sprintf(" %20s: %x\n", "Entry Hash", eh.Bytes()[:3]))
}
return (string)(out.DeepCopyBytes())
}
开发者ID:FactomProject,项目名称:factomd,代码行数:7,代码来源:eblockBody.go
示例4: milliTime
// MilliTime returns a 6 byte slice representing the unix time in milliseconds
func milliTime() (r []byte) {
buf := new(primitives.Buffer)
t := time.Now().UnixNano()
m := t / 1e6
binary.Write(buf, binary.BigEndian, m)
return buf.DeepCopyBytes()[2:]
}
开发者ID:FactomProject,项目名称:factomd,代码行数:8,代码来源:anchorChain.go
示例5: String
func (e *AddReplaceMatryoshkaHash) String() string {
var out primitives.Buffer
out.WriteString(fmt.Sprintf(" E: %35s -- %17s %8x %12s %8s\n",
"AddReplaceMatryoshkaHash",
"IdentityChainID", e.IdentityChainID.Bytes()[:4],
"MHash", e.MHash.String()[:8]))
return (string)(out.DeepCopyBytes())
}
开发者ID:FactomProject,项目名称:factomd,代码行数:8,代码来源:EntryAddReplaceMatryoshkaHash.go
示例6: MarshalBinary
func (e *IncreaseServerCount) MarshalBinary() (data []byte, err error) {
var buf primitives.Buffer
buf.Write([]byte{e.Type()})
buf.Write([]byte{e.Amount})
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:8,代码来源:EntryIncreaseServerCount.go
示例7: NewPrivKeyString
func NewPrivKeyString(n uint64) string {
buf := new(primitives.Buffer)
if err := binary.Write(buf, binary.BigEndian, n); err != nil {
panic(err)
}
priv := fmt.Sprintf("000000000000000000000000000000000000000000000000%x", buf.DeepCopyBytes())
return priv
}
开发者ID:FactomProject,项目名称:factomd,代码行数:9,代码来源:addresses.go
示例8: marshalBodyBinary
// marshalBodyBinary returns a serialized binary Entry Block Body
func (e *EBlock) marshalBodyBinary() ([]byte, error) {
buf := new(primitives.Buffer)
for _, v := range e.Body.EBEntries {
buf.Write(v.Bytes())
}
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:10,代码来源:eblock.go
示例9: String
func (e *AddFederatedServerSigningKey) String() string {
var out primitives.Buffer
out.WriteString(fmt.Sprintf(" E: %35s -- %17s %8x %12s %8x %12s %8s %12s %d\n",
"AddFederatedServerSigningKey",
"IdentityChainID", e.IdentityChainID.Bytes()[:4],
"KeyPriority", e.KeyPriority,
"PublicKey", e.PublicKey.String()[:8],
"DBHeight", e.DBHeight))
return (string)(out.DeepCopyBytes())
}
开发者ID:FactomProject,项目名称:factomd,代码行数:10,代码来源:EntryAddFederatedServerSigningKey.go
示例10: String
func (e *AddFederatedServerBitcoinAnchorKey) String() string {
var out primitives.Buffer
out.WriteString(fmt.Sprintf(" E: %35s -- %17s %8x %12s %8x %12s %8x %12s %8s\n",
"AddFederatedServerBitcoinAnchorKey",
"IdentityChainID", e.IdentityChainID.Bytes()[:4],
"KeyPriority", e.KeyPriority,
"KeyType", e.KeyType,
"ECDSAPublicKey", e.ECDSAPublicKey.String()[:8]))
return (string)(out.DeepCopyBytes())
}
开发者ID:FactomProject,项目名称:factomd,代码行数:10,代码来源:EntryAddFederatedServerBitcoinAnchorKey.go
示例11: MarshalBinary
func (m *MissingMsg) MarshalBinary() ([]byte, error) {
var buf primitives.Buffer
binary.Write(&buf, binary.BigEndian, m.Type())
t := m.GetTimestamp()
data, err := t.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
if m.Asking == nil {
m.Asking = primitives.NewHash(constants.ZERO_HASH)
}
data, err = m.Asking.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
buf.WriteByte(uint8(m.VMIndex))
binary.Write(&buf, binary.BigEndian, m.DBHeight)
binary.Write(&buf, binary.BigEndian, m.SystemHeight)
binary.Write(&buf, binary.BigEndian, uint32(len(m.ProcessListHeight)))
for _, h := range m.ProcessListHeight {
binary.Write(&buf, binary.BigEndian, h)
}
bb := buf.DeepCopyBytes()
return bb, nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:34,代码来源:missingMsg.go
示例12: MarshalBinary
// Write out the ABlockHeader to binary.
func (b *ABlockHeader) MarshalBinary() (data []byte, err error) {
var buf primitives.Buffer
data, err = b.GetAdminChainID().MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
data, err = b.PrevBackRefHash.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
binary.Write(&buf, binary.BigEndian, b.DBHeight)
primitives.EncodeVarInt(&buf, b.HeaderExpansionSize)
buf.Write(b.HeaderExpansionArea)
binary.Write(&buf, binary.BigEndian, b.MessageCount)
binary.Write(&buf, binary.BigEndian, b.BodySize)
return buf.DeepCopyBytes(), err
}
开发者ID:FactomProject,项目名称:factomd,代码行数:26,代码来源:adminBlockHeader.go
示例13: MarshalBinary
// This just Marshals what gets signed, i.e. MarshalBinarySig(), then
// Marshals the signatures and the RCDs for this transaction.
func (t Transaction) MarshalBinary() ([]byte, error) {
var out primitives.Buffer
data, err := t.MarshalBinarySig()
if err != nil {
return nil, err
}
out.Write(data)
for i, rcd := range t.RCDs {
// Write the RCD
data, err := rcd.MarshalBinary()
if err != nil {
return nil, err
}
out.Write(data)
// Then write its signature blocks. This needs to be
// reworked so we use the information from the RCD block
// to control the writing of the signatures. After all,
// we don't want to restrict what might be required to
// sign an input.
if len(t.SigBlocks) <= i {
t.SigBlocks = append(t.SigBlocks, new(SignatureBlock))
}
data, err = t.SigBlocks[i].MarshalBinary()
if err != nil {
return nil, err
}
out.Write(data)
}
return out.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:37,代码来源:transaction.go
示例14: MarshalBinary
func (m *EOM) MarshalBinary() (data []byte, err error) {
var buf primitives.Buffer
resp, err := m.MarshalForSignature()
if err != nil {
return nil, err
}
buf.Write(resp)
binary.Write(&buf, binary.BigEndian, m.DBHeight)
binary.Write(&buf, binary.BigEndian, m.SysHeight)
if m.SysHash == nil {
m.SysHash = primitives.NewHash(constants.ZERO_HASH)
}
if d, err := m.SysHash.MarshalBinary(); err != nil {
return nil, err
} else {
buf.Write(d)
}
sig := m.GetSignature()
if sig != nil {
sigBytes, err := sig.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(sigBytes)
}
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:30,代码来源:eom.go
示例15: MarshalBinary
func (e *Entry) MarshalBinary() ([]byte, error) {
buf := new(primitives.Buffer)
// 1 byte Version
if err := binary.Write(buf, binary.BigEndian, e.Version); err != nil {
return nil, err
}
// 32 byte ChainID
buf.Write(e.ChainID.Bytes())
// ExtIDs
if ext, err := e.MarshalExtIDsBinary(); err != nil {
return nil, err
} else {
// 2 byte size of ExtIDs
if err := binary.Write(buf, binary.BigEndian, int16(len(ext))); err != nil {
return nil, err
}
// binary ExtIDs
buf.Write(ext)
}
// Content
buf.Write(e.Content.Bytes)
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:29,代码来源:entry.go
示例16: MarshalForSignature
func (m *Bounce) MarshalForSignature() ([]byte, error) {
var buf primitives.Buffer
binary.Write(&buf, binary.BigEndian, m.Type())
var buff [32]byte
copy(buff[:32], []byte(fmt.Sprintf("%32s", m.Name)))
buf.Write(buff[:])
binary.Write(&buf, binary.BigEndian, m.Number)
t := m.GetTimestamp()
data, err := t.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
binary.Write(&buf, binary.BigEndian, int32(len(m.Stamps)))
for _, ts := range m.Stamps {
data, err := ts.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
}
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:31,代码来源:bounce.go
示例17: MarshalForSignature
func (m *EntryBlockResponse) MarshalForSignature() ([]byte, error) {
var buf primitives.Buffer
binary.Write(&buf, binary.BigEndian, m.Type())
t := m.GetTimestamp()
data, err := t.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
m.EBlockCount = uint32(len(m.EBlocks))
binary.Write(&buf, binary.BigEndian, m.EBlockCount)
for _, eb := range m.EBlocks {
bin, err := eb.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(bin)
}
m.EntryCount = uint32(len(m.Entries))
binary.Write(&buf, binary.BigEndian, m.EntryCount)
for _, e := range m.Entries {
bin, err := e.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(bin)
}
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:34,代码来源:entryBlockResponse.go
示例18: MarshalCore
func (m *ServerFault) MarshalCore() (data []byte, err error) {
defer func() {
if r := recover(); r != nil {
err = fmt.Errorf("Error marshalling Server Fault Core: %v", r)
}
}()
var buf primitives.Buffer
if d, err := m.ServerID.MarshalBinary(); err != nil {
return nil, err
} else {
buf.Write(d)
}
if d, err := m.AuditServerID.MarshalBinary(); err != nil {
return nil, err
} else {
buf.Write(d)
}
buf.WriteByte(m.VMIndex)
binary.Write(&buf, binary.BigEndian, uint32(m.DBHeight))
binary.Write(&buf, binary.BigEndian, uint32(m.Height))
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:26,代码来源:EntryServerFault.go
示例19: MarshalForSignature
func (m *ChangeServerKeyMsg) MarshalForSignature() ([]byte, error) {
var buf primitives.Buffer
binary.Write(&buf, binary.BigEndian, m.Type())
t := m.GetTimestamp()
data, err := t.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
data, err = m.IdentityChainID.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
binary.Write(&buf, binary.BigEndian, uint8(m.AdminBlockChange))
binary.Write(&buf, binary.BigEndian, uint8(m.KeyType))
binary.Write(&buf, binary.BigEndian, uint8(m.KeyPriority))
data, err = m.Key.MarshalBinary()
if err != nil {
return nil, err
}
buf.Write(data)
return buf.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:30,代码来源:changeServerKey.go
示例20: MarshalBinary
func (e *DirBlockInfo) MarshalBinary() ([]byte, error) {
var data primitives.Buffer
enc := gob.NewEncoder(&data)
err := enc.Encode(newDirBlockInfoCopyFromDBI(e))
if err != nil {
return nil, err
}
return data.DeepCopyBytes(), nil
}
开发者ID:FactomProject,项目名称:factomd,代码行数:11,代码来源:dbInfo.go
注:本文中的github.com/FactomProject/factomd/common/primitives.Buffer类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论