Class RDoc::AnyMethod
In: lib/rdoc/code_objects.rb
Parent: CodeObject

AnyMethod is the base class for objects representing methods

Methods

<=>   add_alias   new   param_seq   to_s  

Included Modules

TokenStream

Attributes

aliases  [R] 
block_params  [RW] 
call_seq  [RW] 
dont_rename_initialize  [RW] 
is_alias_for  [RW] 
name  [RW] 
singleton  [RW] 
visibility  [RW] 

Public Class methods

[Source]

     # File lib/rdoc/code_objects.rb, line 636
636:     def initialize(text, name)
637:       super()
638:       @text = text
639:       @name = name
640:       @token_stream  = nil
641:       @visibility    = :public
642:       @dont_rename_initialize = false
643:       @block_params  = nil
644:       @aliases       = []
645:       @is_alias_for  = nil
646:       @comment = ""
647:       @call_seq = nil
648:     end

Public Instance methods

[Source]

     # File lib/rdoc/code_objects.rb, line 650
650:     def <=>(other)
651:       @name <=> other.name
652:     end

[Source]

     # File lib/rdoc/code_objects.rb, line 682
682:     def add_alias(method)
683:       @aliases << method
684:     end

[Source]

     # File lib/rdoc/code_objects.rb, line 660
660:     def param_seq
661:       p = params.gsub(/\s*\#.*/, '')
662:       p = p.tr("\n", " ").squeeze(" ")
663:       p = "(" + p + ")" unless p[0] == ?(
664: 
665:       if (block = block_params)
666:         # If this method has explicit block parameters, remove any
667:         # explicit &block
668: $stderr.puts p
669:         p.sub!(/,?\s*&\w+/)
670: $stderr.puts p
671: 
672:         block.gsub!(/\s*\#.*/, '')
673:         block = block.tr("\n", " ").squeeze(" ")
674:         if block[0] == ?(
675:           block.sub!(/^\(/, '').sub!(/\)/, '')
676:         end
677:         p << " {|#{block}| ...}"
678:       end
679:       p
680:     end

[Source]

     # File lib/rdoc/code_objects.rb, line 654
654:     def to_s
655:       res = self.class.name + ": " + @name + " (" + @text + ")\n"
656:       res << @comment.to_s
657:       res
658:     end

[Validate]