notransform
Thenotransform
filter takes one argument, a filter F
:
notransform a4 notransform player white "Kasparov"
The value of notransform F
in the current position is the same as the value of F
in the current position.
If T
is a transform filter, such as ✵, shift and so on, then the value of
T notransform F
is the same as the value of
notransform F
In other words, notransform nullifies the effect of any enclosing transform.
The notransform filter is primarily useful in certain functions and also for debugging. For example, the passedpawns filter is defined internally as:
notransform ⬓{ ♙&~down horizontal 0 1 ♟}
This ensures that
rotate90 passedpawns ≡ passedpawns
Otherwise, the rotate90 would modify the down
and horizontal
direction filters and odd results would obtain. Note that the ⬓
transform inside the notransform
filter operates as usual.