![]() | ![]() | ![]() | map-instances-of-class | ![]() |
|
| function unit-classes-specifier | [Function] |
Purpose
Apply a function once to each unit instance of the
specified unit classes.
Package :gbbopen
Module :gbbopen-core
Arguments and values
| function | A function designator specifying a function object of one argument | |
| unit-classes-specifier | An extended unit-classes specification (see below) |
Detailed syntax
| unit-classes-specifier ::= | t |
single-unit-class-specifier
| (single-unit-class-specifier+) |
| single-unit-class-specifier ::= | atomic-unit-class |
(atomic-unit-class subclassing-specifier) |
| atomic-unit-class ::= | unit-class | unit-class-name |
| subclassing-specifier ::= | :plus-subclasses | :no-subclasses |
Description
The specified function is applied once to each
unit instance of the specified unit classes, whether
or not the instances reside on any space instances.
See also
class-instances-count
clear-space-instances
do-instances-of-class
find-instances-of-class
make-instances-of-class-vector
map-instances-on-space-instances
map-sorted-instances-of-class
Examples
Delete all unit instances of the class hyp:
(map-instances-of-class #'delete-instance 'hyp)Delete all unit instances of the class
hyp and
instances of subclasses of hyp:
(map-instances-of-class #'delete-instance '(hyp :plus-subclasses))
Note
The consequences are unspecified if an attempt is made to add or delete a
unit instance while map-instances-of-class is in progress.
There is one exception to this restriction: function may delete its
unit instance argument, provided that deletion does not trigger the
deletion of any other unit instances. For example, the following form
intended to delete all space instances violates this restriction:
(map-instances-of-class
#'delete-space-instance '(standard-space-instance :plus-subclasses))
because deletion of a space instance with children automatically
deletes those child space instances. The function
delete-all-space-instances provides an efficient means of
deleting all space instances without violating this rule.
The GBBopen Project
![]() | ![]() | ![]() | map-instances-of-class | ![]() |