pkg: hide it by moving to _pkg.dev
The idea here is to preserve the history of `dev` branch development and its code when merging with the `master`. Later this code could be moved into the masters code where appropriate.
This commit is contained in:
parent
bb2568cc53
commit
ddd1d92ff1
183 changed files with 0 additions and 0 deletions
61
_pkg.dev/wire/payload/transaction/invocation.go
Normal file
61
_pkg.dev/wire/payload/transaction/invocation.go
Normal file
|
@ -0,0 +1,61 @@
|
|||
package transaction
|
||||
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/CityOfZion/neo-go/pkg/wire/payload/transaction/types"
|
||||
"github.com/CityOfZion/neo-go/pkg/wire/payload/transaction/version"
|
||||
"github.com/CityOfZion/neo-go/pkg/wire/util"
|
||||
"github.com/CityOfZion/neo-go/pkg/wire/util/fixed8"
|
||||
)
|
||||
|
||||
//Invocation represents an invocation transaction on the neo network
|
||||
type Invocation struct {
|
||||
*Base
|
||||
Script []byte
|
||||
Gas fixed8.Fixed8
|
||||
}
|
||||
|
||||
//NewInvocation returns an invocation transaction
|
||||
func NewInvocation(ver version.TX) *Invocation {
|
||||
basicTrans := createBaseTransaction(types.Invocation, ver)
|
||||
|
||||
invocation := &Invocation{}
|
||||
invocation.Base = basicTrans
|
||||
invocation.encodeExclusive = invocation.encodeExcl
|
||||
invocation.decodeExclusive = invocation.decodeExcl
|
||||
return invocation
|
||||
}
|
||||
|
||||
func (c *Invocation) encodeExcl(bw *util.BinWriter) {
|
||||
bw.VarUint(uint64(len(c.Script)))
|
||||
bw.Write(c.Script)
|
||||
|
||||
switch c.Version {
|
||||
case 0:
|
||||
c.Gas = fixed8.Fixed8(0)
|
||||
case 1:
|
||||
bw.Write(&c.Gas)
|
||||
default:
|
||||
bw.Write(&c.Gas)
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
func (c *Invocation) decodeExcl(br *util.BinReader) {
|
||||
|
||||
lenScript := br.VarUint()
|
||||
c.Script = make([]byte, lenScript)
|
||||
br.Read(&c.Script)
|
||||
|
||||
switch c.Version {
|
||||
case 0:
|
||||
c.Gas = fixed8.Fixed8(0)
|
||||
case 1:
|
||||
br.Read(&c.Gas)
|
||||
default:
|
||||
br.Err = errors.New("invalid Version Number for Invocation Transaction")
|
||||
}
|
||||
return
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue