Наконец-то дошли руки сделать так, чтобы RDot правильно распознавал произвольные (естественно, корректные с точки зрения Ruby) заголовки методов, независимо от использования/неиспользования скобок для списка параметров, записи в несколько строк и разнообразных значений по-умолчанию для аргументов. Для многострочных заголовков действуют следующие ограничения:
- заголовок может состоять не более, чем из 4 строк;
- перенос может производиться только после одного из следующих символов —
,{([|&+-*/=>
.
upd: Всплывают новые глюки...
upd2: См. «RDot 0.9.3»
Возможно, логика определения заголовков еще будет меняться. Дело в том, что (как ВНЕЗАПНО выяснилось) трассировка Ruby указывает в качестве строки определения метода не ту, где расположено ключевое слово def
, а последнюю строку заголовка... Так что по-хорошему надо бы идти от нее назад, но это не решается регулярными выражениями, как оно сейчас сделано.
Комментариев нет:
Отправить комментарий