gm2-libs-iso/GeneralUserExceptions (The GNU Modula-2 Compiler)

#### 4.4.12 gm2-libs-iso/GeneralUserExceptions ¶

    DEFINITION MODULE GeneralUserExceptions;

    (* Provides facilities for general user-defined exceptions *)

    TYPE
      GeneralExceptions = (problem, disaster);

    PROCEDURE RaiseGeneralException (exception: GeneralExceptions;
                                     text: ARRAY OF CHAR);
      (* Raises exception using text as the associated message *)

    PROCEDURE IsGeneralException (): BOOLEAN;
      (* Returns TRUE if the current coroutine is in the exceptional
         execution state because of the raising of an exception from
         GeneralExceptions; otherwise returns FALSE.
      *)

    PROCEDURE GeneralException(): GeneralExceptions;
      (* If the current coroutine is in the exceptional execution
         state because of the raising of an exception from
         GeneralExceptions, returns the corresponding enumeration value,
         and otherwise raises an exception.
      *)

    END GeneralUserExceptions.