hevm-0.16: Ethereum virtual machine evaluator

Safe HaskellNone
LanguageHaskell2010

EVM.Emacs

Synopsis

Documentation

type Pred a = a -> Bool Source #

data StepMode Source #

Constructors

StepOne

Finish after one opcode step

StepMany !Int

Run a specific number of steps

StepNone

Finish before the next opcode

StepUntil (Pred VM)

Finish when a VM predicate holds

data StepOutcome a Source #

Constructors

Returned a

Program finished

Stepped (Stepper a)

Took one step; more steps to go

Blocked (IO (Stepper a))

Came across blocking request

txt :: Show a => a -> Text Source #

output :: SDisplay a => a -> Console () Source #

main :: IO () Source #

parseStepMode :: UiVmState -> Text -> Maybe StepMode Source #

Specifies whether to do I/O blocking or VM halting while stepping. When we step backwards, we don't want to allow those things.

data StepPolicy Source #

Constructors

StepNormally

Allow blocking and returning

StepTimidly

Forbid blocking and returning