Include address in opaque method's show output #39780
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR tweaks
show
for Opaque Closure method to include the address.Before:
After:
This is something I find it useful in #39773 while hacking with Opaque Closures. So, I thought it might make sense to extract it out from #39773.
This PR lets us see the pointer to Opaque Closure in
:new_opaque_closure
IR so that the body of Opaque Closure can be revealed bym = Base.unsafe_pointer_to_objref(Base.reinterpret(Ptr{Cvoid}, $THE_ADDRESS))
(as in the example above and in #39773). This is handy when you want to know what is happening inside the Opaque Closure.I just realized that @Keno is already started working on introspection for Opaque Closures with Cthulhu.jl JuliaDebug/Cthulhu.jl#126. But maybe it's also nice to have a very "low tech" way to get Opaque Closure methods?