class RDoc::RD

RDoc::RD 实现了 rdtool gem 中的 RD 格式。

要选择 RD 作为你唯一的默认格式,请参阅 RDoc::Options 中的“已保存选项”,了解如何设置 .doc_options 文件来存储你的项目默认设置。

许可证

生成 RDoc::RD::BlockParserRDoc::RD::InlineParser 的语法包含在 Ruby 许可下的 RDoc 中。

你可以在 github.com/uwabami/rdtool/ 找到 rdtool 的原始源代码。

你可以在 Ruby 许可或 GPL 下使用、重新分发或更改这些文件。

  1. 你可以不受限制地制作和分发该软件源代码的逐字副本,前提是你复制所有原始版权声明和相关免责声明。

  2. 你可以以任何方式修改你的软件副本,前提是你至少执行以下操作之一

    1. 将你的修改放入公共领域或以其他方式使其自由可用,例如将所述修改发布到 Usenet 或类似的媒介,或者允许作者将你的修改包含在软件中。

    2. 仅在你的公司或组织内部使用修改后的软件。

    3. 为非标准二进制文件赋予非标准名称,并提供关于从何处获取原始软件分发的说明。

    4. 与作者达成其他分发协议。

  3. 你可以以目标代码或二进制形式分发该软件,前提是你至少执行以下操作之一

    1. 分发该软件的二进制文件和库文件,并提供有关从何处获取原始分发的说明(在手册页或类似文件中)。

    2. 随分发一起提供该软件的机器可读源代码。

    3. 为非标准二进制文件赋予非标准名称,并提供关于从何处获取原始软件分发的说明。

    4. 与作者达成其他分发协议。

  4. 你可以修改软件的一部分并将其包含到任何其他软件(可能是商业软件)中。 但是,分发中的某些文件不是作者编写的,因此它们不受这些条款的约束。

    有关这些文件及其复制条件的列表,请参阅文件 LEGAL。

  5. 作为软件的输入或输出提供的脚本和库文件不会自动落入软件的版权之下,而是属于生成它们的人,并且可以商业出售,并且可以与此软件聚合。

  6. 本软件按“原样”提供,不提供任何明示或暗示的担保,包括但不限于对适销性和特定用途适用性的暗示担保。

racc/parser.rb 结束

公共类方法

parse(rd) 点击切换源代码

解析 rd 源代码并返回一个 RDoc::Markup::Document。 如果缺少 =begin=end 行,则将添加它们。

# File rdoc/rd.rb, line 78
def self.parse rd
  rd = rd.lines.to_a

  if rd.find { |i| /\S/ === i } and !rd.find{|i| /^=begin\b/ === i } then
    rd.unshift("=begin\n").push("=end\n")
  end

  parser = RDoc::RD::BlockParser.new
  document = parser.parse rd

  # isn't this always true?
  document.parts.shift if RDoc::Markup::BlankLine === document.parts.first
  document.parts.pop   if RDoc::Markup::BlankLine === document.parts.last

  document
end