O método collection.some( ) devolve true se ao menos um elemento da coleção tiver sido avaliado como true para a prova implementada no método nomMet.
De forma pré-determinada, collection.some( ) prova toda a coleção. Opcionalmente, pode passar o índice de elemento desde onde começa a prova em posInicial.
- Se posInicial>= a longitude da coleção, False se devolve, o que significa que a coleção não é testada.
- Se posInicial<0, o final da coleção se considera como ponto de inicio do cálculo da posição.
- Se posInicial=0, se busca em toda a coleção (pré-determinado).
Em nonMet, passe o nome do método a usar para avaliar os elementos da coleção, junto con seus parâmetros em param (opcional). nonMet pode realizar qualquer proba, com ou sem os parâmetros. Este método recebe um parâmetro Object em $1 e deve definir $1.result como true para cada elemento que cumpra o teste.
nonMet recebe os parâmetros abaixo:
- em $1.value: valor do elemento a avaliar
- em $2: param
- em $N...: param2...paramN
nonMet estabelece os parâmetros abaixo:
- $1.result (booleano): true si la evaluación del valor del elemento es exitosa, de lo contrario, false.
- $1.stop (booleano, opcional): true para deter a retrochamada do método. o valor devolvido for o último calculado.
Em qualquer caso, no ponto onde o método collection.some( ) encontrar o primeiro elemento de coleção que devolve true em $1.result, deixa de chamar a nonMet e devolve true.
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(1;"NumberGreaterThan0")
Com o método abaixo NumberGreaterThan0:
$1.result:=$1.value>0