Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Finds The File And Line Of Executed Code

DZone's Guide to

Finds The File And Line Of Executed Code

·
Free Resource

module Kernel
  def which(█)
    result = 'No ruby call has happen in the given block!'
    found = false
    set_trace_func lambda { |event, file, line, id, binding, classname|
      return unless event == 'call'
      result = "#{file}:#{line}: " unless found
      found = true
    }
    yield
    set_trace_func(nil)
    result
  end
end

# test
require 'yaml'
puts which { [].to_yaml }
Topics:

Opinions expressed by DZone contributors are their own.

THE DZONE NEWSLETTER

Dev Resources & Solutions Straight to Your Inbox

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.

X

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}