Source code for mythril.laser.ethereum.evm_exceptions

"""This module contains EVM exception types used by LASER."""


[docs]class VmException(Exception): """The base VM exception type.""" pass
[docs]class StackUnderflowException(IndexError, VmException): """A VM exception regarding stack underflows.""" pass
[docs]class StackOverflowException(VmException): """A VM exception regarding stack overflows.""" pass
[docs]class InvalidJumpDestination(VmException): """A VM exception regarding JUMPs to invalid destinations.""" pass
[docs]class InvalidInstruction(VmException): """A VM exception denoting an invalid op code has been encountered.""" pass
[docs]class OutOfGasException(VmException): """A VM exception denoting the current execution has run out of gas.""" pass
[docs]class WriteProtection(VmException): """A VM exception denoting that a write operation is executed on a write protected environment""" pass