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

#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



453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 453

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.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?



450
451
452
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 450

def owner
  @owner
end

#targetObject (readonly)

: (Member | MethodAlias)



447
448
449
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 447

def target
  @target
end

Instance Method Details

#decorated_parametersObject

: -> String



470
471
472
# File 'lib/ruby_indexer/lib/ruby_indexer/entry.rb', line 470

def decorated_parameters
  @target.decorated_parameters
end

#formatted_signaturesObject

: -> String



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

def formatted_signatures
  @target.formatted_signatures
end

#signaturesObject

: -> Array



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

def signatures
  @target.signatures
end