NAME ^

src/pmc/exceptionhandler.pmc - Exception Handler PMC

DESCRIPTION ^

When an exception handler is called, the exception object is passed as REG_PMC(interp, 5), the original contents of this register is in the exception object's _P5 attribute.

Methods ^

void init()

Initializes the exception handler.

void mark()

Mark any active exception handler data as live.

void set_integer_native(INTVAL)

Mark whether the handler has been invoked.

INTVAL get_integer()

Check whether the handler has been invoked.

opcode_t *invoke(void *next)

Set up the environment for the exception handler to be invoked.

Methods ^

METHOD can_handle(PMC *exception)

Report whether the exception handler can handle a particular type of exception.

METHOD min_severity(INTVAL severity :optional, INTVAL have_severity :opt_flag)

Set or get the minimum severity of the exception handler.

METHOD max_severity(INTVAL severity :optional, INTVAL have_severity :opt_flag)

Set or get the maximum severity of the exception handler.

METHOD handle_types(PMC *types :slurpy)

Set the exception types that the ExceptionHandler will handle.


parrot