- (cond-expand FEATURE-CLAUSE ...)syntax
Expands by selecting feature clauses. This form is allowed to appear in non-toplevel expressions.
Predefined feature-identifiers are "situation" specific:
- compile
- chicken, chicken-5, compiling, library, eval, extras, regex, srfi-0, srfi-2, srfi-4, srfi-6, srfi-8, srfi-9, srfi-10, srfi-11, srfi-12, srfi-15, srfi-16, srfi-17, srfi-23, srfi-26, srfi-28, srfi-30, srfi-31, srfi-39, srfi-55, srfi-61, srfi-62
- load
- chicken, chicken-5, extras, srfi-0, srfi-2, srfi-6, srfi-8, srfi-9, srfi-10, srfi-12, srfi-17, srfi-23, srfi-28, srfi-30, srfi-39, srfi-55, srfi-61, srfi-62. library is implicit.
- eval
- csi, chicken, chicken-5, extras, srfi-0, srfi-2, srfi-6, srfi-8, srfi-9, srfi-10, srfi-11, srfi-12, srfi-15, srfi-16, srfi-17, srfi-23, srfi-26, srfi-28, srfi-30, srfi-31, srfi-39, srfi-55, srfi-61, srfi-62. library is implicit.
Also, features of the form chicken-5.X, where X denotes the minor version, are available.
The symbols returned by the following procedures from (chicken platform) are also available as feature-identifiers in all situations: (machine-byte-order), (machine-type), (software-type), (software-version). For example, the machine-type class of feature-identifiers include arm, alpha, mips, etc.
The (chicken platform) module also provides a function (features) that returns a list of all registered features.
In addition the following feature-identifiers may exist: cross-chicken, dload, manyargs, ptables.
For further information, see the documentation for SRFI-0.