A range of operators use a List or Set as their scope. They can work with either attribute type, retaining data type, and may use list-based group designators or find().
The group may be any designator from:
- any designator from {children,descendants,sibling,ancestor,all}
- a find()
- a list-based group designator
Such operators are:
- count(list)
- List/Set.any(element, expression)
- List/Set.avg
- List/Set.collect_if(label, condition, expression)
- List/Set.collect(label, expression)
- List/Set.count
- List/Set.countOccurrencesOf("string")
- List/Set.every(element, expression)
- List/Set.first
- List/Set.intersect(set)
- List/Set.last
- List/Set.lookup("key")
- List/Set.max
- List/Set.min
- List/Set.remove()
- List/Set[N]
- max(list)
- min(list)
- Stream.eachLine(LoopVar[:condition]){action}
- Stream.json.each{action}
- String.containsAnyOf(aSet)
- String.icontainsAnyOf(aSet)
- update(group)