across
collection as l_item
until
Result /= Void
loop
if l_item.item.name.is_equal ("foo") then
Result := l_item.item
end
end
есть ли способ, и если да, то какой сделать что-то вроде
collection.do_if (agent ...)
пример использования может быть:
search_item_with_id (an_id: INTEGER)
-- Moves items cursor if not found is_after
local
l_found: BOOLEAN
do
from
items.start
until
items.after or l_found
loop
l_found := items.item.primary_key = an_id
if not l_found then
items.forth
end
end
ensure
cursor_on_element_if_found: not items.after implies items.item.primary_key = an_id
end