[前][次][番号順一覧][スレッド一覧]

ruby-changes:3430

From: ko1@a...
Date: 7 Jan 2008 11:52:31 +0900
Subject: [ruby-changes:3430] drbrain - Ruby:r14923 (trunk): Merge documentation from the same class on ri generation.

drbrain	2008-01-07 11:52:15 +0900 (Mon, 07 Jan 2008)

  New Revision: 14923

  Modified files:
    trunk/ChangeLog
    trunk/lib/rdoc/generators/ri_generator.rb
    trunk/lib/rdoc/options.rb

  Log:
    Merge documentation from the same class on ri generation.
    Fixes bug where documentation could disappear.
    
    Fix typo in lib/rdoc/options.rb

  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/ChangeLog?r1=14923&r2=14922&diff_format=u
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/lib/rdoc/options.rb?r1=14923&r2=14922&diff_format=u
  http://svn.ruby-lang.org/cgi-bin/viewvc.cgi/trunk/lib/rdoc/generators/ri_generator.rb?r1=14923&r2=14922&diff_format=u

Index: ChangeLog
===================================================================
--- ChangeLog	(revision 14922)
+++ ChangeLog	(revision 14923)
@@ -1,3 +1,14 @@
+Mon Jan  7 11:51:49 2008  Eric Hodel  <drbrain@s...>
+
+	* lib/rdoc/generators/ri_generator.rb:  Merge documentation from the
+	  same class on output.  Fixes bug where documentation could
+	  disappear.
+
+	* lib/rdoc/options.rb:  Fix typo.
+
+	* lib/rdoc/generators/*: Clean up some namespacing and make RDoc
+	  consistent.
+
 Mon Jan  7 11:44:45 2008  Tanaka Akira  <akr@f...>
 
 	* encoding.c (rb_enc_internal_get_index): extracted from
Index: lib/rdoc/generators/ri_generator.rb
===================================================================
--- lib/rdoc/generators/ri_generator.rb	(revision 14922)
+++ lib/rdoc/generators/ri_generator.rb	(revision 14923)
@@ -28,6 +28,8 @@
     @ri_writer = RI::RiWriter.new(".")
     @markup    = SM::SimpleMarkup.new
     @to_flow   = SM::ToFlow.new
+
+    @generated = {}
   end
 
   ##
@@ -205,17 +207,21 @@
       end
     end
 
-    if old_cls.nil?
-      # no merge: simply overwrite
-      @ri_writer.remove_class(cls_desc)
-      @ri_writer.add_class(cls_desc)
-    else
-      # existing class: merge in
-      old_desc = rdr.get_class(old_cls)
+    prev_cls = @generated[cls_desc.full_name]
 
-      old_desc.merge_in(cls_desc)
-      @ri_writer.add_class(old_desc)
+    if old_cls and not prev_cls then
+      old_desc = rdr.get_class old_cls
+      cls_desc.merge_in old_desc
     end
+
+    if prev_cls then
+      cls_desc.merge_in prev_cls
+    end
+
+    @generated[cls_desc.full_name] = cls_desc
+
+    @ri_writer.remove_class cls_desc
+    @ri_writer.add_class cls_desc
   end
 
 end
Index: lib/rdoc/options.rb
===================================================================
--- lib/rdoc/options.rb	(revision 14922)
+++ lib/rdoc/options.rb	(revision 14923)
@@ -352,7 +352,7 @@
       @op_name = nil
       @show_all = false
       @main_page = nil
-      @marge     = false
+      @merge     = false
       @exclude   = []
       @quiet = false
       @generator_name = 'html'

--
ML: ruby-changes@q...
Info: http://www.atdot.net/~ko1/quickml

[前][次][番号順一覧][スレッド一覧]