<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array">
    <added>
      <filename>doc/classes/Rfactor.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/Code.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/Code.src/M000003.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/Code.src/M000004.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/LineFinder.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/LineFinder.src/M000007.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/LineFinder.src/M000008.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/MethodLineFinderProcessor.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/MethodLineFinderProcessor.src/M000005.html</filename>
    </added>
    <added>
      <filename>doc/classes/Rfactor/MethodLineFinderProcessor.src/M000006.html</filename>
    </added>
    <added>
      <filename>doc/classes/String.html</filename>
    </added>
    <added>
      <filename>doc/classes/String.src/M000001.html</filename>
    </added>
    <added>
      <filename>doc/classes/String.src/M000002.html</filename>
    </added>
    <added>
      <filename>doc/created.rid</filename>
    </added>
    <added>
      <filename>doc/files/History_txt.html</filename>
    </added>
    <added>
      <filename>doc/files/PostInstall_txt.html</filename>
    </added>
    <added>
      <filename>doc/files/README_rdoc.html</filename>
    </added>
    <added>
      <filename>doc/files/lib/rfactor/code_rb.html</filename>
    </added>
    <added>
      <filename>doc/files/lib/rfactor/line_finder_rb.html</filename>
    </added>
    <added>
      <filename>doc/files/lib/rfactor/string_ext_rb.html</filename>
    </added>
    <added>
      <filename>doc/files/lib/rfactor_rb.html</filename>
    </added>
    <added>
      <filename>doc/fr_class_index.html</filename>
    </added>
    <added>
      <filename>doc/fr_file_index.html</filename>
    </added>
    <added>
      <filename>doc/fr_method_index.html</filename>
    </added>
    <added>
      <filename>doc/index.html</filename>
    </added>
    <added>
      <filename>doc/rdoc-style.css</filename>
    </added>
  </added>
  <modified type="array">
    <modified>
      <diff>@@ -1,6 +1,15 @@
 $:.unshift(File.dirname(__FILE__)) unless
   $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
 
+# == Usage
+#
+# The main class to be used is Rfactor::Code
+# 
+# Example:
+#   code = Rfactor::Code.new(document)
+#   new_code = code.extract_method :name =&gt; 'new_method',
+#                :start =&gt; 3,
+#                :end =&gt; 5
 module Rfactor
   VERSION = '0.0.2'
 end</diff>
      <filename>lib/rfactor.rb</filename>
    </modified>
    <modified>
      <diff>@@ -2,15 +2,27 @@ module Rfactor
   
   class Code
     
+    # code: String with code to be refactored
     def initialize(code)
       @code = code
-      @ast = RubyParser.new.parse(code)
       @line_finder = LineFinder.new(@ast)
     end
     
+    # == Required arguments
+    #
+    # You must pass them inside a Hash:
+    #
+    # * :name =&gt; 'the new method name'
+    # * :start =&gt; line number where the code to be extracted starts
+    # * :end =&gt; line number where the code to be extracted ends
+    #
+    # == Example
+    #
+    #   code.extract_method :name =&gt; 'common_code', :start =&gt; 3, :end =&gt; 7
     def extract_method(args)
       raise &quot;:name is required&quot; unless args.has_key?(:name)
       
+      ast = RubyParser.new.parse(code)
       method_lines = @line_finder.method_lines(args[:start])
       selected_lines = Range.new(args[:start], args[:end])
       
@@ -19,7 +31,7 @@ module Rfactor
       added = false
       identation = 0
       
-      @code.each_with_index do |line, n|
+      code.each_with_index do |line, n|
         line_number = n + 1 # not 0-based
         if line_number == method_lines.first
           identation = extract_identation_level_from line</diff>
      <filename>lib/rfactor/code.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>982af407e0dd032c8b3e83a6ab53dc1d0e13df49</id>
    </parent>
  </parents>
  <author>
    <name>Fabio Kung</name>
    <email>fabio.kung@gmail.com</email>
  </author>
  <url>http://github.com/fabiokung/rfactor/commit/17cd5e9121015a00f569d6e1e4b579aadf584266</url>
  <id>17cd5e9121015a00f569d6e1e4b579aadf584266</id>
  <committed-date>2009-02-05T18:49:42-08:00</committed-date>
  <authored-date>2009-02-05T18:49:42-08:00</authored-date>
  <message>some documentation</message>
  <tree>368d64e3e8afc2a64e03dc17c65e74f16fab5cf0</tree>
  <committer>
    <name>Fabio Kung</name>
    <email>fabio.kung@gmail.com</email>
  </committer>
</commit>
