Skip to content

Instantly share code, notes, and snippets.

@tzaffi
Last active December 8, 2021 02:35
Show Gist options
  • Save tzaffi/a31fb1ab2c6498766212a9de0c5e2754 to your computer and use it in GitHub Desktop.
Save tzaffi/a31fb1ab2c6498766212a9de0c5e2754 to your computer and use it in GitHub Desktop.
Pull Request Template for OpCodes

opcode TODO List

  • Add op???() to eval.go
  • Add unit tests to eval_test.go
  • In the case of non-integer Immediate arguments:
    • Added assembleBase??? in assembler.go
    • Added dis??? in assembler.go
    • Pass the stateful test data/transactions/logic/evalStateful_test.go by providing a special TEAL sequence in the specialCmd map
    • Add enum to fields.go and modified go:generate comment
    • Ran go generate inside of data/transactions/logic to modify fields_string.go
  • Hook the op function into OpSpecs in opcodes.go
    • Set to the correct version (6 in this case)
    • Set the cost (?? in this case)
    • In the case of non-integer immediate arguments hook to your assembleXYZ and disXYZ functions
  • Added to the nonsense test for this version in assembler_test.go (line ???)
  • [It Depends] Added ???_test.py end to end script under test/scripts/e2e/
  • Documented in doc.go
    • modified appropriate OpGroups properties
    • (In the case of immediate args) added to opcodeImmediateNotes
    • (Optional) added to opDocExtras
    • Ran make inside data/transactions/logic to generate README.md and TEAL_opcodes.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment