[erlang-questions] Getting variable bindings using the int debug module

James Norton <>
Wed Jan 20 04:24:57 CET 2016


I asked this on the Elixir Google Group, but have had no response. It's
actually more Erlang oriented, so I'm reposting here.

I have been experimenting with using the int module for debugging
Elixir/Erlang, but I can't figure out how to examine bound variables. I
attach a REPL process (meta process) to another process and use the
functions in the int module to set breakpoints, step, and resume code, and
that all works. I know there is the get_binding function, but the
documentation says this is meant to be called from a conditional breakpoint
condition function. In any case I don't know how to get the bindings to
pass to this function.

Looking at the source code in int.erl I see there are other functions that
can be called from a meta process, including the various meta functions. My
attempt at calling meta(Meta, bindings, Stack) after reaching a breakpoint
in the process being debugged locks up the meta process. My call looked
like this (Elixir):

:int.meta(meta, :bindings, :nostack)

Which is essentially

int%meta(Meta, bindings, nostack) in Erlang (taken from the Erlang
graphical debugger source code).

I tried looking at the source code for the Erlang graphical debugger, but I
can't quite follow it. Can someone explain to me how to get the bindings
after reaching a break point and after stepping code?

Thanks,

James
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20160119/a482812f/attachment.html>


More information about the erlang-questions mailing list