diff options
Diffstat (limited to 'doc/language/mrbdoc/lib/mrbdoc_docu.rb')
| -rw-r--r-- | doc/language/mrbdoc/lib/mrbdoc_docu.rb | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/doc/language/mrbdoc/lib/mrbdoc_docu.rb b/doc/language/mrbdoc/lib/mrbdoc_docu.rb deleted file mode 100644 index f6f327804..000000000 --- a/doc/language/mrbdoc/lib/mrbdoc_docu.rb +++ /dev/null @@ -1,118 +0,0 @@ -class MRBDoc - def write_documentation dir, cfg, &block - block.call "MRBDOC\twrite to #{File.expand_path(dir)}" - - write(dir, cfg) do |progress| - block.call progress - end - end - - private - - 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 - - def get_core_list id - core_list = {} - each_file do |file_path, mrb_file| - mrb_file.send(id) do |name, cls_hsh| - core_list[name] = {:data => cls_hsh, :methods => {}, :class_methods => {}} - mrb_file.each_method name do |met_name, met_hsh| - core_list[name][:methods][met_name] = met_hsh - end - mrb_file.each_class_method name do |met_name, met_hsh| - core_list[name][:class_methods][met_name] = met_hsh - end - end - end - core_list - end - - 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| - file = find_c_file_by_class(name) - file = file.split("#{@dir}/")[1] - iso = hsh[:data][:iso] - iso = 'n/a' if iso.nil? or iso == '' - mixins = hsh[:data][:include].join(', ') unless hsh[:data][:include].nil? - mixins = 'n/a' if mixins.nil? or mixins == '' - - io.puts <<CLASS -## #{name} - -ISO Code | Mixins | Source File ---- | --- | --- -#{iso} | #{mixins} | #{file} - -CLASS - print_class_methods(io, hsh, cfg) - print_methods(io, hsh, cfg) - end - end - - 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| - file = find_c_file_by_module(name) - file = file.split("#{@dir}/")[1] - iso = hsh[:data][:iso] - iso = 'n/a' if iso.nil? or iso == '' - - io.puts <<CLASS -## #{name} - -ISO Code | Source File ---- | --- -#{iso} | #{file} - -CLASS - print_class_methods(io, hsh, cfg) - print_methods(io, hsh, cfg) - end - end - - 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, cfg) - end - end - - 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, cfg) - end - end - - 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] - iso = 'n/a' if iso.nil? or iso == '' - - io.puts <<METHOD -#### #{met_name} - -ISO Code | Source File | C Function#{line_no_head} ---- | --- | --- -#{iso} | #{file} | #{met_hsh[:c_func]}#{line_no} - -METHOD - end -end |
