F # допускает различные виды «отступов», когда вам разрешено использовать меньший отступ, но при этом оставаться в пределах одного и того же выражения.
Один из таких допустимых «отступов» предназначен для операторов.Вы можете написать
foo
|> bar
|> baz
или
foo
|> bar
|> baz
или даже
foo
|> bar
|> baz
, и инфиксные операторы продолжат то же выражение в следующей строке.Правило состоит в том, что вам разрешается «отменять» длину «оператора инфикса плюс один пробел», при этом подразумевается, что это позволяет выровнять значения, которые вы используете.Распространенный случай подобен таблице чисел, например
let x =
42
+ 21
+ 62
, где строка ниже 42 может начинаться с меньшего отступа на два пробела, так что следующее число будет выровнено под предыдущим.
Так или иначе, это правило действует здесь, и без пробела «двоичный минус» имеет приоритет над «унарным минусом», а затем включается правило инфиксного отступа.