Class RDoc::AnyMethod

  1. lib/rdoc/code_objects.rb
ClassModule NormalModule AnonClass SingleClass NormalClass AnyMethod GhostMethod MetaMethod CodeObject Context Alias Attr Constant Require Include TopLevel RubyLex IRB RuntimeError Error Error Token TkUnknownChar TkVal TkNode TkOp TkId TkError TkOPASGN TkKW AttributeFormatter HtmlFormatter OverstrikeFormatter AnsiFormatter NamedThing AliasName IncludedModule Constant Attribute MethodSummary DefaultDisplay ClassEntry TopLevelEntry Formatter SimpleFormatter Description MethodDescription ModuleDescription ClassDescription HTML XML HTMLInOne CHM Method Context Class File Generator::MarkUp TEXINFO SimpleElement Port Element Node Subgraph Edge Digraph Stats Parser Options RDoc TemplatePage Markup Diagram NameDescriptor Cache Reader Writer Driver MethodEntry RI TexinfoTemplate AllReferences RubyToken Display Paths RI MarkUp Generator TokenStream DOT RDoc dot/f_5.png

AnyMethod is the base class for objects representing methods

Methods

public class

  1. new

public instance

  1. <=>
  2. add_alias
  3. inspect
  4. param_seq
  5. to_s

Included modules

  1. TokenStream

Attributes

aliases [R] list of other names for this method
block_params [RW]
call_seq [RW]
dont_rename_initialize [RW]
is_alias_for [RW] method we’re aliasing
name [RW]
singleton [RW]
text [R]
visibility [RW]

Public class methods

new (text, name)
[show source]
# File lib/rdoc/code_objects.rb, line 856
    def initialize(text, name)
      super()
      @text = text
      @name = name
      @token_stream  = nil
      @visibility    = :public
      @dont_rename_initialize = false
      @block_params  = nil
      @aliases       = []
      @is_alias_for  = nil
      @comment = ""
      @call_seq = nil
    end

Public instance methods

<=> (other)
[show source]
# File lib/rdoc/code_objects.rb, line 870
    def <=>(other)
      @name <=> other.name
    end
add_alias (method)
[show source]
# File lib/rdoc/code_objects.rb, line 874
    def add_alias(method)
      @aliases << method
    end
inspect ()
[show source]
# File lib/rdoc/code_objects.rb, line 878
    def inspect
      alias_for = @is_alias_for ? " (alias for #{@is_alias_for.name})" : nil
      "#<%s:0x%x %s%s%s (%s)%s>" % [
        self.class, object_id,
        parent_name,
        singleton ? '::' : '#',
        name,
        visibility,
        alias_for,
      ]
    end
param_seq ()
[show source]
# File lib/rdoc/code_objects.rb, line 890
    def param_seq
      params = params.gsub(/\s*\#.*/, '')
      params = params.tr("\n", " ").squeeze(" ")
      params = "(#{params})" unless p[0] == ?(

      if block = block_params then # yes, =
        # If this method has explicit block parameters, remove any explicit
        # &block
        params.sub!(/,?\s*&\w+/)

        block.gsub!(/\s*\#.*/, '')
        block = block.tr("\n", " ").squeeze(" ")
        if block[0] == ?(
          block.sub!(/^\(/, '').sub!(/\)/, '')
        end
        params << " { |#{block}| ... }"
      end

      params
    end
to_s ()
[show source]
# File lib/rdoc/code_objects.rb, line 911
    def to_s
      res = self.class.name + ": " + @name + " (" + @text + ")\n"
      res << @comment.to_s
      res
    end