This site is a static rendering of the Trac instance that was used by R7RS-WG1 for its work on R7RS-small (PDF), which was ratified in 2013. For more information, see Home. For a version of this page that may be more recent, see StandardConditionPredicatesCowan in WG2's repo for R7RS-large.

Standard­Condition­Predicates­Cowan

cowan
2010-07-09 22:23:57
4history
source

Standard condition predicates and accessors

Conditions created by an implementation are opaque objects as far as this standard is concerned; they may be any Scheme object such as a list, a vector, or a record. However, a variety of predicates and accessors are provided in order to help programs examine implementation-specific conditions. If a predicate returns #t on a particular condition, the related accessor(s) will return information, hopefully meaningful and useful. Otherwise, calling the accessors has undefined effect. It is common for more than one predicate to return #t on a particular condition.

Returns #t iff condition contains a string message describing the condition to humans, otherwise #f.

Returns the message associated with message-condition.

Returns #t iff condition contains a string or symbol describing the object which is the source of the exception, otherwise #f.

Returns the who object associated with who-condition.

Returns #t iff condition contains a list of objects providing additional information about the condition, otherwise #f.

Returns the list of irritants (possibly empty) associated with message-condition.

Returns #t iff condition describes an exceptional situation that does not, in principle, prohibit immediate continued execution of the program, but may interfere with the program’s execution later, otherwise #f.

Returns #t iff condition describes an exceptional situation that is serious enough that it cannot safely be ignored, otherwise #f.

Returns #t iff condition describes an exceptional situation that is caused by something that has gone wrong in the interaction of the program with the external world or the user, otherwise #f.

Returns #t iff condition describes an exceptional situation that is a violation of the language standard or a library standard, typically caused by a programming error, otherwise #f.

Returns #t iff condition describes an invalid call to a procedure, such as passing an invalid number of arguments or passing an argument of the wrong type, otherwise #f.

Returns #t iff condition describes a violation of an implementation restriction that is allowed by the specification, otherwise #f.

Returns #t iff condition is reporting that storage is exhausted, otherwise #f.

Returns #t iff condition describes a lexical syntax error or an error in parsing a datum, otherwise #f.

Returns the string which could not be parsed.

Returns #t iff condition describes a syntax error, otherwise #f.

Returns the form containing a syntax error.

Returns the subform which more precisely locates the syntax error.

Returns #t iff condition describes an undefined identifier, otherwise #f.

Returns the identifier which is undefined as a symbol.

Returns #t iff condition describes a problem with a port, otherwise #f.

Returns the port associated with port-condition.

Returns #t iff condition describes an exceptional situation with I/O, otherwise #f.

Returns #t iff condition describes an exceptional situation with input, otherwise #f.

Returns #t iff condition describes an exceptional situation with output, otherwise #f.

Returns #t iff condition describes an attempt to set a port's position invalidly, otherwise #f.

Returns the position specified by the user.

Returns #t iff condition has a filename associated with it, otherwise #f.

Returns the filename associated with filename-condition as a string.

Returns #t iff condition describes a file protection violation, otherwise #f.

Returns #t iff condition describes the existence or nonexistence of a file, otherwise #f.

Returns #t if the filename associated with file-existence-condition exists but should not, or #f if it does not exist but should.