<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -491,6 +491,10 @@ do_something
 GC.time            # =&gt; 3000000
 ----------------------------
 
+*`GC.growth`*::
+	Returns the number of bytes that have been allocated since the last
+	garbage collection run.
+
 *`GC.dump`*::
 	Dumps information about the current GC data structures to the GC
 	log file, to `stderr` if no GC log file is specified. One can specify
@@ -612,4 +616,44 @@ This program will print:
 (which at the time of writing hasn't been released yet). Upon sending a 'SIGQUIT'
 signal to a Phusion Passenger backend process, it will print the backtrace of
 all threads to the Apache error log. This feature is also documented in the
-Phusion Passenger users guide.
\ No newline at end of file
+Phusion Passenger users guide.
+
+
+== Obtaining the source filename and line of arbitrary methods and blocks
+All Method and Proc objects provide the `__file__` and `__line__` methods for
+obtaining the source filename and line on which said method or proc was defined.
+This is extremely useful for debugging applications or frameworks that rely on
+heavily on meta-programming.
+
+For example, consider a Ruby on Rails application which has a User model. The
+`users` database table has a `username` field, so ActiveRecord automatically
+generates a `username` method for the User class. By calling `__file__` and
+`__line__` one can see where in the ActiveRecord source code the method is
+defined:
+
+-------------------------------
+&gt;&gt; method = User.new.method(:username)
+=&gt; #&lt;Method: User#username&gt;
+&gt;&gt; method.__file__
+=&gt; &quot;/opt/ruby-enterprise/lib/ruby/gems/1.8/gems/activerecord-2.3.2/lib/active_record/attribute_methods.rb&quot;
+&gt;&gt; method.__line__
+=&gt; 211
+-------------------------------
+
+A simpler example that doesn't involve Ruby on Rails:
+
+[source, ruby]
+-------------------------------
+# foo.rb
+
+class Foo
+   def foo
+   end
+end
+
+foo = Foo.new
+
+method = foo.method(:foo)
+method.__file__    # =&gt; foo.rb
+method.__line__    # =&gt; 4
+-------------------------------
\ No newline at end of file</diff>
      <filename>distro/documentation.txt</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>e161746d73c55d528afee9add30b158811004582</id>
    </parent>
  </parents>
  <author>
    <name>Hongli Lai (Phusion)</name>
    <email>hongli@phusion.nl</email>
  </author>
  <url>http://github.com/FooBarWidget/rubyenterpriseedition/commit/218620b507cbcbe007d1e5abb3d42d1bba58f393</url>
  <id>218620b507cbcbe007d1e5abb3d42d1bba58f393</id>
  <committed-date>2009-06-29T12:37:08-07:00</committed-date>
  <authored-date>2009-06-29T12:25:12-07:00</authored-date>
  <message>Document the MBARI API.</message>
  <tree>e30ea3592674a3520844301d85501f842882f493</tree>
  <committer>
    <name>Hongli Lai (Phusion)</name>
    <email>hongli@phusion.nl</email>
  </committer>
</commit>
