dcrd/txscript
Dave Collins 318d81bc90
multi: Wrap errors for better errors.Is/As support.
This updates all remaining cases of unwrapped errors in fmt.Errorf calls
to wrap the underlying errors with the %w format verb to ensure they
work nicely with errors.Is and errors.As.
2023-08-25 16:31:11 -05:00
..
sign multi: Wrap errors for better errors.Is/As support. 2023-08-25 16:31:11 -05:00
stdaddr multi: Remove a bunch of dup words in comments. 2023-08-23 14:13:51 -05:00
stdscript build: Add dupword linter. 2023-08-25 12:35:55 -05:00
testdata build: Add CI support for test and module cache. 2023-06-19 14:18:30 -05:00
bench_test.go build: Add CI support for test and module cache. 2023-06-19 14:18:30 -05:00
consensus_test.go txscript: Add versioned short form parsing. 2021-10-14 16:13:28 -05:00
consensus.go txscript: Prepare v4.0.0. 2021-11-18 23:14:01 -06:00
doc.go multi: Remove a bunch of dup words in comments. 2023-08-23 14:13:51 -05:00
engine_test.go build: Add dupword linter. 2023-08-25 12:35:55 -05:00
engine.go build: Add dupword linter. 2023-08-25 12:35:55 -05:00
error_test.go txscript: Prepare v4.0.0. 2021-11-18 23:14:01 -06:00
error.go multi: Go 1.19 doc comment formatting. 2022-07-30 04:08:58 -05:00
example_test.go txscript: Remove unused ExtractPkScriptAddrs. 2021-11-18 12:55:23 -06:00
go.mod txscript: Prepare v4.1.0. 2023-06-08 10:59:58 -05:00
go.sum txscript: Prepare v4.1.0. 2023-06-08 10:59:58 -05: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: Remove a bunch of dup words in comments. 2023-08-23 14:13:51 -05:00
README.md txscript: Remove unused ExtractPkScriptAddrs. 2021-11-18 12:55:23 -06:00
reference_test.go build: Add CI support for test and module cache. 2023-06-19 14:18:30 -05:00
script_test.go multi: Avoid range capture for Go 1.22 changes. 2023-07-31 11:36:52 -05:00
script.go txscript: Prepare v4.0.0. 2021-11-18 23:14:01 -06:00
scriptbuilder_test.go txscript: Prepare v4.0.0. 2021-11-18 23:14:01 -06:00
scriptbuilder.go multi: Go 1.19 doc comment formatting. 2022-07-30 04:08:58 -05:00
scriptnum_test.go txscript: Prepare v4.1.0. 2023-06-08 10:59:58 -05:00
scriptnum.go txscript: remove obsolete requireMinimal comment 2022-09-29 11:18:51 -05:00
scriptshortform_test.go txscript: Add versioned short form parsing. 2021-10-14 16:13:28 -05:00
sigcache_test.go build: Add CI support for test and module cache. 2023-06-19 14:18:30 -05: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
tokenizer_test.go txscript: Add versioned short form parsing. 2021-10-14 16:13:28 -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

  • Counting Opcodes in Scripts Demonstrates creating a script tokenizer instance and using it to count the number of opcodes a script contains.

License

Package txscript is licensed under the copyfree ISC License.