Version: 4.0.2.5
1 Exception utilities
Utilities for raising, handling and printing exceptions.
Prints the message and stack trace of exn to the current output port. Re-provided from "text-ui.ss" in SchemeUnit.
Examples: |
|
Oops! | | === context === | /usr/local/plt/collects/scheme/sandbox.ss:469:4: loop | | |
|
(raise-exn id message arg ...) |
Raises an exception with a default set of continuation marks. id is the identifier of the exception’s structure type transformer binding (e.g. exn or exn:fail). message and args are passed to the exception’s constructor, along with the value of current-continuation-marks.
Examples: |
|
#(struct:exn:fail | "Oops!" | #<continuation-mark-set>) |
|
|
#(struct:exn:fail:syntax | "Oops!" | #<continuation-mark-set> | (#<syntax:8:0> | #<syntax:8:0> | #<syntax:8:0>)) |
|
(reraise-exn old-exn new-exn new-message arg ...) |
Raises new-exn with a message of:
(string-append (exn-message old-exn) ": " new-message)
and the same continuation marks as old-exn. Any additional args are passed to the constructor of new-exn.
Examples: |
|
#(struct:exn:fail | "Looks serious: Oops!" | #<continuation-mark-set>) |
|