diff options
| author | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-04-15 19:54:09 +0900 |
|---|---|---|
| committer | Yukihiro "Matz" Matsumoto <[email protected]> | 2014-04-15 19:54:09 +0900 |
| commit | 216b051756bb44ff3bbe7d0d96e1abc51ecc6078 (patch) | |
| tree | f05b30e5da8ef26ac2185da0158fbb05e0016893 /doc/language/mrbdoc/lib/mrbdoc_docu.rb | |
| parent | 5138f62d6ba666dc0cb43618f407701b0414040e (diff) | |
| parent | c53846a22a48781ea2e692b7b8facaab359f9b2e (diff) | |
| download | mruby-216b051756bb44ff3bbe7d0d96e1abc51ecc6078.tar.gz mruby-216b051756bb44ff3bbe7d0d96e1abc51ecc6078.zip | |
Merge pull request #2063 from bovi/update_language_doc
Improve Language Documentation
Diffstat (limited to 'doc/language/mrbdoc/lib/mrbdoc_docu.rb')
| -rw-r--r-- | doc/language/mrbdoc/lib/mrbdoc_docu.rb | 45 |
1 files changed, 25 insertions, 20 deletions
diff --git a/doc/language/mrbdoc/lib/mrbdoc_docu.rb b/doc/language/mrbdoc/lib/mrbdoc_docu.rb index 116228927..4dc20a5a3 100644 --- a/doc/language/mrbdoc/lib/mrbdoc_docu.rb +++ b/doc/language/mrbdoc/lib/mrbdoc_docu.rb @@ -1,18 +1,18 @@ class MRBDoc - def write_documentation dir, &block + def write_documentation dir, cfg, &block block.call "MRBDOC\twrite to #{File.expand_path(dir)}" - write(dir) do |progress| + write(dir, cfg) do |progress| block.call progress end end private - def write dir - File.open(File.expand_path('Core.md', dir), 'w+') do |io| - print_core_classes(io) - print_core_modules(io) + def write dir, cfg + File.open(File.expand_path('Core.md', dir), 'wb+') do |io| + print_core_classes(io, cfg) + print_core_modules(io, cfg) end end @@ -32,7 +32,7 @@ class MRBDoc core_list end - def print_core_classes(io) + def print_core_classes(io, cfg) core_list = get_core_list :each_class io.puts "# Core Classes\n\n" core_list.sort.each do |name, hsh| @@ -51,12 +51,12 @@ ISO Code | Mixins | Source File #{iso} | #{mixins} | #{file} CLASS - print_class_methods(io, hsh) - print_methods(io, hsh) + print_class_methods(io, hsh, cfg) + print_methods(io, hsh, cfg) end end - def print_core_modules(io) + def print_core_modules(io, cfg) core_list = get_core_list :each_module io.puts "# Core Modules\n\n" core_list.sort.each do |name, hsh| @@ -73,29 +73,34 @@ ISO Code | Source File #{iso} | #{file} CLASS - print_class_methods(io, hsh) - print_methods(io, hsh) + print_class_methods(io, hsh, cfg) + print_methods(io, hsh, cfg) end end - def print_methods(io, hsh) + def print_methods(io, hsh, cfg) return unless hsh[:methods].size > 0 io.puts "### Methods\n\n" hsh[:methods].sort.each do |met_name, met_hsh| - print_method(io, met_name, met_hsh) + print_method(io, met_name, met_hsh, cfg) end end - def print_class_methods(io, hsh) + def print_class_methods(io, hsh, cfg) return unless hsh[:class_methods].size > 0 io.puts "### Class Methods\n\n" hsh[:class_methods].sort.each do |met_name, met_hsh| - print_method(io, met_name, met_hsh) + print_method(io, met_name, met_hsh, cfg) end end - def print_method(io, met_name, met_hsh) - line_no = find_c_func(met_hsh[:c_func])[:line_no] + def print_method(io, met_name, met_hsh, cfg) + if cfg[:print_line_no] + line_no_head = '| Line' + line_no = "| #{find_c_func(met_hsh[:c_func])[:line_no]}" + else + line_no, line_no_head = '', '' + end file = find_c_file(met_hsh[:rb_class], met_hsh[:c_func]) file = file.split("#{@dir}/")[1] iso = met_hsh[:iso] @@ -104,9 +109,9 @@ CLASS io.puts <<METHOD #### #{met_name} -ISO Code | Source File | C Function | Line +ISO Code | Source File | C Function #{line_no_head} --- | --- | --- -#{iso} | #{file} | #{met_hsh[:c_func]} | #{line_no} +#{iso} | #{file} | #{met_hsh[:c_func]} #{line_no} METHOD end |
