gpt4 book ai didi

ruby - 断点和irb的结合(REPL)

转载 作者:太空宇宙 更新时间:2023-11-03 16:35:14 25 4
gpt4 key购买 nike

有时我想尝试对某些对象使用 IRB,但要重现我需要的状态和上下文可能并不那么容易。假设您想在 RSPec 中使用表达式的语法。所以我想实现这样的东西:

  1. 在我目前正在开发的 ruby​​ 应用程序的代码内部,我调用了函数 eval_server
  2. 它创建服务器套接字并监听连接
  3. 我启动了一些类似于 IRB 的工具(我们称之为 eval_client - 它应该被实现)
  4. 它创建客户端套接字并连接到 eval_server
  5. 我在 eval_client 中输入一些 ruby​​ 表达式
  6. eval_client 将其发送到 eval_server
  7. eval_server 在调用它的对象的上下文中评估表达式,序列化结果或异常(例如使用 .inspect),并将其发送回 eval_client
  8. eval_client 显示结果

...

问题是:是否已经实现了类似的工具?如果没有,是否有一些 gem 可以帮助我实现它?

我知道它可能看起来像调试器。但我不想用调试器启动 rails server。我只想在代码中添加一个类似的代码,并在下一次请求时在该行的上下文中设置 IRB。

更新:

所以根据答案:

eval_client = pry 远程

eval_server = binding.remote_pry

https://github.com/mon-ouie/pry-remote

最佳答案

A Pry名为 pry-remote 的插件可以做到这一点:

参见:https://github.com/pry/pry/wiki/Remote-sessions

关于ruby - 断点和irb的结合(REPL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8763501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com