6.5 Predefined Presentation Types

6.5.5 One-Of and Some-Of Presentation Types

The "one-of" and "some-of" presentation types can be used to accept and present one or more items from a set of items. The set of items can be specified as a "rest" argument, a sequence, or an alist.

This table summarizes single ("one-of") and multiple ("some-of") selection presentation types. Each row represents a type of presentation. Columns contain the associated single and multiple selection presentation types.

One-Of and Some-Of Selection Presentation Types
ArgumentsSingleMultiple
most generalcompletionsubset-completion
&rest elementsmembersubset
sequencemember-sequencesubset-sequence
alistmember-alistsubset-alist

completion [Presentation Type]

Arguments:
sequence&key test value-key
Summary:
The presentation type that selects one from a finite set of possibilities, with "completion" of partial inputs. Several types are implemented in terms of the completion type, including token-or-type, null-or-type, member, member-sequence, and member-alist.

sequence is a list or vector whose elements are the possibilities. Each possibility has a printed representation, called its name, and an internal representation, called its value. accept reads a name and returns a value. present is given a value and outputs a name.

test is a function that compares two values for equality. The default is eql.

value-key is a function that returns a value, given an element of sequence. The default is identity.

The following presentation type options are available:

member [Presentation Type Abbreviation]
Arguments:
&rest elements
Summary:
The presentation type that specifies one of elements. The options are the same as for completion.

member-sequence [Presentation Type Abbreviation]
Arguments:
sequence&key test
Summary:
Like member, except that the set of possibilities is the sequence sequence. The parameter test and the options are the same as for completion.

member-alist [Presentation Type Abbreviation]
Arguments:
alist&key test
Summary:
Like member, except that the set of possibilities is the alist alist. Each element of alist is either an atom, as in member-sequence, or a list whose car is the name of that possibility and whose cdr is one of the following:

The test parameter and the options are the same as for completion except that value-key and documentation-key default to functions that support the specified alist format.

subset-completion [Presentation Type]
Arguments:
sequence&key test value-key
Summary:
The type that selects one or more from a finite set of possibilities, with "completion" of partial inputs. The parameters and options are the same as for completion, plus the additional options separator and echo-space, which are as for the sequence type. The subset types that follow are implemented in terms of the subset-completion type.

subset [Presentation Type Abbreviation]
Arguments:
&rest elements
Summary:
The presentation type that specifies a subset of elements. Values of this type are lists of zero or more values chosen from the possibilities in elements. The printed representation is the names of the elements separated by commas. The options are the same as for completion.

subset-sequence [Presentation Type Abbreviation]
Arguments:
sequence&key test
Summary:
Like subset, except that the set of possibilities is the sequence sequence. The parameter test and the options are the same as for completion.

subset-alist [Presentation Type Abbreviation]
Arguments:
alist&key test
Summary:
Like subset, except that the set of possibilities is the alist alist.


CLIM 2.0 User's Guide - OCT 1998

Generated with Harlequin WebMaker