Package Documentation

Object: VARIABLE-SEQUENCE (The :GENDL Package)
Mixins: QUANTIFICATION

Description

A variable-sequence quantification is generated as a result of specifying :sequence (:indices ...)) in an :objects specification. Unlike a normal sequence quantification (specified with :sequence (:size ...))), elements can be surgically inserted and deleted from a variable-sequence.


Input Slots (optional)

HIDDEN? [from VANILLA-MIXIN*] boolean

Indicates whether the object should effectively be a hidden-object even if specified in :objects. Default is nil.


ROOT [from VANILLA-MIXIN*] gdl instance

The root-level node in this object's ``tree'' (instance hierarchy).


SAFE-CHILDREN [from VANILLA-MIXIN*] list of gdl instances

All objects from the :objects specification, including elements of sequences as flat lists. Any children which throw errors come back as a plist with error information


STRINGS-FOR-DISPLAY [from VANILLA-MIXIN*] string or list of strings

Determines how the name of objects of this type will be printed in most places. This defaults to the name-for-display (generally the part's name as specified in its parent), followed by an index number if the part is an element of a sequence.


VISIBLE-CHILDREN [from VANILLA-MIXIN*] list of gdl instances

Additional objects to display in Tatu tree. Typically this would be a subset of hidden-children. Defaults to NIL.



Computed Slots

FIRST [from QUANTIFICATION] gdl object

Returns the first element of the aggregate.


LAST [from QUANTIFICATION] gdl object

Returns the last element of the aggregate.



GDL Functions

DELETE! void

Deletes the element identified with the given index.

arguments:
index Integer, Symbol, or other object matching with eql
The identifier used when the element was initialized or inserted

INSERT! void

Inserts a new element identified with the given index.

arguments:
index Integer, Symbol, or other object matching with eql
The identifier to be used to access this element

RESET! void

Resets the variable sequence to its default list of indices (i.e. clears out any inserted or deleted elements and re-evaluates the expression to compute the original list of indices)


Package Documentation