Class: RubyIndexer::Entry::MethodAlias

Inherits:
RubyIndexer::Entry show all
Defined in:
lib/ruby_indexer/lib/ruby_indexer/entry.rb

Overview

A method alias is a resolved alias entry that points to the exact method target it refers to

Instance Attribute Summary collapse

Attributes inherited from RubyIndexer::Entry

#configuration, #location, #name, #uri, #visibility

Instance Method Summary collapse

Methods inherited from RubyIndexer::Entry

#comments, #file_name, #file_path, #private?, #protected?, #public?

Constructor Details

#initialize(target, unresolved_alias) ⇒ MethodAlias

: ((Member | MethodAlias) target, UnresolvedMethodAlias unresolved_alias) -> void



458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 458

def initialize(target, unresolved_alias)
  full_comments = +"Alias for #{target.name}\n"
  full_comments << "#{unresolved_alias.comments}\n"
  full_comments << target.comments

  super(
    unresolved_alias.configuration,
    unresolved_alias.new_name,
    unresolved_alias.uri,
    unresolved_alias.location,
    full_comments,
  )

  @target = target
  @owner = unresolved_alias.owner #: Entry::Namespace?
end

Instance Attribute Details

#ownerObject (readonly)

: Entry::Namespace?



455
456
457
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 455

def owner
  @owner
end

#targetObject (readonly)

: (Member | MethodAlias)



452
453
454
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 452

def target
  @target
end

Instance Method Details

#decorated_parametersObject

: -> String



476
477
478
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 476

def decorated_parameters
  @target.decorated_parameters
end

#formatted_signaturesObject

: -> String



481
482
483
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 481

def formatted_signatures
  @target.formatted_signatures
end

#signaturesObject

: -> Array



486
487
488
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 486

def signatures
  @target.signatures
end