Source code for rsqueakvm.error


# Some exception classes for the Smalltalk VM

[docs]class SmalltalkException(Exception): """Base class for Smalltalk exception hierarchy""" exception_type = "SmalltalkException" _attrs_ = ["msg"] def __init__(self, msg="<no message>"): self.msg = msg
[docs]class PrimitiveFailedError(SmalltalkException): exception_type = "PrimitiveFailedError" def __init__(self, msg="", name=None): self.msg = msg self.name = name
[docs]class SimulatedPrimitiveFailedError(PrimitiveFailedError): exception_type = "SimulatedPrimitiveFailedError" def __init__(self, msg, w_name, s_class): self.msg = msg self.w_name = w_name self.s_class = s_class
[docs]class PrimitiveNotYetWrittenError(PrimitiveFailedError): exception_type = "PrimitiveNotYetWrittenError"
[docs]class UnwrappingError(PrimitiveFailedError): exception_type = "UnwrappingError"
[docs]class WrappingError(PrimitiveFailedError): exception_type = "WrappingError"
[docs]class WrapperException(PrimitiveFailedError): exception_type = "WrapperException"
[docs]class FatalError(SmalltalkException): exception_type = "FatalError"
[docs]class BlockCannotReturnError(SmalltalkException): exception_type = "BlockCannotReturnError"
[docs]class MissingBytecode(SmalltalkException): """Bytecode not implemented yet.""" exception_type = "MissingBytecode" def __init__(self, bytecodename): SmalltalkException.__init__( self, "Missing bytecode encountered: %s" % bytecodename)
[docs]class Exit(Exception): _attrs_ = ["msg"] def __init__(self, msg): self.msg = msg
[docs]class CorruptImageError(Exit): pass
[docs]class CleanExit(Exit): def __init__(self, msg=""): Exit.__init__(self, msg)