ToC DocOverview CGDoc RelNotes Index PermutedIndex
Allegro CL
Home Previous Up Next Table of Contents Index
  ANSI Common Lisp   14 Conses   14.2 Dictionary of Conses

14.2.48 subsetp Function

Syntax:
subsetp list-1 list-2 &key key test test-not    generalized-boolean

Arguments and Values:
list-1 - a proper list.

list-2 - a proper list.

test - a designator for a function of two arguments that returns a generalized boolean.

test-not - a designator for a function of two arguments that returns a generalized boolean.

key - a designator for a function of one argument, or nil.

generalized-boolean - a generalized boolean.

Description:
subsetp returns true if every element of list-1 matches some element of list-2, and false otherwise.

Whether a list element is the same as another list element is determined by the functions specified by the keyword arguments. The first argument to the :test or :test-not function is typically part of an element of list-1 extracted by the :key function; the second argument is typically part of an element of list-2 extracted by the :key function.

The argument to the :key function is an element of either list-1 or list-2; the return value is part of the element of the supplied list element. If :key is not supplied or nil, the list-1 or list-2 element itself is supplied to the :test or :test-not function.

Examples:
 (setq cosmos '(1 "a" (1 2)))  (1 "a" (1 2))
 (subsetp '(1) cosmos)  true
 (subsetp '((1 2)) cosmos)  false
 (subsetp '((1 2)) cosmos :test 'equal)  true
 (subsetp '(1 "A") cosmos :test #'equalp)  true
 (subsetp '((1) (2)) '((1) (2)))  false
 (subsetp '((1) (2)) '((1) (2)) :key #'car)  true

Exceptional Situations:
Should be prepared to signal an error of type type-error if list-1 and list-2 are not proper lists.

See Also:
Section 3.6 Traversal Rules and Side Effects

Notes:
The :test-not parameter is deprecated.

Allegro CL Implementation Details:
None.

Home Previous Up Next Table of Contents Index
© Franz Inc. All Rights Reserved - File last updated 2022-07-25