Iex pry идет шаг за шагом?

Я хочу использовать IEx.pry для пошагового выполнения моего кода эликсира, например byebug в ruby ​​или отладочной точки в Java. Я попытался изучить документацию здесь: https://github.com/elixir-lang/elixir/blob/4f68c4f10502e0f54a21093bb9a33957e63a9ac4/lib/iex/lib/iex.ex, но ничего не нашел. Может ли кто-нибудь предложить способ сделать это?


person VoodooChild    schedule 18.10.2015    source источник
comment
Возможно, вам это пригодится: github.com/qhool/quaff   -  person Patrick Oscity    schedule 19.10.2015
comment
@PatrickOscity, я обычно работаю на удаленной машине. Есть ли способ запустить инструмент quaff только в командной строке?   -  person VoodooChild    schedule 01.11.2015
comment
@VoodooChild: вы можете использовать ssh -Y при подключении ssh к удаленному компьютеру, чтобы любое окно было перенаправлено на ваш хост-компьютер.   -  person Batou99    schedule 07.10.2016


Ответы (3)


Это невозможно, так как pry - это не отладчик. Pry просто позволяет вам взаимодействовать с определенным контекстом.

person José Valim    schedule 20.10.2015
comment
Если любопытство не является ответом на установку точки останова и пошаговое выполнение работающей программы на Эликсире, что это такое? - person sma; 17.02.2016
comment
@sma, как указал Патрик, github.com/qhool/quaff - это инструмент, который вы можете использовать - person VoodooChild; 18.02.2016
comment
Не могу поверить, что не знал о пиве до сих пор. Спасибо @sma - person Steve Pallen; 26.04.2017

Я надеялся найти способ пройти через код Elixir через IEx.pry, но это было невозможно. В Erlang есть отладчик, который можно использовать для кода на Эликсире.

Вы можете запустить отладчик, запустив: :debugger.start()

Я узнал об этом здесь: http://blog.plataformatec.com.br/2016/04/debugging-techniques-in-elixir-lang/

person Catharz    schedule 10.03.2018

Вы можете добавить несколько IEx.pry инструкций, проверить и использовать continue для перехода к следующей

person samidarko    schedule 28.05.2020
comment
continue используется для продолжения выполнения, речь идет о step функциональности. - person Daniel; 28.05.2020