Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8711997
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 13, 20262026-06-13T05:01:04+00:00 2026-06-13T05:01:04+00:00

I have a bunch of code to look at, and now it is debugging

  • 0

I have a bunch of code to look at, and now it is debugging time. Since I have never been a fan of Ruby’s debugger I am looking for a way of going through code and reading it.

What I am trying to do is get the location of the file where a loaded class is defined:

Foo::Bar.create(:param) # how can I know file location in runtime?

For smaller, better organized, projects, I would just search for class Bar but here that is not possible since there are many classes named Bar, and, to make matters worse, some of them are under the same namespace. I know, it’s trouble waiting to happen.

Note: I’m using Ruby 1.8.7.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-13T05:01:04+00:00Added an answer on June 13, 2026 at 5:01 am

    For Methods and Procs Ruby 1.9 has method called source_location:

    Returns the Ruby source filename and line number containing this method or nil if this method was not defined in Ruby (i.e. native)

    So you can request for the method:

    m = Foo::Bar.method(:create)
    

    And then ask for the source_location of that method:

    m.source_location
    

    This will return an array with filename and line number.
    E.g for ActiveRecord::Base#validates this returns:

    ActiveRecord::Base.method(:validates).source_location
    # => ["/Users/laas/.rvm/gems/ruby-1.9.2-p0@arveaurik/gems/activemodel-3.2.2/lib/active_model/validations/validates.rb", 81]
    

    For classes and modules, Ruby does not offer built in support, but there is an excellent Gist out there that builds upon source_location to return file for a given method or first file for a class if no method was specified:

    • ruby where_is module

    EDIT: For Ruby 1.8.7 there is a gem that backports source_location:

    • ruby18_source_location
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a bunch of code in a routine that looks a bit like
I have a bunch of code of the form: someVector.push_back(Foo(some name, 1.0, 3.1415926); someVector.push_back(Foo(different
I have a bunch of generic code that is used a lot, which i'd
I have a bunch of PHP code that is auto-generated and it puts all
I am fairly new to C++ and I have seen a bunch of code
I have a bunch of old C code, which I compiled using MinGW, and
I have a bunch of these little bits of HTML code repeated over and
I have a bunch of occurrences of this kind of boilerplate code in my
I have a bunch of Workflow foundation 4.0 RC code activities that consume web
I have an application with some bunch of code like this: errCode = callMainSystem();

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.