diff --git a/pkg/core/account_state.go b/pkg/core/account_state.go index 4d6ceb532..7d7fdb807 100644 --- a/pkg/core/account_state.go +++ b/pkg/core/account_state.go @@ -130,7 +130,7 @@ func (s *AccountState) EncodeBinary(bw *io.BinWriter) { } } -// Returns only the non-zero balances for the account. +// nonZeroBalances returns only the non-zero balances for the account. func (s *AccountState) nonZeroBalances() map[util.Uint256]util.Fixed8 { b := make(map[util.Uint256]util.Fixed8) for k, v := range s.Balances { diff --git a/pkg/core/block.go b/pkg/core/block.go index d15c4beee..de790fc43 100644 --- a/pkg/core/block.go +++ b/pkg/core/block.go @@ -39,7 +39,7 @@ func merkleTreeFromTransactions(txes []*transaction.Transaction) (*crypto.Merkle return crypto.NewMerkleTree(hashes) } -// rebuildMerkleRoot rebuild the merkleroot of the block. +// rebuildMerkleRoot rebuilds the merkleroot of the block. func (b *Block) rebuildMerkleRoot() error { merkle, err := merkleTreeFromTransactions(b.Transactions) if err != nil { @@ -50,7 +50,7 @@ func (b *Block) rebuildMerkleRoot() error { return nil } -// Verify the integrity of the block. +// Verify verifies the integrity of the block. func (b *Block) Verify() error { // There has to be some transaction inside. if len(b.Transactions) == 0 { diff --git a/pkg/core/block_base.go b/pkg/core/block_base.go index 97077b690..c3a637b94 100644 --- a/pkg/core/block_base.go +++ b/pkg/core/block_base.go @@ -53,7 +53,7 @@ func (b *BlockBase) Verify() bool { return true } -// Hash return the hash of the block. +// Hash returns the hash of the block. func (b *BlockBase) Hash() util.Uint256 { if b.hash.Equals(util.Uint256{}) { b.createHash() @@ -132,7 +132,7 @@ func (b *BlockBase) encodeHashableFields(bw *io.BinWriter) { bw.WriteLE(b.NextConsensus) } -// decodeHashableFields will only decode the fields used for hashing. +// decodeHashableFields decodes the fields used for hashing. // see Hash() for more information about the fields. func (b *BlockBase) decodeHashableFields(br *io.BinReader) { br.ReadLE(&b.Version) diff --git a/pkg/core/blockchain.go b/pkg/core/blockchain.go index 309c6e89e..3ecd2c3b7 100644 --- a/pkg/core/blockchain.go +++ b/pkg/core/blockchain.go @@ -20,7 +20,7 @@ import ( log "github.com/sirupsen/logrus" ) -// tuning parameters +// Tuning parameters. const ( headerBatchCount = 2000 version = "0.0.1" @@ -57,7 +57,7 @@ type Blockchain struct { // Number of headers stored in the chain file. storedHeaderCount uint32 - // All operation on headerList must be called from an + // All operations on headerList must be called from an // headersOp to be routine safe. headerList *HeaderHashList @@ -70,7 +70,7 @@ type Blockchain struct { type headersOpFunc func(headerList *HeaderHashList) -// NewBlockchain return a new blockchain object the will use the +// NewBlockchain returns a new blockchain object the will use the // given Store as its underlying storage. func NewBlockchain(s storage.Store, cfg config.ProtocolConfiguration) (*Blockchain, error) { bc := &Blockchain{ @@ -235,7 +235,7 @@ func (bc *Blockchain) AddBlock(block *Block) error { return bc.storeBlock(block) } -// AddHeaders will process the given headers and add them to the +// AddHeaders processes the given headers and add them to the // HeaderHashList. func (bc *Blockchain) AddHeaders(headers ...*Header) (err error) { var ( @@ -623,7 +623,7 @@ func getHeaderFromStore(s storage.Store, hash util.Uint256) (*Header, error) { return block.Header(), nil } -// HasTransaction return true if the blockchain contains he given +// HasTransaction returns true if the blockchain contains he given // transaction hash. func (bc *Blockchain) HasTransaction(hash util.Uint256) bool { return bc.memPool.ContainsKey(hash) || @@ -640,7 +640,7 @@ func checkTransactionInStore(s storage.Store, hash util.Uint256) bool { return false } -// HasBlock return true if the blockchain contains the given +// HasBlock returns true if the blockchain contains the given // block hash. func (bc *Blockchain) HasBlock(hash util.Uint256) bool { if header, err := bc.GetHeader(hash); err == nil { @@ -667,7 +667,7 @@ func (bc *Blockchain) CurrentHeaderHash() (hash util.Uint256) { return } -// GetHeaderHash return the hash from the headerList by its +// GetHeaderHash returns the hash from the headerList by its // height/index. func (bc *Blockchain) GetHeaderHash(i int) (hash util.Uint256) { bc.headersOp <- func(headerList *HeaderHashList) { @@ -687,7 +687,7 @@ func (bc *Blockchain) HeaderHeight() uint32 { return uint32(bc.headerListLen() - 1) } -// GetAssetState returns asset state from its assetID +// GetAssetState returns asset state from its assetID. func (bc *Blockchain) GetAssetState(assetID util.Uint256) *AssetState { return getAssetStateFromStore(bc.store, assetID) } @@ -733,7 +733,7 @@ func getContractStateFromStore(s storage.Store, hash util.Uint160) *ContractStat return &c } -// GetAccountState returns the account state from its script hash +// GetAccountState returns the account state from its script hash. func (bc *Blockchain) GetAccountState(scriptHash util.Uint160) *AccountState { as, err := getAccountStateFromStore(bc.store, scriptHash) if as == nil && err != storage.ErrKeyNotFound { @@ -751,7 +751,7 @@ func (bc *Blockchain) GetUnspentCoinState(hash util.Uint256) *UnspentCoinState { return ucs } -// GetConfig returns the config stored in the blockchain +// GetConfig returns the config stored in the blockchain. func (bc *Blockchain) GetConfig() config.ProtocolConfiguration { return bc.config } @@ -778,12 +778,12 @@ func (bc *Blockchain) References(t *transaction.Transaction) map[transaction.Inp return references } -// FeePerByte returns network fee divided by the size of the transaction +// FeePerByte returns network fee divided by the size of the transaction. func (bc *Blockchain) FeePerByte(t *transaction.Transaction) util.Fixed8 { return bc.NetworkFee(t).Div(int64(io.GetVarSize(t))) } -// NetworkFee returns network fee +// NetworkFee returns network fee. func (bc *Blockchain) NetworkFee(t *transaction.Transaction) util.Fixed8 { inputAmount := util.Fixed8FromInt64(0) for _, txOutput := range bc.References(t) { @@ -802,13 +802,13 @@ func (bc *Blockchain) NetworkFee(t *transaction.Transaction) util.Fixed8 { return inputAmount.Sub(outputAmount).Sub(bc.SystemFee(t)) } -// SystemFee returns system fee +// SystemFee returns system fee. func (bc *Blockchain) SystemFee(t *transaction.Transaction) util.Fixed8 { return bc.GetConfig().SystemFee.TryGetValue(t.Type) } -// IsLowPriority flags a trnsaction as low priority if the network fee is less than -// LowPriorityThreshold +// IsLowPriority flags a transaction as low priority if the network fee is less than +// LowPriorityThreshold. func (bc *Blockchain) IsLowPriority(t *transaction.Transaction) bool { return bc.NetworkFee(t) < util.Fixed8FromFloat(bc.GetConfig().LowPriorityThreshold) } @@ -1136,13 +1136,13 @@ func (bc *Blockchain) verifyHashAgainstScript(hash util.Uint160, witness *transa return nil } -// verifyTxWitnesses verify the scripts (witnesses) that come with a given +// verifyTxWitnesses verifies the scripts (witnesses) that come with a given // transaction. It can reorder them by ScriptHash, because that's required to // match a slice of script hashes from the Blockchain. Block parameter // is used for easy interop access and can be omitted for transactions that are // not yet added into any block. // Golang implementation of VerifyWitnesses method in C# (https://github.com/neo-project/neo/blob/master/neo/SmartContract/Helper.cs#L87). -// Unfortunately the IVerifiable interface could not be implemented because we can't move the References method in blockchain.go to the transaction.go file +// Unfortunately the IVerifiable interface could not be implemented because we can't move the References method in blockchain.go to the transaction.go file. func (bc *Blockchain) verifyTxWitnesses(t *transaction.Transaction, block *Block) error { hashes, err := bc.GetScriptHashesForVerifying(t) if err != nil { diff --git a/pkg/core/header.go b/pkg/core/header.go index 0ce253ddb..a33f0a0af 100644 --- a/pkg/core/header.go +++ b/pkg/core/header.go @@ -10,7 +10,7 @@ import ( type Header struct { // Base of the block. BlockBase - // Padding that is fixed to 0 + // Padding that is fixed to 0. _ uint8 } @@ -26,7 +26,7 @@ func (h *Header) DecodeBinary(r *io.BinReader) { } } -// EncodeBinary implements Serializable interface. +// EncodeBinary implements Serializable interface. func (h *Header) EncodeBinary(w *io.BinWriter) { h.BlockBase.EncodeBinary(w) w.WriteLE(uint8(0)) diff --git a/pkg/core/header_hash_list.go b/pkg/core/header_hash_list.go index 9f6ffbdf2..8f5bb6264 100644 --- a/pkg/core/header_hash_list.go +++ b/pkg/core/header_hash_list.go @@ -6,18 +6,18 @@ import ( ) // A HeaderHashList represents a list of header hashes. -// This datastructure in not routine safe and should be +// This data structure in not routine safe and should be // used under some kind of protection against race conditions. type HeaderHashList struct { hashes []util.Uint256 } -// NewHeaderHashListFromBytes return a new hash list from the given bytes. +// NewHeaderHashListFromBytes returns a new hash list from the given bytes. func NewHeaderHashListFromBytes(b []byte) (*HeaderHashList, error) { return nil, nil } -// NewHeaderHashList return a new pointer to a HeaderHashList. +// NewHeaderHashList returns a new pointer to a HeaderHashList. func NewHeaderHashList(hashes ...util.Uint256) *HeaderHashList { return &HeaderHashList{ hashes: hashes, @@ -29,7 +29,7 @@ func (l *HeaderHashList) Add(h ...util.Uint256) { l.hashes = append(l.hashes, h...) } -// Len return the length of the underlying hashes slice. +// Len returns the length of the underlying hashes slice. func (l *HeaderHashList) Len() int { return len(l.hashes) } @@ -55,7 +55,7 @@ func (l *HeaderHashList) Slice(start, end int) []util.Uint256 { return l.hashes[start:end] } -// WriteTo will write n underlying hashes to the given BinWriter +// WriteTo writes n underlying hashes to the given BinWriter // starting from start. func (l *HeaderHashList) Write(bw *io.BinWriter, start, n int) error { bw.WriteVarUint(uint64(n)) diff --git a/pkg/core/interop_system.go b/pkg/core/interop_system.go index 5401bac49..fbbf768a2 100644 --- a/pkg/core/interop_system.go +++ b/pkg/core/interop_system.go @@ -316,7 +316,7 @@ func (ic *interopContext) checkKeyedWitness(key *keys.PublicKey) (bool, error) { return ic.checkHashedWitness(hash.Hash160(script)) } -// runtimeCheckWitness should check witnesses. +// runtimeCheckWitness checks witnesses. func (ic *interopContext) runtimeCheckWitness(v *vm.VM) error { var res bool var err error @@ -348,7 +348,7 @@ func (ic *interopContext) runtimeNotify(v *vm.VM) error { return nil } -// runtimeLog log the message passed. +// runtimeLog logs the message passed. func (ic *interopContext) runtimeLog(v *vm.VM) error { msg := fmt.Sprintf("%q", v.Estack().Pop().Bytes()) log.Infof("script %s logs: %s", getContextScriptHash(v, 0), msg) @@ -373,12 +373,12 @@ func (ic *interopContext) runtimeGetTime(v *vm.VM) error { } /* -// runtimeSerialize should serialize given stack item. +// runtimeSerialize serializes given stack item. func (ic *interopContext) runtimeSerialize(v *vm.VM) error { panic("TODO") } -// runtimeDeserialize should deserialize given stack item. +// runtimeDeserialize deserializes given stack item. func (ic *interopContext) runtimeDeserialize(v *vm.VM) error { panic("TODO") } diff --git a/pkg/core/mem_pool.go b/pkg/core/mem_pool.go index 0a77110ce..1c8396719 100644 --- a/pkg/core/mem_pool.go +++ b/pkg/core/mem_pool.go @@ -16,7 +16,7 @@ type PoolItem struct { fee Feer } -// PoolItems slice of PoolItem +// PoolItems slice of PoolItem. type PoolItems []*PoolItem // MemPool stores the unconfirms transactions. @@ -59,7 +59,7 @@ func (p PoolItem) CompareTo(otherP *PoolItem) int { } } - // Fees sorted ascending + // Fees sorted ascending. pFPB := p.fee.FeePerByte(p.txn) otherFPB := p.fee.FeePerByte(otherP.txn) if ret := pFPB.CompareTo(otherFPB); ret != 0 { @@ -72,7 +72,7 @@ func (p PoolItem) CompareTo(otherP *PoolItem) int { return ret } - // Transaction hash sorted descending + // Transaction hash sorted descending. return otherP.txn.Hash().CompareTo(p.txn.Hash()) } @@ -187,7 +187,7 @@ func NewMemPool(capacity int) MemPool { } } -// TryGetValue returns a transactions if it esists in the memory pool. +// TryGetValue returns a transaction if it exists in the memory pool. func (mp MemPool) TryGetValue(hash util.Uint256) (*transaction.Transaction, bool) { mp.lock.Lock() defer mp.lock.Unlock() @@ -220,8 +220,8 @@ func getLowestFeeTransaction(verifiedTxnSorted PoolItems, unverifiedTxnSorted Po } -// min return the minimum item in a ascending sorted slice of pool items. -// The function can't be applied to unsorted slice! +// min returns the minimum item in a ascending sorted slice of pool items. +// The function can't be applied to unsorted slice! func min(sortedPool PoolItems) *PoolItem { if len(sortedPool) == 0 { return nil diff --git a/pkg/core/storage/helpers.go b/pkg/core/storage/helpers.go index 8916a5615..f7c9a3ddf 100644 --- a/pkg/core/storage/helpers.go +++ b/pkg/core/storage/helpers.go @@ -9,14 +9,14 @@ import ( "github.com/CityOfZion/neo-go/pkg/util" ) -// Version will attempt to get the current version stored in the +// Version attempts to get the current version stored in the // underlying Store. func Version(s Store) (string, error) { version, err := s.Get(SYSVersion.Bytes()) return string(version), err } -// PutVersion will store the given version in the underlying Store. +// PutVersion stores the given version in the underlying Store. func PutVersion(s Store, v string) error { return s.Put(SYSVersion.Bytes(), []byte(v)) } diff --git a/pkg/core/storage/leveldb_store.go b/pkg/core/storage/leveldb_store.go index 31cf8d40b..074b149a8 100644 --- a/pkg/core/storage/leveldb_store.go +++ b/pkg/core/storage/leveldb_store.go @@ -18,7 +18,7 @@ type LevelDBStore struct { path string } -// NewLevelDBStore return a new LevelDBStore object that will +// NewLevelDBStore returns a new LevelDBStore object that will // initialize the database found at the given path. func NewLevelDBStore(cfg LevelDBOptions) (*LevelDBStore, error) { var opts *opt.Options // should be exposed via LevelDBOptions if anything needed diff --git a/pkg/core/storage/memory_store.go b/pkg/core/storage/memory_store.go index 06609326f..30ba21e26 100644 --- a/pkg/core/storage/memory_store.go +++ b/pkg/core/storage/memory_store.go @@ -14,7 +14,7 @@ type MemoryStore struct { del map[string]bool } -// MemoryBatch a in-memory batch compatible with MemoryStore. +// MemoryBatch is an in-memory batch compatible with MemoryStore. type MemoryBatch struct { MemoryStore } @@ -65,7 +65,7 @@ func (s *MemoryStore) Put(key, value []byte) error { return nil } -// drop deletes a key-valu pair from the store, it's supposed to be called +// drop deletes a key-value pair from the store, it's supposed to be called // with mutex locked. func (s *MemoryStore) drop(key string) { s.del[key] = true diff --git a/pkg/core/storage/store.go b/pkg/core/storage/store.go index 15a25f12e..b494d1c8d 100644 --- a/pkg/core/storage/store.go +++ b/pkg/core/storage/store.go @@ -58,8 +58,8 @@ func (k KeyPrefix) Bytes() []byte { return []byte{byte(k)} } -// AppendPrefix append byteslice b to the given KeyPrefix. -// AppendKeyPrefix(SYSVersion, []byte{0x00, 0x01}) +// AppendPrefix appends byteslice b to the given KeyPrefix. +// AppendKeyPrefix(SYSVersion, []byte{0x00, 0x01}) func AppendPrefix(k KeyPrefix, b []byte) []byte { dest := make([]byte, len(b)+1) dest[0] = byte(k) @@ -68,7 +68,7 @@ func AppendPrefix(k KeyPrefix, b []byte) []byte { } // AppendPrefixInt append int n to the given KeyPrefix. -// AppendPrefixInt(SYSCurrentHeader, 10001) +//AppendPrefixInt(SYSCurrentHeader, 10001) func AppendPrefixInt(k KeyPrefix, n int) []byte { b := make([]byte, 4) binary.LittleEndian.PutUint32(b, uint32(n)) diff --git a/pkg/core/transaction/asset_type.go b/pkg/core/transaction/asset_type.go index 82fc4913a..9d54eb28f 100644 --- a/pkg/core/transaction/asset_type.go +++ b/pkg/core/transaction/asset_type.go @@ -1,6 +1,6 @@ package transaction -// AssetType represent a NEO asset type +// AssetType represents a NEO asset type. type AssetType uint8 // Valid asset types. diff --git a/pkg/core/transaction/attribute.go b/pkg/core/transaction/attribute.go index 40b4ff7fb..45883cb18 100644 --- a/pkg/core/transaction/attribute.go +++ b/pkg/core/transaction/attribute.go @@ -72,7 +72,7 @@ func (attr *Attribute) EncodeBinary(bw *io.BinWriter) { } } -// MarshalJSON implements the json Marschaller interface +// MarshalJSON implements the json Marshaller interface. func (attr *Attribute) MarshalJSON() ([]byte, error) { return json.Marshal(map[string]string{ "usage": attr.Usage.String(), diff --git a/pkg/core/transaction/enrollment.go b/pkg/core/transaction/enrollment.go index 79e3c3b2e..f61269ba9 100644 --- a/pkg/core/transaction/enrollment.go +++ b/pkg/core/transaction/enrollment.go @@ -11,7 +11,7 @@ import ( // and send a deposit to the address of the PublicKey. // The way to cancel the registration is: Spend the deposit on the address of the PublicKey. type EnrollmentTX struct { - // PublicKey of the validator + // PublicKey of the validator. PublicKey *keys.PublicKey } diff --git a/pkg/core/transaction/output.go b/pkg/core/transaction/output.go index 489059839..d0ad24006 100644 --- a/pkg/core/transaction/output.go +++ b/pkg/core/transaction/output.go @@ -20,7 +20,7 @@ type Output struct { ScriptHash util.Uint160 // The position of the Output in slice []Output. This is actually set in NewTransactionOutputRaw - // and used for diplaying purposes. + // and used for displaying purposes. Position int } @@ -47,7 +47,7 @@ func (out *Output) EncodeBinary(bw *io.BinWriter) { bw.WriteLE(out.ScriptHash) } -// MarshalJSON implements the Marshaler interface +// MarshalJSON implements the Marshaler interface. func (out *Output) MarshalJSON() ([]byte, error) { return json.Marshal(map[string]interface{}{ "asset": out.AssetID, diff --git a/pkg/core/transaction/register.go b/pkg/core/transaction/register.go index fde7687ef..5ca940ac3 100644 --- a/pkg/core/transaction/register.go +++ b/pkg/core/transaction/register.go @@ -15,14 +15,14 @@ type RegisterTX struct { // Name of the asset being registered. Name string - // Amount registered - // Unlimited mode -0.00000001 + // Amount registered. + // Unlimited mode -0.00000001. Amount util.Fixed8 - // Decimals + // Decimals. Precision uint8 - // Public key of the owner + // Public key of the owner. Owner *keys.PublicKey Admin util.Uint160 diff --git a/pkg/core/transaction/transaction.go b/pkg/core/transaction/transaction.go index 1d9db3349..d878bb29f 100644 --- a/pkg/core/transaction/transaction.go +++ b/pkg/core/transaction/transaction.go @@ -59,7 +59,7 @@ func NewTrimmedTX(hash util.Uint256) *Transaction { } } -// Hash return the hash of the transaction. +// Hash returns the hash of the transaction. func (t *Transaction) Hash() util.Uint256 { if t.hash.Equals(util.Uint256{}) { if t.createHash() != nil { @@ -173,7 +173,7 @@ func (t *Transaction) EncodeBinary(bw *io.BinWriter) { } } -// encodeHashableFields will only encode the fields that are not used for +// encodeHashableFields encodes the fields that are not used for // signing the transaction, which are all fields except the scripts. func (t *Transaction) encodeHashableFields(bw *io.BinWriter) { bw.WriteLE(t.Type) @@ -236,7 +236,7 @@ func (t Transaction) GroupOutputByAssetID() map[util.Uint256][]*Output { return m } -// Bytes convert the transaction to []byte +// Bytes converts the transaction to []byte func (t *Transaction) Bytes() []byte { buf := io.NewBufBinWriter() t.EncodeBinary(buf.BinWriter) diff --git a/pkg/core/util.go b/pkg/core/util.go index 3d909cfd5..c11032e80 100644 --- a/pkg/core/util.go +++ b/pkg/core/util.go @@ -14,7 +14,7 @@ import ( "github.com/CityOfZion/neo-go/pkg/vm" ) -// Creates a genesis block based on the given configuration. +// createGenesisBlock creates a genesis block based on the given configuration. func createGenesisBlock(cfg config.ProtocolConfiguration) (*Block, error) { validators, err := getValidators(cfg) if err != nil { diff --git a/pkg/crypto/hash/hash.go b/pkg/crypto/hash/hash.go index ba3c6783b..6a42f71a4 100644 --- a/pkg/crypto/hash/hash.go +++ b/pkg/crypto/hash/hash.go @@ -8,13 +8,13 @@ import ( ) // Sha256 hashes the incoming byte slice -// using the sha256 algorithm +// using the sha256 algorithm. func Sha256(data []byte) util.Uint256 { hash := sha256.Sum256(data) return hash } -// DoubleSha256 performs sha256 twice on the given data +// DoubleSha256 performs sha256 twice on the given data. func DoubleSha256(data []byte) util.Uint256 { var hash util.Uint256 @@ -24,7 +24,7 @@ func DoubleSha256(data []byte) util.Uint256 { } // RipeMD160 performs the RIPEMD160 hash algorithm -// on the given data +// on the given data. func RipeMD160(data []byte) util.Uint160 { var hash util.Uint160 hasher := ripemd160.New() @@ -35,7 +35,7 @@ func RipeMD160(data []byte) util.Uint160 { } // Hash160 performs sha256 and then ripemd160 -// on the given data +// on the given data. func Hash160(data []byte) util.Uint160 { var hash util.Uint160 @@ -47,7 +47,7 @@ func Hash160(data []byte) util.Uint160 { } // Checksum returns the checksum for a given piece of data -// using sha256 twice as the hash algorithm +// using sha256 twice as the hash algorithm. func Checksum(data []byte) []byte { hash := DoubleSha256(data) return hash[:4] diff --git a/pkg/crypto/keys/publickey.go b/pkg/crypto/keys/publickey.go index b8f039de9..80af4d5ee 100644 --- a/pkg/crypto/keys/publickey.go +++ b/pkg/crypto/keys/publickey.go @@ -41,7 +41,7 @@ type PublicKey struct { Y *big.Int } -// NewPublicKeyFromString return a public key created from the +// NewPublicKeyFromString returns a public key created from the // given hex string. func NewPublicKeyFromString(s string) (*PublicKey, error) { b, err := hex.DecodeString(s) @@ -98,7 +98,7 @@ func NewPublicKeyFromASN1(data []byte) (*PublicKey, error) { return &key, nil } -// decodeCompressedY performs decompression of Y coordinate for given X and Y's least significant bit +// decodeCompressedY performs decompression of Y coordinate for given X and Y's least significant bit. func decodeCompressedY(x *big.Int, ylsb uint) (*big.Int, error) { c := elliptic.P256() cp := c.Params() @@ -210,7 +210,7 @@ func (p *PublicKey) Address() string { } // Verify returns true if the signature is valid and corresponds -// to the hash and public key +// to the hash and public key. func (p *PublicKey) Verify(signature []byte, hash []byte) bool { publicKey := &ecdsa.PublicKey{} diff --git a/pkg/crypto/keys/wif.go b/pkg/crypto/keys/wif.go index d0b6b7519..8972328cf 100644 --- a/pkg/crypto/keys/wif.go +++ b/pkg/crypto/keys/wif.go @@ -47,7 +47,7 @@ func WIFEncode(key []byte, version byte, compressed bool) (s string, err error) return } -// WIFDecode decoded the given WIF string into a WIF struct. +// WIFDecode decodes the given WIF string into a WIF struct. func WIFDecode(wif string, version byte) (*WIF, error) { b, err := crypto.Base58CheckDecode(wif) if err != nil { @@ -72,7 +72,7 @@ func WIFDecode(wif string, version byte) (*WIF, error) { S: wif, } - // This is an uncompressed WIF + // This is an uncompressed WIF. if len(b) == 33 { w.Compressed = false return w, nil diff --git a/pkg/crypto/merkle_tree.go b/pkg/crypto/merkle_tree.go index e47fe4ae0..192514620 100644 --- a/pkg/crypto/merkle_tree.go +++ b/pkg/crypto/merkle_tree.go @@ -37,7 +37,7 @@ func NewMerkleTree(hashes []util.Uint256) (*MerkleTree, error) { }, nil } -// Root return the computed root hash of the MerkleTree. +// Root returns the computed root hash of the MerkleTree. func (t *MerkleTree) Root() util.Uint256 { return t.root.hash } diff --git a/pkg/interop/block/block.go b/pkg/interop/block/block.go index 2f3bf6738..06191424a 100644 --- a/pkg/interop/block/block.go +++ b/pkg/interop/block/block.go @@ -8,7 +8,7 @@ import "github.com/CityOfZion/neo-go/pkg/interop/transaction" // Block stubs a NEO block type. type Block struct{} -// GetTransactionCount return the number of recorded transactions in the given block. +// GetTransactionCount returns the number of recorded transactions in the given block. func GetTransactionCount(b Block) int { return 0 } diff --git a/pkg/interop/enumerator/enumerator.go b/pkg/interop/enumerator/enumerator.go index 8da72424d..0d5531757 100644 --- a/pkg/interop/enumerator/enumerator.go +++ b/pkg/interop/enumerator/enumerator.go @@ -23,7 +23,7 @@ func Value(e Enumerator) interface{} { return nil } -// Concat concats the 2 given enumerators. +// Concat concatenates the 2 given enumerators. func Concat(a, b Enumerator) Enumerator { return Enumerator{} } diff --git a/pkg/interop/storage/storage.go b/pkg/interop/storage/storage.go index 2391fd550..96c36b0ab 100644 --- a/pkg/interop/storage/storage.go +++ b/pkg/interop/storage/storage.go @@ -5,19 +5,19 @@ import "github.com/CityOfZion/neo-go/pkg/interop/iterator" // Package storage provides function signatures that can be used inside // smart contracts that are written in the neo-go framework. -// Context represents the storage context +// Context represents the storage context. type Context struct{} -// GetContext returns the storage context +// GetContext returns the storage context. func GetContext() Context { return Context{} } -// Put value at given key +// Put value at given key. func Put(ctx Context, key interface{}, value interface{}) {} -// Get value matching given key +// Get value matching given key. func Get(ctx Context, key interface{}) interface{} { return 0 } -// Delete key value pair from storage +// Delete key value pair from storage. func Delete(ctx Context, key interface{}) {} // Find returns an iterator.Iterator over the keys that matched the given key. diff --git a/pkg/io/binaryReader.go b/pkg/io/binaryReader.go index 27845b21d..2a00e20c6 100644 --- a/pkg/io/binaryReader.go +++ b/pkg/io/binaryReader.go @@ -6,8 +6,8 @@ import ( "io" ) -//BinReader is a convenient wrapper around a io.Reader and err object -// Used to simplify error handling when reading into a struct with many fields +// BinReader is a convenient wrapper around a io.Reader and err object. +// Used to simplify error handling when reading into a struct with many fields. type BinReader struct { r io.Reader Err error @@ -25,7 +25,7 @@ func NewBinReaderFromBuf(b []byte) *BinReader { } // ReadLE reads from the underlying io.Reader -// into the interface v in little-endian format +// into the interface v in little-endian format. func (r *BinReader) ReadLE(v interface{}) { if r.Err != nil { return @@ -34,7 +34,7 @@ func (r *BinReader) ReadLE(v interface{}) { } // ReadBE reads from the underlying io.Reader -// into the interface v in big-endian format +// into the interface v in big-endian format. func (r *BinReader) ReadBE(v interface{}) { if r.Err != nil { return @@ -43,7 +43,7 @@ func (r *BinReader) ReadBE(v interface{}) { } // ReadVarUint reads a variable-length-encoded integer from the -// underlying reader +// underlying reader. func (r *BinReader) ReadVarUint() uint64 { if r.Err != nil { return 0 @@ -80,7 +80,7 @@ func (r *BinReader) ReadBytes() []byte { return b } -// ReadString calls ReadBytes and casts the results as a string +// ReadString calls ReadBytes and casts the results as a string. func (r *BinReader) ReadString() string { b := r.ReadBytes() return string(b) diff --git a/pkg/io/binaryWriter.go b/pkg/io/binaryWriter.go index b85cda48b..912cb3c51 100644 --- a/pkg/io/binaryWriter.go +++ b/pkg/io/binaryWriter.go @@ -5,9 +5,9 @@ import ( "io" ) -//BinWriter is a convenient wrapper around a io.Writer and err object +// BinWriter is a convenient wrapper around a io.Writer and err object. // Used to simplify error handling when writing into a io.Writer -// from a struct with many fields +// from a struct with many fields. type BinWriter struct { w io.Writer Err error @@ -18,7 +18,7 @@ func NewBinWriterFromIO(iow io.Writer) *BinWriter { return &BinWriter{w: iow} } -// WriteLE writes into the underlying io.Writer from an object v in little-endian format +// WriteLE writes into the underlying io.Writer from an object v in little-endian format. func (w *BinWriter) WriteLE(v interface{}) { if w.Err != nil { return @@ -26,7 +26,7 @@ func (w *BinWriter) WriteLE(v interface{}) { w.Err = binary.Write(w.w, binary.LittleEndian, v) } -// WriteBE writes into the underlying io.Writer from an object v in big-endian format +// WriteBE writes into the underlying io.Writer from an object v in big-endian format. func (w *BinWriter) WriteBE(v interface{}) { if w.Err != nil { return @@ -34,7 +34,7 @@ func (w *BinWriter) WriteBE(v interface{}) { w.Err = binary.Write(w.w, binary.BigEndian, v) } -// WriteVarUint writes a uint64 into the underlying writer using variable-length encoding +// WriteVarUint writes a uint64 into the underlying writer using variable-length encoding. func (w *BinWriter) WriteVarUint(val uint64) { if w.Err != nil { return @@ -61,13 +61,13 @@ func (w *BinWriter) WriteVarUint(val uint64) { } -// WriteBytes writes a variable length byte array into the underlying io.Writer +// WriteBytes writes a variable length byte array into the underlying io.Writer. func (w *BinWriter) WriteBytes(b []byte) { w.WriteVarUint(uint64(len(b))) w.WriteLE(b) } -// WriteString writes a variable length string into the underlying io.Writer +// WriteString writes a variable length string into the underlying io.Writer. func (w *BinWriter) WriteString(s string) { w.WriteBytes([]byte(s)) } diff --git a/pkg/io/size.go b/pkg/io/size.go index 14bda390c..93f7021f8 100644 --- a/pkg/io/size.go +++ b/pkg/io/size.go @@ -24,14 +24,14 @@ type counterWriter struct { counter int } -// Write implements the io.Writer interface +// Write implements the io.Writer interface. func (cw *counterWriter) Write(p []byte) (int, error) { n := len(p) cw.counter += n return n, nil } -// getVarIntSize returns the size in number of bytes of a variable integer +// getVarIntSize returns the size in number of bytes of a variable integer. // (reference: GetVarSize(int value), https://github.com/neo-project/neo/blob/master/neo/IO/Helper.cs) func getVarIntSize(value int) int { var size uintptr diff --git a/pkg/io/size_test.go b/pkg/io/size_test.go index dddce59ad..9b45b6311 100644 --- a/pkg/io/size_test.go +++ b/pkg/io/size_test.go @@ -8,7 +8,7 @@ import ( "github.com/stretchr/testify/assert" ) -// Mock structure to test getting size of an array of serializable things +// Mock structure to test getting size of an array of serializable things. type smthSerializable struct { some [42]byte } diff --git a/pkg/network/discovery.go b/pkg/network/discovery.go index 7d3415a6f..64547bbda 100644 --- a/pkg/network/discovery.go +++ b/pkg/network/discovery.go @@ -85,7 +85,7 @@ func (d *DefaultDiscovery) pushToPoolOrDrop(addr string) { } } -// RequestRemote will try to establish a connection with n nodes. +// RequestRemote tries to establish a connection with n nodes. func (d *DefaultDiscovery) RequestRemote(n int) { d.requestCh <- n } diff --git a/pkg/network/message.go b/pkg/network/message.go index b66aeaf78..8ea89ae4d 100644 --- a/pkg/network/message.go +++ b/pkg/network/message.go @@ -32,11 +32,11 @@ type Message struct { // the extra part is filled with 0. Command [cmdSize]byte - // Length of the payload + // Length of the payload. Length uint32 // Checksum is the first 4 bytes of the value that two times SHA256 - // hash of the payload + // hash of the payload. Checksum uint32 // Payload send with the message. @@ -146,7 +146,7 @@ func (m *Message) CommandType() CommandType { } } -// Decode a Message from the given reader. +// Decode decodes a Message from the given reader. func (m *Message) Decode(br *io.BinReader) error { br.ReadLE(&m.Magic) br.ReadLE(&m.Command) @@ -210,7 +210,7 @@ func (m *Message) decodePayload(br *io.BinReader) error { return nil } -// Encode a Message to any given BinWriter. +// Encode encodes a Message to any given BinWriter. func (m *Message) Encode(br *io.BinWriter) error { br.WriteLE(m.Magic) br.WriteLE(m.Command) diff --git a/pkg/network/payload/getblocks.go b/pkg/network/payload/getblocks.go index 0029cb26c..12255fcae 100644 --- a/pkg/network/payload/getblocks.go +++ b/pkg/network/payload/getblocks.go @@ -13,7 +13,7 @@ type GetBlocks struct { HashStop util.Uint256 } -// NewGetBlocks return a pointer to a GetBlocks object. +// NewGetBlocks returns a pointer to a GetBlocks object. func NewGetBlocks(start []util.Uint256, stop util.Uint256) *GetBlocks { return &GetBlocks{ HashStart: start, diff --git a/pkg/network/payload/headers.go b/pkg/network/payload/headers.go index c85ecab2e..6ee94c5eb 100644 --- a/pkg/network/payload/headers.go +++ b/pkg/network/payload/headers.go @@ -6,12 +6,12 @@ import ( log "github.com/sirupsen/logrus" ) -// Headers payload +// Headers payload. type Headers struct { Hdrs []*core.Header } -// Users can at most request 2k header +// Users can at most request 2k header. const ( maxHeadersAllowed = 2000 ) diff --git a/pkg/network/payload/inventory.go b/pkg/network/payload/inventory.go index 4ce9ca939..ccefe8527 100644 --- a/pkg/network/payload/inventory.go +++ b/pkg/network/payload/inventory.go @@ -37,7 +37,7 @@ const ( ConsensusType InventoryType = 0xe0 // 224 ) -// Inventory payload +// Inventory payload. type Inventory struct { // Type if the object hash. Type InventoryType diff --git a/pkg/network/payload/version.go b/pkg/network/payload/version.go index 1343298b2..ead40df01 100644 --- a/pkg/network/payload/version.go +++ b/pkg/network/payload/version.go @@ -7,10 +7,10 @@ import ( ) // Size of the payload not counting UserAgent encoding (which is at least 1 byte -// for zero-length string) +// for zero-length string). const minVersionSize = 27 -// List of Services offered by the node +// List of Services offered by the node. const ( nodePeerService uint64 = 1 // BloomFilerService uint64 = 2 // Not implemented diff --git a/pkg/network/relay_reason.go b/pkg/network/relay_reason.go index 2f624eb2a..3e7e095d1 100644 --- a/pkg/network/relay_reason.go +++ b/pkg/network/relay_reason.go @@ -1,6 +1,6 @@ package network -// RelayReason is the type which describes the different relay outcome +// RelayReason is the type which describes the different relay outcome. type RelayReason uint8 // List of valid RelayReason. diff --git a/pkg/network/server.go b/pkg/network/server.go index 7f04e9d9a..eec400c9a 100644 --- a/pkg/network/server.go +++ b/pkg/network/server.go @@ -16,7 +16,7 @@ import ( ) const ( - // peer numbers are arbitrary at the moment + // peer numbers are arbitrary at the moment. minPeers = 5 maxPeers = 20 maxBlockBatch = 200 @@ -255,8 +255,8 @@ func (s *Server) handleVersionCmd(p Peer, version *payload.Version) error { return p.SendVersionAck(NewMessage(s.Net, CMDVerack, nil)) } -// handleHeadersCmd will process the headers it received from its peer. -// if the headerHeight of the blockchain still smaller then the peer +// handleHeadersCmd processes the headers received from its peer. +// If the headerHeight of the blockchain still smaller then the peer // the server will request more headers. // This method could best be called in a separate routine. func (s *Server) handleHeadersCmd(p Peer, headers *payload.Headers) { @@ -277,7 +277,7 @@ func (s *Server) handleBlockCmd(p Peer, block *core.Block) error { return s.bQueue.putBlock(block) } -// handleInvCmd will process the received inventory. +// handleInvCmd processes the received inventory. func (s *Server) handleInvCmd(p Peer, inv *payload.Inventory) error { if !inv.Type.Valid() || len(inv.Hashes) == 0 { return errInvalidInvType @@ -310,7 +310,7 @@ func (s *Server) handleGetAddrCmd(p Peer) error { return p.WriteMsg(NewMessage(s.Net, CMDAddr, alist)) } -// requestHeaders will send a getheaders message to the peer. +// requestHeaders sends a getheaders message to the peer. // The peer will respond with headers op to a count of 2000. func (s *Server) requestHeaders(p Peer) error { start := []util.Uint256{s.chain.CurrentHeaderHash()} @@ -318,7 +318,7 @@ func (s *Server) requestHeaders(p Peer) error { return p.WriteMsg(NewMessage(s.Net, CMDGetHeaders, payload)) } -// requestBlocks will send a getdata message to the peer +// requestBlocks sends a getdata message to the peer // to sync up in blocks. A maximum of maxBlockBatch will // send at once. func (s *Server) requestBlocks(p Peer) error { @@ -341,7 +341,7 @@ func (s *Server) requestBlocks(p Peer) error { return nil } -// handleMessage will process the given message. +// handleMessage processes the given message. func (s *Server) handleMessage(peer Peer, msg *Message) error { // Make sure both server and peer are operating on // the same network. @@ -414,7 +414,7 @@ func (s *Server) RelayTxn(t *transaction.Transaction) RelayReason { return RelaySucceed } -// RelayDirectly relay directly the inventory to the remote peers. +// RelayDirectly relays directly the inventory to the remote peers. // Reference: the method OnRelayDirectly in C#: https://github.com/neo-project/neo/blob/master/neo/Network/P2P/LocalNode.cs#L166 func (s *Server) RelayDirectly(p Peer, inv *payload.Inventory) { if !p.Version().Relay { diff --git a/pkg/network/tcp_transport.go b/pkg/network/tcp_transport.go index b99c060dd..8dba0be40 100644 --- a/pkg/network/tcp_transport.go +++ b/pkg/network/tcp_transport.go @@ -18,7 +18,7 @@ type TCPTransport struct { var reClosedNetwork = regexp.MustCompile(".* use of closed network connection") -// NewTCPTransport return a new TCPTransport that will listen for +// NewTCPTransport returns a new TCPTransport that will listen for // new incoming peer connections. func NewTCPTransport(s *Server, bindAddr string) *TCPTransport { return &TCPTransport{ diff --git a/pkg/rpc/client.go b/pkg/rpc/client.go index ef76da4db..eae5d30ec 100644 --- a/pkg/rpc/client.go +++ b/pkg/rpc/client.go @@ -52,7 +52,7 @@ type ClientOptions struct { Version string } -// NewClient return a new Client ready to use. +// NewClient returns a new Client ready to use. func NewClient(ctx context.Context, endpoint string, opts ClientOptions) (*Client, error) { url, err := url.Parse(endpoint) if err != nil { diff --git a/pkg/rpc/neoScanTypes.go b/pkg/rpc/neoScanTypes.go index 0ac7f2441..58a8b9ce2 100644 --- a/pkg/rpc/neoScanTypes.go +++ b/pkg/rpc/neoScanTypes.go @@ -9,7 +9,7 @@ import "github.com/CityOfZion/neo-go/pkg/util" */ type ( - // NeoScanServer stores NEOSCAN URL and API path + // NeoScanServer stores NEOSCAN URL and API path. NeoScanServer struct { URL string // "protocol://host:port/" Path string // path to API endpoint without wallet address @@ -39,7 +39,7 @@ type ( } ) -// GlobalAssets stores a map of asset IDs to user-friendly strings ("NEO"/"GAS"); +// GlobalAssets stores a map of asset IDs to user-friendly strings ("NEO"/"GAS"). var GlobalAssets = map[string]string{ "c56f33fc6ecfcd0c225c4ab356fee59390af8560be0e930faebe74a6daff7c9b": "NEO", "602c79718b16e442de58778e148d0b1084e3b2dffd5de6b7b16cee7969282de7": "GAS", diff --git a/pkg/rpc/param.go b/pkg/rpc/param.go index bb3c93c37..d86b2ef2f 100644 --- a/pkg/rpc/param.go +++ b/pkg/rpc/param.go @@ -5,7 +5,7 @@ import ( ) type ( - // Param represent a param either passed to + // Param represents a param either passed to // the server or to send to a server using // the client. Param struct { diff --git a/pkg/rpc/params.go b/pkg/rpc/params.go index 21143896d..bef402f0a 100644 --- a/pkg/rpc/params.go +++ b/pkg/rpc/params.go @@ -5,7 +5,7 @@ import ( ) type ( - // Params represent the JSON-RPC params. + // Params represents the JSON-RPC params. Params []Param ) diff --git a/pkg/rpc/rpc.go b/pkg/rpc/rpc.go index fae42b549..fc5ba9c73 100644 --- a/pkg/rpc/rpc.go +++ b/pkg/rpc/rpc.go @@ -27,7 +27,7 @@ import ( // return resp, nil // } -// GetAccountState will return detailed information about a NEO account. +// GetAccountState returns detailed information about a NEO account. func (c *Client) GetAccountState(address string) (*AccountStateResponse, error) { var ( params = newParams(address) @@ -52,7 +52,7 @@ func (c *Client) InvokeScript(script string) (*InvokeScriptResponse, error) { return resp, nil } -// InvokeFunction return the results after calling a the smart contract scripthash +// InvokeFunction returns the results after calling the smart contract scripthash // with the given operation and parameters. // NOTE: this is test invoke and will not affect the blockchain. func (c *Client) InvokeFunction(script, operation string, params []smartcontract.Parameter) (*InvokeScriptResponse, error) { @@ -66,7 +66,7 @@ func (c *Client) InvokeFunction(script, operation string, params []smartcontract return resp, nil } -// Invoke returns the results after calling a the smart contract scripthash +// Invoke returns the results after calling the smart contract scripthash // with the given parameters. func (c *Client) Invoke(script string, params []smartcontract.Parameter) (*InvokeScriptResponse, error) { var ( diff --git a/pkg/rpc/server.go b/pkg/rpc/server.go index 9d5070e61..f3bf7d344 100644 --- a/pkg/rpc/server.go +++ b/pkg/rpc/server.go @@ -56,7 +56,7 @@ func (s *Server) Start(errChan chan error) { errChan <- s.ListenAndServe() } -// Shutdown override the http.Server Shutdown +// Shutdown overrides the http.Server Shutdown // method. func (s *Server) Shutdown() error { log.WithFields(log.Fields{ diff --git a/pkg/rpc/stack_param.go b/pkg/rpc/stack_param.go index 00072f2ce..343a64f9a 100644 --- a/pkg/rpc/stack_param.go +++ b/pkg/rpc/stack_param.go @@ -13,7 +13,7 @@ import ( // StackParamType represents different types of stack values. type StackParamType int -// All possible StackParamType values are listed here +// All possible StackParamType values are listed here. const ( Unknown StackParamType = -1 Signature StackParamType = 0x00 @@ -114,7 +114,7 @@ type rawStackParam struct { Value json.RawMessage `json:"value"` } -// UnmarshalJSON implements Unmarshaler interface +// UnmarshalJSON implements Unmarshaler interface. func (p *StackParam) UnmarshalJSON(data []byte) (err error) { var ( r rawStackParam @@ -179,7 +179,7 @@ func (p *StackParam) UnmarshalJSON(data []byte) (err error) { return } -// StackParams in an array of StackParam (TODO: drop it?). +// StackParams is an array of StackParam (TODO: drop it?). type StackParams []StackParam // TryParseArray converts an array of StackParam into an array of more appropriate things. diff --git a/pkg/rpc/types.go b/pkg/rpc/types.go index 28e6a8d3d..f87f712f8 100644 --- a/pkg/rpc/types.go +++ b/pkg/rpc/types.go @@ -81,7 +81,7 @@ type SendToAddressResponse struct { Result *TxResponse } -// GetRawTxResponse struct represents verbose output of `getrawtransaction` RPC call. +// GetRawTxResponse represents verbose output of `getrawtransaction` RPC call. type GetRawTxResponse struct { responseHeader Error *Error `json:"error"` diff --git a/pkg/rpc/wrappers/account_state.go b/pkg/rpc/wrappers/account_state.go index 6fa50d85c..948c852b0 100644 --- a/pkg/rpc/wrappers/account_state.go +++ b/pkg/rpc/wrappers/account_state.go @@ -19,14 +19,14 @@ type AccountState struct { Balances []Balance `json:"balances"` } -// Balances type for sorting balances in rpc response +// Balances type for sorting balances in rpc response. type Balances []Balance func (b Balances) Len() int { return len(b) } func (b Balances) Less(i, j int) bool { return bytes.Compare(b[i].Asset[:], b[j].Asset[:]) != -1 } func (b Balances) Swap(i, j int) { b[i], b[j] = b[j], b[i] } -// Balance response wrapper +// Balance response wrapper. type Balance struct { Asset util.Uint256 `json:"asset"` Value util.Fixed8 `json:"value"` diff --git a/pkg/smartcontract/contract.go b/pkg/smartcontract/contract.go index 095f9f8e9..e51e356cb 100644 --- a/pkg/smartcontract/contract.go +++ b/pkg/smartcontract/contract.go @@ -24,7 +24,7 @@ func CreateSignatureRedeemScript(key *keys.PublicKey) ([]byte, error) { return buf.Bytes(), nil } -// CreateMultiSigRedeemScript will create a script runnable by the VM. +// CreateMultiSigRedeemScript creates a script runnable by the VM. func CreateMultiSigRedeemScript(m int, publicKeys keys.PublicKeys) ([]byte, error) { if m <= 1 { return nil, fmt.Errorf("param m cannot be smaller or equal to 1 got %d", m) diff --git a/pkg/smartcontract/param_context.go b/pkg/smartcontract/param_context.go index e5ad6142b..8f585f86b 100644 --- a/pkg/smartcontract/param_context.go +++ b/pkg/smartcontract/param_context.go @@ -2,7 +2,7 @@ package smartcontract import "github.com/CityOfZion/neo-go/pkg/util" -// ParamType represent the Type of the contract parameter +// ParamType represents the Type of the contract parameter. type ParamType byte // A list of supported smart contract parameter types. @@ -31,7 +31,7 @@ const ( // Parameter represents a smart contract parameter. type Parameter struct { - // Type of the parameter + // Type of the parameter. Type ParamType `json:"type"` // The actual value of the parameter. Value interface{} `json:"value"` diff --git a/pkg/util/array.go b/pkg/util/array.go index 09f1783b1..83627fa5e 100644 --- a/pkg/util/array.go +++ b/pkg/util/array.go @@ -1,6 +1,6 @@ package util -// ArrayReverse return a reversed version of the given byte slice. +// ArrayReverse returns a reversed version of the given byte slice. func ArrayReverse(b []byte) []byte { // Protect from big.Ints that have 1 len bytes. if len(b) < 2 { diff --git a/pkg/util/uint160.go b/pkg/util/uint160.go index f2cd6535f..0a7f35a6c 100644 --- a/pkg/util/uint160.go +++ b/pkg/util/uint160.go @@ -39,7 +39,7 @@ func (u Uint160) Bytes() []byte { return u[:] } -// BytesReverse return a reversed byte representation of u. +// BytesReverse returns a reversed byte representation of u. func (u Uint160) BytesReverse() []byte { return ArrayReverse(u.Bytes()) } @@ -49,7 +49,7 @@ func (u Uint160) String() string { return hex.EncodeToString(u.Bytes()) } -// ReverseString is the same as String, but returnes an inversed representation. +// ReverseString is the same as String, but returns a reversed representation. func (u Uint160) ReverseString() string { return hex.EncodeToString(u.BytesReverse()) } diff --git a/pkg/util/uint160_test.go b/pkg/util/uint160_test.go index 06db92ea3..20a4ff541 100644 --- a/pkg/util/uint160_test.go +++ b/pkg/util/uint160_test.go @@ -14,7 +14,7 @@ func TestUint160UnmarshalJSON(t *testing.T) { t.Fatal(err) } - // UnmarshalJSON should decode hex-strings + // UnmarshalJSON decodes hex-strings var u1, u2 Uint160 if err = u1.UnmarshalJSON([]byte(`"` + str + `"`)); err != nil { @@ -27,7 +27,7 @@ func TestUint160UnmarshalJSON(t *testing.T) { t.Fatal(err) } - // UnmarshalJSON should decode hex-strings prefixed by 0x + // UnmarshalJSON decodes hex-strings prefixed by 0x if err = u2.UnmarshalJSON(s); err != nil { t.Fatal(err) } diff --git a/pkg/util/uint256_test.go b/pkg/util/uint256_test.go index fcd23e479..59fff1838 100644 --- a/pkg/util/uint256_test.go +++ b/pkg/util/uint256_test.go @@ -14,7 +14,7 @@ func TestUint256UnmarshalJSON(t *testing.T) { t.Fatal(err) } - // UnmarshalJSON should decode hex-strings + // UnmarshalJSON decodes hex-strings var u1, u2 Uint256 if err = u1.UnmarshalJSON([]byte(`"` + str + `"`)); err != nil { @@ -27,7 +27,7 @@ func TestUint256UnmarshalJSON(t *testing.T) { t.Fatal(err) } - // UnmarshalJSON should decode hex-strings prefixed by 0x + // UnmarshalJSON decodes hex-strings prefixed by 0x if err = u2.UnmarshalJSON(s); err != nil { t.Fatal(err) } diff --git a/pkg/vm/compiler/analysis.go b/pkg/vm/compiler/analysis.go index 1888946de..2824938bf 100644 --- a/pkg/vm/compiler/analysis.go +++ b/pkg/vm/compiler/analysis.go @@ -107,7 +107,7 @@ func resolveEntryPoint(entry string, pkg *loader.PackageInfo) (*ast.FuncDecl, *a return main, file } -// indexOfStruct will return the index of the given field inside that struct. +// indexOfStruct returns the index of the given field inside that struct. // If the struct does not contain that field it will return -1. func indexOfStruct(strct *types.Struct, fldName string) int { for i := 0; i < strct.NumFields(); i++ { @@ -125,7 +125,7 @@ func (f funcUsage) funcUsed(name string) bool { return ok } -// hasReturnStmt look if the given FuncDecl has a return statement. +// hasReturnStmt looks if the given FuncDecl has a return statement. func hasReturnStmt(decl ast.Node) (b bool) { ast.Inspect(decl, func(node ast.Node) bool { if _, ok := node.(*ast.ReturnStmt); ok { diff --git a/pkg/vm/compiler/codegen.go b/pkg/vm/compiler/codegen.go index 7fe9f3db7..f54d0f844 100644 --- a/pkg/vm/compiler/codegen.go +++ b/pkg/vm/compiler/codegen.go @@ -23,10 +23,10 @@ type codegen struct { // Information about the program with all its dependencies. buildInfo *buildInfo - // prog holds the output buffer + // prog holds the output buffer. prog *bytes.Buffer - // Type information + // Type information. typeInfo *types.Info // A mapping of func identifiers with their scope. @@ -50,7 +50,7 @@ func (c *codegen) setLabel(l int) { c.l[l] = c.pc() + 1 } -// pc return the program offset off the last instruction. +// pc returns the program offset off the last instruction. func (c *codegen) pc() int { return c.prog.Len() - 1 } @@ -73,10 +73,10 @@ func (c *codegen) emitLoadConst(t types.TypeAndValue) { b := byte(val) emitBytes(c.prog, []byte{b}) default: - log.Fatalf("compiler don't know how to convert this basic type: %v", t) + log.Fatalf("compiler doesn't know how to convert this basic type: %v", t) } default: - log.Fatalf("compiler don't know how to convert this constant: %v", t) + log.Fatalf("compiler doesn't know how to convert this constant: %v", t) } } @@ -118,7 +118,7 @@ func (c *codegen) emitStoreStructField(i int) { emitOpcode(c.prog, vm.SETITEM) } -// convertGlobals will traverse the AST and only convert global declarations. +// convertGlobals traverses the AST and only converts global declarations. // If we call this in convertFuncDecl then it will load all global variables // into the scope of the function. func (c *codegen) convertGlobals(f ast.Node) { @@ -331,7 +331,7 @@ func (c *codegen) Visit(node ast.Node) ast.Visitor { typ = c.typeInfo.ObjectOf(t.Sel).Type().Underlying() default: ln := len(n.Elts) - // ByteArrays need a different approach then normal arrays. + // ByteArrays needs a different approach than normal arrays. if isByteArray(n, c.typeInfo) { c.convertByteArray(n) return nil @@ -760,7 +760,7 @@ func (c *codegen) newFunc(decl *ast.FuncDecl) *funcScope { return f } -// CodeGen is the function that compiles the program to bytecode. +// CodeGen compiles the program to bytecode. func CodeGen(info *buildInfo) (*bytes.Buffer, error) { pkg := info.program.Package(info.initialPackage) c := &codegen{ @@ -771,32 +771,32 @@ func CodeGen(info *buildInfo) (*bytes.Buffer, error) { typeInfo: &pkg.Info, } - // Resolve the entrypoint of the program + // Resolve the entrypoint of the program. main, mainFile := resolveEntryPoint(mainIdent, pkg) if main == nil { - log.Fatal("could not find func main. did you forgot to declare it?") + log.Fatal("could not find func main. Did you forget to declare it?") } funUsage := analyzeFuncUsage(info.program.AllPackages) - // Bring all imported functions into scope + // Bring all imported functions into scope. for _, pkg := range info.program.AllPackages { for _, f := range pkg.Files { c.resolveFuncDecls(f) } } - // convert the entry point first + // convert the entry point first. c.convertFuncDecl(mainFile, main) - // sort map keys to generate code deterministically + // sort map keys to generate code deterministically. keys := make([]*types.Package, 0, len(info.program.AllPackages)) for p := range info.program.AllPackages { keys = append(keys, p) } sort.Slice(keys, func(i, j int) bool { return keys[i].Path() < keys[j].Path() }) - // Generate the code for the program + // Generate the code for the program. for _, k := range keys { pkg := info.program.AllPackages[k] c.typeInfo = &pkg.Info @@ -805,7 +805,7 @@ func CodeGen(info *buildInfo) (*bytes.Buffer, error) { for _, decl := range f.Decls { switch n := decl.(type) { case *ast.FuncDecl: - // Dont convert the function if its not used. This will save a lot + // Don't convert the function if it's not used. This will save a lot // of bytecode space. if n.Name.Name != mainIdent && funUsage.funcUsed(n.Name.Name) { c.convertFuncDecl(f, n) diff --git a/pkg/vm/compiler/compiler.go b/pkg/vm/compiler/compiler.go index a0ace6ce8..7a264650f 100644 --- a/pkg/vm/compiler/compiler.go +++ b/pkg/vm/compiler/compiler.go @@ -28,7 +28,7 @@ type Options struct { // The name of the output file. Outfile string - // Debug will output an hex encoded string of the generated bytecode. + // Debug outputs a hex encoded string of the generated bytecode. Debug bool } diff --git a/pkg/vm/compiler/func_scope.go b/pkg/vm/compiler/func_scope.go index a71fcda07..f88903861 100644 --- a/pkg/vm/compiler/func_scope.go +++ b/pkg/vm/compiler/func_scope.go @@ -7,7 +7,7 @@ import ( // A funcScope represents the scope within the function context. // It holds al the local variables along with the initialized struct positions. type funcScope struct { - // identifier of the function. + // Identifier of the function. name string // Selector of the function if there is any. Only functions imported @@ -31,7 +31,7 @@ type funcScope struct { // return value to the stack size. voidCalls map[*ast.CallExpr]bool - // local variable counter + // Local variable counter. i int } @@ -46,7 +46,7 @@ func newFuncScope(decl *ast.FuncDecl, label int) *funcScope { } } -// analyzeVoidCalls will check for functions that are not assigned +// analyzeVoidCalls checks for functions that are not assigned // and therefore we need to cleanup the return value from the stack. func (c *funcScope) analyzeVoidCalls(node ast.Node) bool { switch n := node.(type) { diff --git a/pkg/vm/context.go b/pkg/vm/context.go index 67dc7f1fb..9bb33c992 100644 --- a/pkg/vm/context.go +++ b/pkg/vm/context.go @@ -6,7 +6,7 @@ import ( "github.com/CityOfZion/neo-go/pkg/io" ) -// Context represent the current execution context of the VM. +// Context represents the current execution context of the VM. type Context struct { // Instruction pointer. ip int @@ -17,11 +17,11 @@ type Context struct { // The raw program script. prog []byte - // Breakpoints + // Breakpoints. breakPoints []int } -// NewContext return a new Context object. +// NewContext returns a new Context object. func NewContext(b []byte) *Context { return &Context{ prog: b, diff --git a/pkg/vm/interop.go b/pkg/vm/interop.go index 5ca9d7884..e2288b793 100644 --- a/pkg/vm/interop.go +++ b/pkg/vm/interop.go @@ -7,14 +7,14 @@ import ( // InteropFunc allows to hook into the VM. type InteropFunc func(vm *VM) error -// runtimeLog will handle the syscall "Neo.Runtime.Log" for printing and logging stuff. +// runtimeLog handles the syscall "Neo.Runtime.Log" for printing and logging stuff. func runtimeLog(vm *VM) error { item := vm.Estack().Pop() fmt.Printf("NEO-GO-VM (log) > %s\n", item.Value()) return nil } -// runtimeNotify will handle the syscall "Neo.Runtime.Notify" for printing and logging stuff. +// runtimeNotify handles the syscall "Neo.Runtime.Notify" for printing and logging stuff. func runtimeNotify(vm *VM) error { item := vm.Estack().Pop() fmt.Printf("NEO-GO-VM (notify) > %s\n", item.Value()) diff --git a/pkg/vm/stack.go b/pkg/vm/stack.go index 5dd5b2dd1..f295d1e59 100644 --- a/pkg/vm/stack.go +++ b/pkg/vm/stack.go @@ -164,19 +164,19 @@ func NewStack(n string) *Stack { return s } -// Clear will clear all elements on the stack and set its length to 0. +// Clear clears all elements on the stack and set its length to 0. func (s *Stack) Clear() { s.top.next = &s.top s.top.prev = &s.top s.len = 0 } -// Len return the number of elements that are on the stack. +// Len returns the number of elements that are on the stack. func (s *Stack) Len() int { return s.len } -// insert will insert the element after element (at) on the stack. +// insert inserts the element after element (at) on the stack. func (s *Stack) insert(e, at *Element) *Element { // If we insert an element that is already popped from this stack, // we need to clean it up, there are still pointers referencing to it. @@ -194,7 +194,7 @@ func (s *Stack) insert(e, at *Element) *Element { return e } -// InsertAt will insert the given item (n) deep on the stack. +// InsertAt inserts the given item (n) deep on the stack. // Be very careful using it and _always_ check both e and n before invocation // as it will silently do wrong things otherwise. func (s *Stack) InsertAt(e *Element, n int) *Element { @@ -210,7 +210,7 @@ func (s *Stack) Push(e *Element) { s.insert(e, &s.top) } -// PushVal will push the given value on the stack. It will infer the +// PushVal pushes the given value on the stack. It will infer the // underlying StackItem to its corresponding type. func (s *Stack) PushVal(v interface{}) { s.Push(NewElement(v)) @@ -273,7 +273,7 @@ func (s *Stack) Remove(e *Element) *Element { return e } -// Dup will duplicate and return the element at position n. +// Dup duplicates and returns the element at position n. // Dup is used for copying elements on to the top of its own stack. // s.Push(s.Peek(0)) // will result in unexpected behaviour. // s.Push(s.Dup(0)) // is the correct approach. @@ -288,7 +288,7 @@ func (s *Stack) Dup(n int) *Element { } } -// Iter will iterate over all the elements int the stack, starting from the top +// Iter iterates over all the elements int the stack, starting from the top // of the stack. // s.Iter(func(elem *Element) { // // do something with the element. diff --git a/pkg/vm/state.go b/pkg/vm/state.go index 5f2a549d2..e90dad708 100644 --- a/pkg/vm/state.go +++ b/pkg/vm/state.go @@ -17,7 +17,7 @@ const ( breakState ) -// HasFlag check for State flag presence. +// HasFlag checks for State flag presence. func (s State) HasFlag(f State) bool { return s&f != 0 } @@ -63,12 +63,12 @@ func StateFromString(s string) (st State, err error) { return } -// MarshalJSON implements the json.Marshaler interface +// MarshalJSON implements the json.Marshaler interface. func (s State) MarshalJSON() (data []byte, err error) { return []byte(`"` + s.String() + `"`), nil } -// UnmarshalJSON implements the json.Marshaler interface +// UnmarshalJSON implements the json.Marshaler interface. func (s *State) UnmarshalJSON(data []byte) (err error) { l := len(data) if l < 2 || data[0] != '"' || data[l-1] != '"' { diff --git a/pkg/wallet/account.go b/pkg/wallet/account.go index 36362e431..3a7b63e94 100644 --- a/pkg/wallet/account.go +++ b/pkg/wallet/account.go @@ -26,7 +26,7 @@ type Account struct { // Label is a label the user had made for this account. Label string `json:"label"` - // contract is a Contract object which describes the details of the contract. + // Contract is a Contract object which describes the details of the contract. // This field can be null (for watch-only address). Contract *Contract `json:"contract"` @@ -60,7 +60,7 @@ func NewAccount() (*Account, error) { return newAccountFromPrivateKey(priv), nil } -// DecryptAccount decrypt the encryptedWIF with the given passphrase and +// DecryptAccount decrypts the encryptedWIF with the given passphrase and // return the decrypted Account. func DecryptAccount(encryptedWIF, passphrase string) (*Account, error) { wif, err := keys.NEP2Decrypt(encryptedWIF, passphrase) @@ -90,7 +90,7 @@ func NewAccountFromWIF(wif string) (*Account, error) { return newAccountFromPrivateKey(privKey), nil } -// newAccountFromPrivateKey created a wallet from the given PrivateKey. +// newAccountFromPrivateKey creates a wallet from the given PrivateKey. func newAccountFromPrivateKey(p *keys.PrivateKey) *Account { pubKey := p.PublicKey() pubAddr := p.Address()