Exemplo
for
currObject range element_list do
result &:= " " &
str(currObject);
end
for;
Semântica:
É analisado o primeiro elemento da coleção.
Se este elemento for "empty" (vazio) a instrução "for-each" é finalizada.
Caso contrário, o primeiro elemento da lista é atribuído a 'variável de
controle' após "for".
Então as instruções do bloco são executadas.
Se não houver um próximo elemento a instrução "for-each" é finalizada.
Caso contrário, o próximo elemento da coleção é atribuído a 'variável
de controle'.
Este ciclo de verificar o próximo elemento e executar é repetido até
que não haja mais elementos na coleção.
Sintaxe:
for_each_statement
::=
'for'
identifier 'range' expression 'do'
statement
'end'
'for' .
Declaration:
$
syntax expr: .for.().range.().do.().end.for is -> 25;
const
proc: for (inout reference: variable) range (in ref_list: aRefList) do
(in proc: statement)
end for is action
"RFL_FOR";
const
proc: for (inout baseType: variable) range (in arrayType: arr_obj) do
(in proc: statements)
end for is func
local
var integer: number is 0;
begin
for number range minIdx(arr_obj) to
maxIdx(arr_obj) do
variable := arr_obj[number];
statements;
end for;
end func;
const
proc: for (inout baseType: variable) range (in setType: a_set) do
(in proc: statements)
end for is func
begin
for variable range min(a_set) to max(a_set)
do
if variable in a_set then
statements;
end if;
end for;
end func;
Nenhum comentário:
Postar um comentário