BlitzMax Extended  0.8.19
Pushing Blitz to the Max.
Data Fields
BBException Struct Reference

Base for all exceptions. More...

#include <blitz_exception.h>

+ Inheritance diagram for BBException:

Data Fields

BBClassclas
 The exception's clas.
int refs
 The number of times an instance is currently used.
BBExceptioncause
 The cause of the exception.
- Data Fields inherited from BBObject

Additional Inherited Members

- Protected Attributes inherited from BBObject

Detailed Description

Base for all exceptions.

Although any object can be thrown as an exception, extending this base exception gives you the advantage of a common interface as well as the possiblity to trace back a chain of exceptions that caused each other.


Field Documentation

BBException* BBException::cause

The cause of the exception.

The cause is a previous exception that caused this one to be thrown. If there is no such exception, this must be BBNULL.

See also:
bbExceptionGetCause, bbExceptionInitCause

Reimplemented in BBBlitzException, BBNullObjectException, BBArrayBoundsException, BBNullFunctionException, BBNullMethodException, BBOutOfDataException, and BBRuntimeException.

Referenced by bbExceptionGetCause(), and bbExceptionInitCause().

BBClass* BBException::clas

The exception's clas.

This should always point to a class that extends bbExceptionClass.

See also:
bbExceptionClass

Reimplemented from BBObject.

Reimplemented in BBBlitzException, BBNullObjectException, BBArrayBoundsException, BBNullFunctionException, BBNullMethodException, BBOutOfDataException, and BBRuntimeException.

int BBException::refs

The number of times an instance is currently used.

Note:
Only used in single-threaded mode (by the reference-counting GC).
Warning:
Do not change or read this manually, as it is controlled be the runtime.

Reimplemented from BBObject.

Reimplemented in BBBlitzException, BBNullObjectException, BBArrayBoundsException, BBNullFunctionException, BBNullMethodException, BBOutOfDataException, and BBRuntimeException.