class RDoc::PuppetModule

PuppetModule holds a Puppet Module This is mapped to an HTMLPuppetModule it leverage the RDoc (ruby) module infrastructure

Attributes

facts[RW]
plugins[RW]

Public Instance Methods

add_fact(fact) click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 70
def add_fact(fact)
  if PUPPET_RDOC_VERSION == 1
    add_to(@facts, fact)
  else
    add_fact_rdoc2(fact)
  end
end
add_fact_rdoc2(fact) click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 78
def add_fact_rdoc2(fact)
  @fact_container ||= add_module(NormalModule, "__facts__")
  confine_str = fact.confine.empty? ? '' : fact.confine.to_s
  const = Constant.new(fact.name, confine_str, fact.comment)
  @fact_container.add_constant(const)
end
add_node(name, superclass) click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 85
def add_node(name, superclass)
  if PUPPET_RDOC_VERSION == 1
    add_node_rdoc1(name, superclass)
  else
    add_node_rdoc2(name, superclass)
  end
end
add_node_rdoc1(name, superclass) click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 93
def add_node_rdoc1(name, superclass)
  cls = @nodes[name]
  unless cls
    cls = PuppetNode.new(name, superclass)
    @nodes[name] = cls if !@done_documenting
    cls.parent = self
    cls.section = @current_section
  end
  cls
end
add_node_rdoc2(name,superclass) click to toggle source

Adds a module called __nodes__ and adds nodes to it as classes

# File lib/puppet/util/rdoc/code_objects.rb, line 106
def add_node_rdoc2(name,superclass)
  if cls = @nodes[name]
    return cls
  end
  @node_container ||= add_module(NormalModule, "__nodes__")
  cls = @node_container.add_class(PuppetNode, name, superclass)
  @nodes[name] = cls if !@done_documenting
  cls
end
add_plugin(plugin) click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 44
def add_plugin(plugin)
  if PUPPET_RDOC_VERSION == 1
    add_to(@plugins, plugin)
  else
    add_plugin_rdoc2(plugin)
  end
end
add_plugin_rdoc2(plugin) click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 52
def add_plugin_rdoc2(plugin)
  name = plugin.name
  type = plugin.type
  meth = AnyMethod.new("*args", name)
  meth.params = "(*args)"
  meth.visibility = :public
  meth.document_self = true
  meth.singleton = false
  meth.comment = plugin.comment
  if type == 'function'
    @function_container ||= add_module(NormalModule, "__functions__")
    @function_container.add_method(meth)
  elsif type == 'type'
    @type_container ||= add_module(NormalModule, "__types__")
    @type_container.add_method(meth)
  end
end
each_fact() { |c| ... } click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 116
def each_fact
  @facts.each {|c| yield c}
end
each_node() { |c| ... } click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 124
def each_node
  @nodes.each {|c| yield c}
end
each_plugin() { |c| ... } click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 120
def each_plugin
  @plugins.each {|c| yield c}
end
nodes() click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 128
def nodes
  @nodes.values
end

Public Class Methods

new(name,superclass=nil) click to toggle source
# File lib/puppet/util/rdoc/code_objects.rb, line 37
def initialize(name,superclass=nil)
  @facts = []
  @plugins = []
  @nodes = {}
  super(name,superclass)
end