ProblemType

A Problem has a ProblemType, indicating its basic nature and severity. This helps a ProblemHandler decide how best to respond to the Problem, such as deciding whether to proceed and look for subsequent problems or to give up building the modules.

Author

Mark van Gulik

Entries

Link copied to clipboard

The corresponding Problem is not actually an unexpected condition, but it may still be useful to report the information to the user. It's unclear whether this will actually be used for anything other than debugging the compiler.

Link copied to clipboard

The corresponding Problem indicates a situation that is less than ideal. A ProblemHandler may choose to present this warning, and then continue compilation.

Link copied to clipboard

A Problem occurred while tracing a module's dependencies. This condition only indicates a narrow range of problems, such as unresolved or recursive dependencies. Syntax errors in the module header that preclude a correct trace are treated as PARSE problems.

Link copied to clipboard

A Problem occurred while parsing a module's body. This includes both malformed tokens and assemblies of tokens that could not be successfully transformed into phrases.

Link copied to clipboard

A Problem occurred while executing Avail code. Typically this means an unhandled exception, or invoking a bootstrap primitive before the relevant exception handling mechanisms are in place. This should be treated as a fatal problem.

Link copied to clipboard

An internal Problem occurred in the virtual machine. This should not happen, and is not the fault of the Avail code, but rather Yours Truly, the Avail virtual machine authors.

Link copied to clipboard

An external Problem occurred. This indicates a failure in something outside the control of the virtual machine, for example a disk read failure.

Properties

Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard

Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

Link copied to clipboard

Returns an array containing the constants of this enum type, in the order they're declared.