dcrd/txscript
Dave Collins fe45e796ca
txscript: Move stake votebits script to consensus.
This moves the GenerateSSGenVotes method to script.go since it is used
in consensus code and therefore should not be in standard.go which is
only intended for standardness code.

It also moves the associated test to script_test.go to match and does
some other misc cleanup such as improving the comments and tests for
consistency.
2021-06-15 13:01:23 -05:00
..
data txscript: Proactively evict SigCache entries. 2020-09-24 12:19:59 -05:00
sign txscript: Split signing code to sign subpackage. 2021-05-07 13:19:00 -05:00
stdaddr stdaddr: Replace Address method with String 2021-04-15 16:51:33 -05:00
bench_test.go txscript: Split signing code to sign subpackage. 2021-05-07 13:19:00 -05:00
consensus_test.go txscript: Rework check pubkey encoding test. 2020-07-08 22:23:14 -05:00
consensus.go multi: Start dcrec/secp256k1 v4 module dev cycle. 2020-12-16 16:30:24 -06:00
doc.go txscript: Add support for errors.Is/As. 2020-05-26 21:50:17 -05:00
engine_test.go txscript: Export several useful funcs for treasury. 2020-07-07 12:52:27 -05:00
engine.go multi: Add decentralized treasury support. 2020-09-21 12:15:31 -05:00
error_test.go txscript: Remove unused ErrUnsupportedAddress. 2021-04-12 01:38:19 -05:00
error.go txscript: Remove unused ErrUnsupportedAddress. 2021-04-12 01:38:19 -05:00
example_test.go txscript: Split signing code to sign subpackage. 2021-05-07 13:19:00 -05:00
go.mod txscript: Break dcrutil dependency. 2021-04-12 11:21:01 -05:00
go.sum multi: Update to siphash v1.2.2. 2021-01-30 18:32:35 -06:00
log.go txscript: Optimize trace logging. 2020-07-28 16:48:20 -05:00
opcode_test.go multi: Add decentralized treasury support. 2020-09-21 12:15:31 -05:00
opcode.go multi: Start dcrec/secp256k1 v4 module dev cycle. 2020-12-16 16:30:24 -06:00
README.md txscript: Split signing code to sign subpackage. 2021-05-07 13:19:00 -05:00
reference_test.go txscript: Break dcrutil dependency. 2021-04-12 11:21:01 -05:00
script_test.go txscript: Move stake votebits script to consensus. 2021-06-15 13:01:23 -05:00
script.go txscript: Move stake votebits script to consensus. 2021-06-15 13:01:23 -05:00
scriptbuilder_test.go txscript: Rename script bldr add data to unchecked. 2021-03-12 17:33:14 -06:00
scriptbuilder.go txscript: Add script bldr unchecked op add. 2021-03-12 17:33:15 -06:00
scriptnum_test.go txscript: Rename script bldr add data to unchecked. 2021-03-12 17:33:14 -06:00
scriptnum.go txscript: Export CsvMaxScriptNumLen. 2020-07-08 19:59:53 -05:00
sigcache_test.go multi: Start dcrec/secp256k1 v4 module dev cycle. 2020-12-16 16:30:24 -06:00
sigcache.go multi: Start dcrec/secp256k1 v4 module dev cycle. 2020-12-16 16:30:24 -06:00
sighash_test.go txscript: Decouple and optimize sighash calc. 2018-05-01 08:51:41 -05:00
sighash.go multi: Correct typos. 2019-08-16 17:37:58 -05:00
stack_test.go txscript: Optimize alt stack drop. 2020-07-28 16:44:34 -05:00
stack.go txscript: Optimize alt stack drop. 2020-07-28 16:44:34 -05:00
standard_test.go txscript: Move stake votebits script to consensus. 2021-06-15 13:01:23 -05:00
standard.go txscript: Move stake votebits script to consensus. 2021-06-15 13:01:23 -05:00
tokenizer_test.go txscript: Add support for errors.Is/As. 2020-05-26 21:50:17 -05:00
tokenizer.go multi: remove whitespace 2019-11-21 18:31:30 -06:00

txscript

Build Status ISC License Doc

Package txscript implements the Decred transaction script language. There is a comprehensive test suite.

This package has intentionally been designed so it can be used as a standalone package for any projects needing to use or validate Decred transaction scripts.

Decred Scripts

Decred provides a stack-based, FORTH-like language for the scripts in the Decred transactions. This language is not Turing complete although it is still fairly powerful.

Installation and Updating

This package is part of the github.com/decred/dcrd/txscript/v3 module. Use the standard go tooling for working with modules to incorporate it.

Examples

License

Package txscript is licensed under the copyfree ISC License.