Как форматировать определение функции с помощью аргументов на нескольких строках?
Я хотел бы поместить аргументы в разные строки, но я получаю ошибки синтаксического анализа во всех вариантах, которые я пытаюсь, включая добавление запятых, паттернов в стиле allwin и разных отступов.
constructor: (
@a
@b
@c
) ->
Ответ 1
Try:
constructor:\
( @a
, @b
, @c
) ->
Оба трейлинга \ и ведущие , подавляют новые строки в CoffeeScript.
Ответ 2
Кажется, вам не повезло. Если вы посмотрите на грамматические правила для определения функции, вы увидите, что правило определяется как:
'PARAM_START ParamList PARAM_END FuncGlyph Block'
Правило для Block допускает токены TERMINATOR (которые являются запятой или возвратом каретки), но правило ParamList (тот, который вам интересен при добавлении новой строки) не позволяет этого.