module RDoc
RDoc
produces documentation for Ruby source files by parsing the source and extracting the definition for classes, modules, methods, includes and requires. It associates these with optional documentation contained in an immediately preceding comment block then renders the result using an output formatter.
For a simple introduction to writing or generating documentation using RDoc
see the README.
Roadmap¶ ↑
If you think you found a bug in RDoc
see Bugs at CONTRIBUTING
If you want to use RDoc
to create documentation for your Ruby source files, see RDoc::Markup
and refer to rdoc --help
for command line usage.
If you want to set the default markup format see Markup Formats at RDoc::Markup
If you want to store rdoc configuration in your gem (such as the default markup format) see Saved Options at RDoc::Options
If you want to write documentation for Ruby files see RDoc::Parser::Ruby
If you want to write documentation for extensions written in C see RDoc::Parser::C
If you want to generate documentation using rake
see RDoc::Task
.
If you want to drive RDoc
programmatically, see RDoc::RDoc
.
If you want to use the library to format text blocks into HTML or other formats, look at RDoc::Markup
.
If you want to make an RDoc
plugin such as a generator or directive handler see RDoc::RDoc
.
If you want to write your own output generator see RDoc::Generator
.
If you want an overview of how RDoc
works see Bugs at CONTRIBUTING
Credits¶ ↑
RDoc
is currently being maintained by Eric Hodel <drbrain@segment7.net>.
Dave Thomas <dave@pragmaticprogrammer.com> is the original author of RDoc
.
-
The Ruby parser in rdoc/parse.rb is based heavily on the outstanding work of Keiju ISHITSUKA of Nippon
Rational
Inc, who produced the Ruby parser for irb and the rtags package.
This class is referenced by RubyGems to create documents. All implementations are moved to the above RubyGemsHook
.
This class does nothing when this RDoc
is installed as a normal gem or a bundled gem.
This class does generate/remove documents for compatibility when this RDoc
is installed as a default gem.
We can remove this when all maintained RubyGems remove ‘rubygems/rdoc.rb`.
Constants
- ATTR_MODIFIERS
-
RDoc
modifiers for attributes - CLASS_MODIFIERS
-
RDoc
modifiers for classes - CONSTANT_MODIFIERS
-
RDoc
modifiers for constants - DOT_DOC_FILENAME
-
Name of the dotfile that contains the description of files to be processed in the current directory
- GENERAL_MODIFIERS
-
General
RDoc
modifiers - KNOWN_CLASSES
-
Ruby’s built-in classes, modules and exceptions
- METHOD_MODIFIERS
-
RDoc
modifiers for methods - VERSION
-
RDoc
version you are using - VISIBILITIES
-
Method
visibilities
Public Class Methods
Source
# File lib/rdoc.rb, line 132 def self.home rdoc_dir = begin File.expand_path('~/.rdoc') rescue ArgumentError end if File.directory?(rdoc_dir) rdoc_dir else require 'fileutils' begin # XDG xdg_data_home = ENV["XDG_DATA_HOME"] || File.join(File.expand_path("~"), '.local', 'share') unless File.exist?(xdg_data_home) FileUtils.mkdir_p xdg_data_home end File.join xdg_data_home, "rdoc" rescue Errno::EACCES end end end
Searches and returns the directory for settings.
-
$HOME/.rdoc
directory, if it exists. -
The
rdoc
directory under the path specified by theXDG_DATA_HOME
environment variable, if it is set. -
$HOME/.local/share/rdoc
directory.
Other than the home directory, the containing directory will be created automatically.
Source
# File lib/rdoc.rb, line 105 def self.load_yaml begin gem 'psych' rescue NameError => e # --disable-gems raise unless e.name == :gem rescue Gem::LoadError end begin require 'psych' rescue ::LoadError ensure require 'yaml' end end
Loads the best available YAML
library.