"context"
"encoding/json"
- "github.com/bytom/blockchain/signers"
- "github.com/bytom/blockchain/txbuilder"
- "github.com/bytom/common"
- "github.com/bytom/consensus"
- "github.com/bytom/crypto/ed25519/chainkd"
- "github.com/bytom/errors"
- "github.com/bytom/protocol/bc"
- "github.com/bytom/protocol/bc/types"
- "github.com/bytom/protocol/vm/vmutil"
-)
-
-var (
- //chainTxUtxoNum maximum utxo quantity in a tx
- chainTxUtxoNum = 5
- //chainTxMergeGas chain tx gas
- chainTxMergeGas = uint64(10000000)
+ "github.com/bytom/bytom/blockchain/signers"
+ "github.com/bytom/bytom/blockchain/txbuilder"
+ "github.com/bytom/bytom/common"
+ "github.com/bytom/bytom/consensus"
+ "github.com/bytom/bytom/crypto/ed25519/chainkd"
+ "github.com/bytom/bytom/errors"
+ "github.com/bytom/bytom/protocol/bc"
+ "github.com/bytom/bytom/protocol/bc/types"
+ "github.com/bytom/bytom/protocol/vm/vmutil"
)
//DecodeSpendAction unmarshal JSON-encoded data of spend action
func calcMergeGas(num int) uint64 {
gas := uint64(0)
for num > 1 {
- gas += chainTxMergeGas
- num -= chainTxUtxoNum - 1
+ gas += txbuilder.ChainTxMergeGas
+ num -= txbuilder.ChainTxUtxoNum - 1
}
return gas
}
}
buildAmount += input.Amount()
- if builder.InputCount() != chainTxUtxoNum && index != len(utxos)-1 {
+ if builder.InputCount() != txbuilder.ChainTxUtxoNum && index != len(utxos)-1 {
continue
}
- outAmount := buildAmount - chainTxMergeGas
+ outAmount := buildAmount - txbuilder.ChainTxMergeGas
output := types.NewTxOutput(*consensus.BTMAssetID, outAmount, acp.ControlProgram)
if err := builder.AddOutput(output); err != nil {
return nil, nil, err