Class: RBS::Types::Literal
- Inherits:
-
Object
- Object
- RBS::Types::Literal
- Includes:
- EmptyEachType, NoFreeVariables, NoSubst
- Defined in:
- lib/rbs/types.rb
Instance Attribute Summary collapse
-
#literal ⇒ Object
readonly
Returns the value of attribute literal.
-
#location ⇒ Object
readonly
Returns the value of attribute location.
Instance Method Summary collapse
- #==(other) ⇒ Object (also: #eql?)
- #hash ⇒ Object
-
#initialize(literal:, location:) ⇒ Literal
constructor
A new instance of Literal.
- #to_json(*a) ⇒ Object
- #to_s(level = 0) ⇒ Object
Methods included from EmptyEachType
Methods included from NoSubst
Methods included from NoFreeVariables
Constructor Details
#initialize(literal:, location:) ⇒ Literal
Returns a new instance of Literal.
908 909 910 911 |
# File 'lib/rbs/types.rb', line 908 def initialize(literal:, location:) @literal = literal @location = location end |
Instance Attribute Details
#literal ⇒ Object (readonly)
Returns the value of attribute literal.
905 906 907 |
# File 'lib/rbs/types.rb', line 905 def literal @literal end |
#location ⇒ Object (readonly)
Returns the value of attribute location.
906 907 908 |
# File 'lib/rbs/types.rb', line 906 def location @location end |
Instance Method Details
#==(other) ⇒ Object Also known as: eql?
913 914 915 |
# File 'lib/rbs/types.rb', line 913 def ==(other) other.is_a?(Literal) && other.literal == literal end |
#hash ⇒ Object
919 920 921 |
# File 'lib/rbs/types.rb', line 919 def hash self.class.hash ^ literal.hash end |
#to_json(*a) ⇒ Object
927 928 929 |
# File 'lib/rbs/types.rb', line 927 def to_json(*a) { class: :literal, literal: literal.inspect, location: location }.to_json(*a) end |
#to_s(level = 0) ⇒ Object
931 932 933 |
# File 'lib/rbs/types.rb', line 931 def to_s(level = 0) literal.inspect end |