В вашем конкретном случае, соглашение будет следующим:
Util = {
scale = function (x1, x2, x3, y1, y3)
return (y1) + ( (y2) - (y1)) * ( (x2) - (x1)) / ( (x3) - (x1))
end
}
Там, где есть операторы разрыва. Дальнейшее разбиение может быть сделано, если умножение нужно разделить на
Util = {
scale = function (x1, x2, x3, y1, y3)
return (y1) + ( (y2) - (y1)) *
( (x2) - (x1)) / ( (x3) - (x1))
end
}
С токеном умножения, используемым для разделения строки.Оставляя токен в конце строки, парсер требует больше ввода для завершения выражения, поэтому просматривает следующую строку.
Lua обычно не видит строковые символы, они просто пробелы.Однако существуют случаи, когда могут быть различия, и я бы ограничил разрывы строк местами, где существует очевидная потребность в дополнительных данных.
a = f
(g).x(a)
Это особый случай, когда его можно рассматривать как a = f(g).x(a)
или a = f
и (g).x(a)
Прерывая работу токена, который требует продолжения, вы гарантируете, что работаете с анализатором.