ListAggregate(S)

aggcat.spad line 2243 [edit on github]

A list aggregate is a model for a linked list data structure. A linked list is a versatile data structure. Insertion and deletion are efficient and searching is a linear operation.

# : % -> NonNegativeInteger
from Aggregate
< : (%, %) -> Boolean if S has OrderedSet
from PartialOrder
<= : (%, %) -> Boolean if S has OrderedSet
from PartialOrder
= : (%, %) -> Boolean if S has BasicType
from BasicType
> : (%, %) -> Boolean if S has OrderedSet
from PartialOrder
>= : (%, %) -> Boolean if S has OrderedSet
from PartialOrder
any? : (Mapping(Boolean, S), %) -> Boolean
from HomogeneousAggregate(S)
child? : (%, %) -> Boolean if S has BasicType
from RecursiveAggregate(S)
children : % -> List(%)
from RecursiveAggregate(S)
coerce : % -> OutputForm if S has CoercibleTo(OutputForm)
from CoercibleTo(OutputForm)
concat : (%, %) -> %
from LinearAggregate(S)
concat : (%, S) -> %
from LinearAggregate(S)
concat : (S, %) -> %
from LinearAggregate(S)
concat : List(%) -> %
from LinearAggregate(S)
concat! : (%, %) -> %
from ExtensibleLinearAggregate(S)
concat! : (%, S) -> %
from ExtensibleLinearAggregate(S)
concat! : List(%) -> %
from UnaryRecursiveAggregate(S)
construct : List(S) -> %
from Collection(S)
convert : % -> InputForm if S has ConvertibleTo(InputForm)
from ConvertibleTo(InputForm)
copy : % -> %
from Aggregate
copyInto! : (%, %, Integer) -> %
from LinearAggregate(S)
count : (S, %) -> NonNegativeInteger if S has BasicType
from HomogeneousAggregate(S)
count : (Mapping(Boolean, S), %) -> NonNegativeInteger
from HomogeneousAggregate(S)
cycleEntry : % -> %
from UnaryRecursiveAggregate(S)
cycleLength : % -> NonNegativeInteger
from UnaryRecursiveAggregate(S)
cycleSplit! : % -> %
from UnaryRecursiveAggregate(S)
cycleTail : % -> %
from UnaryRecursiveAggregate(S)
cyclic? : % -> Boolean
from RecursiveAggregate(S)
delete : (%, Integer) -> %
from LinearAggregate(S)
delete : (%, UniversalSegment(Integer)) -> %
from LinearAggregate(S)
delete! : (%, Integer) -> %
from ExtensibleLinearAggregate(S)
delete! : (%, UniversalSegment(Integer)) -> %
from ExtensibleLinearAggregate(S)
distance : (%, %) -> Integer
from RecursiveAggregate(S)
elt : (%, "rest") -> %
from UnaryRecursiveAggregate(S)
elt : (%, UniversalSegment(Integer)) -> %
from Eltable(UniversalSegment(Integer), %)
elt : (%, "first") -> S
from UnaryRecursiveAggregate(S)
elt : (%, "last") -> S
from UnaryRecursiveAggregate(S)
elt : (%, "value") -> S
from RecursiveAggregate(S)
elt : (%, Integer) -> S
from Eltable(Integer, S)
elt : (%, Integer, S) -> S
from EltableAggregate(Integer, S)
empty : () -> %
from Aggregate
empty? : % -> Boolean
from Aggregate
entries : % -> List(S)
from IndexedAggregate(Integer, S)
entry? : (S, %) -> Boolean if S has BasicType
from IndexedAggregate(Integer, S)
eq? : (%, %) -> Boolean
from Aggregate
eval : (%, S, S) -> % if S has Evalable(S) and S has SetCategory
from InnerEvalable(S, S)
eval : (%, Equation(S)) -> % if S has Evalable(S) and S has SetCategory
from Evalable(S)
eval : (%, List(S), List(S)) -> % if S has Evalable(S) and S has SetCategory
from InnerEvalable(S, S)
eval : (%, List(Equation(S))) -> % if S has Evalable(S) and S has SetCategory
from Evalable(S)
every? : (Mapping(Boolean, S), %) -> Boolean
from HomogeneousAggregate(S)
explicitlyFinite? : % -> Boolean
from StreamAggregate(S)
fill! : (%, S) -> %
from IndexedAggregate(Integer, S)
find : (Mapping(Boolean, S), %) -> Union(S, "failed")
from Collection(S)
first : (%, NonNegativeInteger) -> %
from LinearAggregate(S)
first : % -> S
from IndexedAggregate(Integer, S)
hash : % -> SingleInteger if S has Hashable
from Hashable
hashUpdate! : (HashState, %) -> HashState if S has Hashable
from Hashable
index? : (Integer, %) -> Boolean
from IndexedAggregate(Integer, S)
indices : % -> List(Integer)
from IndexedAggregate(Integer, S)
insert : (%, %, Integer) -> %
from LinearAggregate(S)
insert : (S, %, Integer) -> %
from LinearAggregate(S)
insert! : (%, %, Integer) -> %
from ExtensibleLinearAggregate(S)
insert! : (S, %, Integer) -> %
from ExtensibleLinearAggregate(S)
last : (%, NonNegativeInteger) -> %
from UnaryRecursiveAggregate(S)
last : % -> S
from UnaryRecursiveAggregate(S)
latex : % -> String if S has SetCategory
from SetCategory
leaf? : % -> Boolean
from RecursiveAggregate(S)
leaves : % -> List(S)
from RecursiveAggregate(S)
leftTrim : (%, S) -> % if S has BasicType
from LinearAggregate(S)
less? : (%, NonNegativeInteger) -> Boolean
from Aggregate
list : S -> %

list(x) returns the list of one element x.

map : (Mapping(S, S), %) -> %
from HomogeneousAggregate(S)
map : (Mapping(S, S, S), %, %) -> %
from LinearAggregate(S)
map! : (Mapping(S, S), %) -> %
from HomogeneousAggregate(S)
max : (%, %) -> % if S has OrderedSet
from OrderedSet
max : % -> S if S has OrderedSet
from HomogeneousAggregate(S)
max : (Mapping(Boolean, S, S), %) -> S
from HomogeneousAggregate(S)
maxIndex : % -> Integer
from IndexedAggregate(Integer, S)
member? : (S, %) -> Boolean if S has BasicType
from HomogeneousAggregate(S)
members : % -> List(S)
from HomogeneousAggregate(S)
merge : (%, %) -> % if S has OrderedSet
from LinearAggregate(S)
merge : (Mapping(Boolean, S, S), %, %) -> %
from LinearAggregate(S)
merge! : (%, %) -> % if S has OrderedSet
from ExtensibleLinearAggregate(S)
merge! : (Mapping(Boolean, S, S), %, %) -> %
from ExtensibleLinearAggregate(S)
min : (%, %) -> % if S has OrderedSet
from OrderedSet
min : % -> S if S has OrderedSet
from HomogeneousAggregate(S)
minIndex : % -> Integer
from IndexedAggregate(Integer, S)
more? : (%, NonNegativeInteger) -> Boolean
from Aggregate
new : (NonNegativeInteger, S) -> %
from LinearAggregate(S)
node? : (%, %) -> Boolean if S has BasicType
from RecursiveAggregate(S)
nodes : % -> List(%)
from RecursiveAggregate(S)
parts : % -> List(S)
from HomogeneousAggregate(S)
position : (S, %) -> Integer if S has BasicType
from LinearAggregate(S)
position : (S, %, Integer) -> Integer if S has BasicType
from LinearAggregate(S)
position : (Mapping(Boolean, S), %) -> Integer
from LinearAggregate(S)
possiblyInfinite? : % -> Boolean
from StreamAggregate(S)
qelt : (%, Integer) -> S
from EltableAggregate(Integer, S)
qsetelt! : (%, Integer, S) -> S
from EltableAggregate(Integer, S)
qsetfirst! : (%, S) -> S
from UnaryRecursiveAggregate(S)
qsetrest! : (%, %) -> %
from UnaryRecursiveAggregate(S)
reduce : (Mapping(S, S, S), %) -> S
from Collection(S)
reduce : (Mapping(S, S, S), %, S) -> S
from Collection(S)
reduce : (Mapping(S, S, S), %, S, S) -> S if S has BasicType
from Collection(S)
remove : (S, %) -> % if S has BasicType
from Collection(S)
remove : (Mapping(Boolean, S), %) -> %
from Collection(S)
remove! : (S, %) -> % if S has BasicType
from ExtensibleLinearAggregate(S)
remove! : (Mapping(Boolean, S), %) -> %
from ExtensibleLinearAggregate(S)
removeDuplicates : % -> % if S has BasicType
from Collection(S)
removeDuplicates! : % -> % if S has BasicType
from ExtensibleLinearAggregate(S)
rest : % -> %
from UnaryRecursiveAggregate(S)
rest : (%, NonNegativeInteger) -> %
from UnaryRecursiveAggregate(S)
reverse : % -> %
from LinearAggregate(S)
reverse! : % -> %
from LinearAggregate(S)
rightTrim : (%, S) -> % if S has BasicType
from LinearAggregate(S)
sample : () -> %
from Aggregate
second : % -> S
from UnaryRecursiveAggregate(S)
select : (Mapping(Boolean, S), %) -> %
from Collection(S)
select! : (Mapping(Boolean, S), %) -> %
from ExtensibleLinearAggregate(S)
setchildren! : (%, List(%)) -> %
from RecursiveAggregate(S)
setelt! : (%, "rest", %) -> %
from UnaryRecursiveAggregate(S)
setelt! : (%, "first", S) -> S
from UnaryRecursiveAggregate(S)
setelt! : (%, "last", S) -> S
from UnaryRecursiveAggregate(S)
setelt! : (%, "value", S) -> S
from RecursiveAggregate(S)
setelt! : (%, Integer, S) -> S
from EltableAggregate(Integer, S)
setelt! : (%, UniversalSegment(Integer), S) -> S
from LinearAggregate(S)
setfirst! : (%, S) -> S
from UnaryRecursiveAggregate(S)
setlast! : (%, S) -> S
from UnaryRecursiveAggregate(S)
setrest! : (%, %) -> %
from UnaryRecursiveAggregate(S)
setvalue! : (%, S) -> S
from RecursiveAggregate(S)
size? : (%, NonNegativeInteger) -> Boolean
from Aggregate
smaller? : (%, %) -> Boolean if S has Comparable
from Comparable
sort : % -> % if S has OrderedSet
from LinearAggregate(S)
sort : (Mapping(Boolean, S, S), %) -> %
from LinearAggregate(S)
sort! : % -> % if S has OrderedSet
from LinearAggregate(S)
sort! : (Mapping(Boolean, S, S), %) -> %
from LinearAggregate(S)
sorted? : % -> Boolean if S has OrderedSet
from LinearAggregate(S)
sorted? : (Mapping(Boolean, S, S), %) -> Boolean
from LinearAggregate(S)
split! : (%, NonNegativeInteger) -> %
from UnaryRecursiveAggregate(S)
swap! : (%, Integer, Integer) -> Void
from IndexedAggregate(Integer, S)
tail : % -> %
from UnaryRecursiveAggregate(S)
third : % -> S
from UnaryRecursiveAggregate(S)
trim : (%, S) -> % if S has BasicType
from LinearAggregate(S)
value : % -> S
from RecursiveAggregate(S)
~= : (%, %) -> Boolean if S has BasicType
from BasicType

HomogeneousAggregate(S)

ConvertibleTo(InputForm)

Collection(S)

shallowlyMutable

Aggregate

LinearAggregate(S)

EltableAggregate(Integer, S)

OrderedSet

ExtensibleLinearAggregate(S)

finiteAggregate

PartialOrder

Eltable(UniversalSegment(Integer), %)

UnaryRecursiveAggregate(S)

InnerEvalable(S, S)

Comparable

RecursiveAggregate(S)

StreamAggregate(S)

Hashable

FiniteLinearAggregate(S)

CoercibleTo(OutputForm)

Eltable(Integer, S)

IndexedAggregate(Integer, S)

BasicType

Evalable(S)

SetCategory