Ruby дает вам возможность отслеживать файл и строку, где метод определен во время выполнения. Так, например, если у вас есть объект с именем «OBJ», который обладает способностью вызывать метод «do_something», вы можете отслеживать его определение (в Ruby 1.9 и выше):Отслеживание определения метода Groovy?
obj.method(:do_something).source_location
ли заводной есть любая эквивалентная возможность? Я пытаюсь найти способ определения метода, но это очень сложно.
Благодарим за помощь.
Если вы просто пытаетесь определить, где определен метод, почему бы не перейти к вызову метода с помощью отладчика IDE? – jk47
В моем случае intellij не войдет в них. Тем не менее, я думаю, что следующая публикация из документации Grails, вероятно, объясняет, почему «API GORM был формализован в набор классов (GormStaticApi, GormInstanceApi и GormValidationApi), которые статически подключаются к каждому классу домена на уровне байтового кода. улучшенное завершение кода для IDE, лучшая интеграция с Java и возможность более GORM-реализации для других типов хранилищ данных ». Такая магия - это то, что затрудняет устранение неполадок Rails. Печально это относится и к Grails ... Я надеялся на меньшее волшебство. – jbwiv
Этот вопрос вместе с ответом может быть полезным: http://stackoverflow.com/questions/5263008/print-the-closure-definition-source-in-groovy – Opal