суббота, 3 сентября 2011 г.

RDot 0.9.2.4 — распознавание заголовков методов

Наконец-то дошли руки сделать так, чтобы RDot правильно распознавал произвольные (естественно, корректные с точки зрения Ruby) заголовки методов, независимо от использования/неиспользования скобок для списка параметров, записи в несколько строк и разнообразных значений по-умолчанию для аргументов. Для многострочных заголовков действуют следующие ограничения:

  • заголовок может состоять не более, чем из 4 строк;
  • перенос может производиться только после одного из следующих символов — ,{([|&+-*/=>.

upd: Всплывают новые глюки...

upd2: См. «RDot 0.9.3»

Возможно, логика определения заголовков еще будет меняться. Дело в том, что (как ВНЕЗАПНО выяснилось) трассировка Ruby указывает в качестве строки определения метода не ту, где расположено ключевое слово def, а последнюю строку заголовка... Так что по-хорошему надо бы идти от нее назад, но это не решается регулярными выражениями, как оно сейчас сделано.

Комментариев нет:

Отправить комментарий