--> and <--
The --> symbol denotes the forward direction of a chess game with line.
It is used there to mean that the filter should look at future moves from the current position:
line --> check --> check --> [Pp]==0
will match positions in which the current position is check, the next position is also check, and the position following that has no pawns
The <-- symbol denotes the backwards direction of a chess game
in <-- and <-- filters.
<-- is used with the line filter to mean that the filter
should look at previous moves from the current position:
line <-- check <-- check <-- [Pp]==0
will match positions in which the the current position is check, the previous position is also check, and the position prior to that one has no pawns.
The <--symbol is also used with find to denote that the find filter should search backwards:
find <-- move promote [RBN]
will match the currentposition if there is an underpromotion from the current position or an earlier position.
Without the <-- however, the find filter would match the current position if there were an underpromotion from the current position or
a later position.
Note: when typing either <-- or --> be sure to use two - characters and not one. CQL will not recognize <- or -> .
Examples
The --> is used extensively in the CQL examples whenline is used (see the documentation for line for more examples).
The <-- is used in the white-try.cql example where
line <-- variation+
<-- {mainline wtm}
is used to find positions that are descendants of a position in which white makes a move to leave the mainline.