Templates são apenas funções
normais com "types as parameters".
A função template a seguir declara a instrução for:
const
proc: FOR_DECLS (in type: aType)
is
func
begin
const proc: for (inout aType: variable)
range (in aType: low) to (in aType: high) do (in proc: statements) end for
is func
begin
variable := low;
if variable <= high then
statements;
while variable < high do
incr(variable);
statements;
end while;
end if;
end func;
end
func;
FOR_DECLS(char);
FOR_DECLS(boolean);
O corpo da função "FOR_DECLS" contém uma declaração para a
instrução for do tipo aType.
"Calling 'FOR_DECLS' with char and boolean as parameter creates
corresponding declarations of for-statements. "
O exemplo acima é uma parte simplificada da biblioteca forloop.s7i.
Nenhum comentário:
Postar um comentário