Tinderbox 7 Icon

collect(group,attribute)


Operator Type: 

Operator Scope of Action: 

Operator Purpose: 

Operator First Added: 

Operator Altered: 

 Function   [other Function type actions]

 Group   [operators of similar scope]

 Set & List creation   [other Set & List creation operators]

 Baseline

 


collect(group,attribute)

A function collect() builds a List by visiting each note described by group and adding the value of the designated attribute to the set. See collect_if() a for a related new operator.

group may be any group designator, or group defined by find(). In addition, group may be argument that designates a particular (single) note other than 'this'.

attribute can be any expression, but is typically an attribute.

For example,

collect(children,$Name) 

constructs a set with the name of each child of the note.

For example,

collect(children(/agents/books),$Name) 

does the same for children of the note 'books' inside 'agents'.

collect(children,$Width * $Height) 

collects a series of numerical values of each child's map icon height/width in Tinderbox map units. Thus if a child had a $Width of 4 and $Height of 2, the collect() result for that item would be 8.

If a list of unique values is required - i.e. a set rather than a list, simply pass the output to a Set attribute. Thus if:

$MyList = collect(children,$FavFruit) $MyList is "Apples;Oranges;Pears;Apples"

$MySet = collect(children,$FavFruit) MySet is "Apples;Oranges;Pears;"