WhileAny
Returns the elements in the given sequence as long as the condition sequence produces a non-empty sequence, and then skips the remaining elements.
Syntax
Sequence.WhileAny
· [sequence]
· [condition]
Parameters
- sequence
- The sequence to return elements from.
- condition
- A sequence that runs after evaluating each element of
sequence, and produces either an empty or a non-empty sequence. As soon as an empty sequence is encountered, the original sequence is trimmed.
Return Value
A trimmed version of sequence.
Remarks
As an example, suppose example.com contains a list of links and a next button to turn the pages. The following would visit each of the links until a link with the text "Last Item" is encountered:
Sequence.WhileAny
· Browser.Load
· "https://www.example.com"
Browser.TurnPages
· Select.NextButton
Select.Link
· Gather.Text
as text
if
· =
· text
· "Last Item"
· Sequence.Empty
· Sequence.Default
Browser.Navigate
In this example, the first argument of Sequence.WhileAny is a sequence that loads a page, turns the pages, and selects each of the links. While each link is selected, the second argument gets the
text of the link and, if it's equal to "Last Item", it returns Sequence.Empty to stop the extraction.
This way the, Browser.Navigate action at the bottom (and every other action below) will only run on links that appeared before the "Last Item" link.