Die Funktion collection.some( ) gibt wahr zurück, wenn mindestens ein Element in der Collection den Test, angegeben in MethodenName, erfolgreich durchlaufen hat.
Standardmäßig testet collection.some( ) die gesamte Collection. Optional können Sie in StartAb den Index des Elements übergeben, ab dem der Test starten soll.
- Ist StartAb >= Länge der Collection, wird -1 zurückgegeben, d.h. die Collection wird nicht getestet.
- Ist StartAb < 0, wird es als Versatz vom Ende der Collection gewertet
- Ist StartAb = 0, wird die gesamte Collection getestet (Standard).
In MethodenName übergeben Sie den Namen der Methode zum Bewerten der Collection Elemente, zusammen mit den Parametern in param (optional). MethodenName kann jeden Test mit oder ohne die Parameter durchführen. Diese Methode empfängt einen Parameter Object in $1 und muss $1.result für jedes Element, das den Test erfüllt, auf wahr setzen.
MethodenName empfängt folgende Parameter:
- in $1.value: Elementwert zum Bewerten
- in $2: param
- in $N...: param2...paramN
MethodenName setzt folgende Parameter:
- $1.result (boolean): wahr, bei erfolgreicher Bewertung des Elementwerts, sonst falsch.
- $1.stop (boolean, optional): wahr, um Aufruf der Methode zu stoppen. Der zurückgegebene Wert ist der letzte bewertete Wert.
In allen Fällen gilt: An der Stelle, wo die Funktion collection.some( ) das erste Collection Element findet, das in $1.result wahr zurückgibt, stoppt sie das Aufrufen von MethodenName und gibt wahr zurück.
C_COLLECTION($c)
C_BOOLEAN($b)
$c:=New collection
$c.push(-5;-3;-1;-4;-6;-2)
$b:=$c.some("NumberGreaterThan0")
$c.push(1)
$b:=$c.some("NumberGreaterThan0")
$c:=New collection
$c.push(1;-5;-3;-1;-4;-6;-2)
$b:=$c.some("NumberGreaterThan0")
$b:=$c.some(2;"NumberGreaterThan0")
Der Code der Methode NumberGreaterThan0 lautet:
$1.result:=$1.value>0