Различное форматирование arg для определений против вызовов - PullRequest
2 голосов
/ 15 сентября 2011

Мне любопытно, почему аргументы первичного конструктора должны иметь отступ за открывающей пареню в определении типа, но могут быть с отступом от имени типа при запуске.

type AnIncrediblyLaboriouslyEternallyLongTypeName(arg1, arg2,
      arg3, arg4) = //WARNING: Possible incorrect indentation
  class end

let x = AnIncrediblyLaboriouslyEternallyLongTypeName(
          1, 2, 3, 4) //works

Решение состоит в том, чтобы сделать отступы над левым краем вашего второго монитора:

type AnIncrediblyLaboriouslyEternallyLongTypeName(arg1, arg2,
                                                  arg3, arg4) = 
  class end

Мне интересно, почему правила отличаются в этих двух сценариях.

Это также относится к методам. Я просто выбрал первичные конструкторы в качестве примера.

1 Ответ

2 голосов
/ 15 сентября 2011

Не помню, но учтите, что это

type AnIncrediblyLaboriouslyEternallyLongTypeName
        (arg1, arg2, arg3, arg4) = // works
  class end 

также разрешено.

...