Class: RBS::Annotate::Annotations::Source

Inherits:
Object
  • Object
show all
Defined in:
lib/rbs/annotate/annotations.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(annotation:, include: nil, skip: nil) ⇒ Source

Returns a new instance of Source.



29
30
31
32
33
# File 'lib/rbs/annotate/annotations.rb', line 29

def initialize(annotation:, include: nil, skip: nil)
  @annotation = annotation
  @include_source = include
  @skip_source = skip
end

Instance Attribute Details

#annotationObject (readonly)

Returns the value of attribute annotation.



26
27
28
# File 'lib/rbs/annotate/annotations.rb', line 26

def annotation
  @annotation
end

#include_sourceObject (readonly)

Returns the value of attribute include_source.



27
28
29
# File 'lib/rbs/annotate/annotations.rb', line 27

def include_source
  @include_source
end

#skip_sourceObject (readonly)

Returns the value of attribute skip_source.



27
28
29
# File 'lib/rbs/annotate/annotations.rb', line 27

def skip_source
  @skip_source
end

Instance Method Details

#==(other) ⇒ Object Also known as: eql?



39
40
41
42
43
44
# File 'lib/rbs/annotate/annotations.rb', line 39

def ==(other)
  other.is_a?(Source) &&
    other.annotation == annotation &&
    other.include_source == include_source &&
    other.skip_source == skip_source
end

#hashObject



35
36
37
# File 'lib/rbs/annotate/annotations.rb', line 35

def hash
  self.class.hash ^ annotation.hash ^ include_source.hash ^ skip_source.hash
end