Exception: RBS::NoTypeFoundError

Inherits:
ErrorBase
  • Object
show all
Defined in:
lib/rbs/errors.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(type_name:, location:) ⇒ NoTypeFoundError

Returns a new instance of NoTypeFoundError.



85
86
87
88
89
90
# File 'lib/rbs/errors.rb', line 85

def initialize(type_name:, location:)
  @type_name = type_name
  @location = location

  super "#{Location.to_string location}: Could not find #{type_name}"
end

Instance Attribute Details

#locationObject (readonly)

Returns the value of attribute location.



83
84
85
# File 'lib/rbs/errors.rb', line 83

def location
  @location
end

#type_nameObject (readonly)

Returns the value of attribute type_name.



82
83
84
# File 'lib/rbs/errors.rb', line 82

def type_name
  @type_name
end

Class Method Details

.check!(type_name, env:, location:) ⇒ Object



92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
# File 'lib/rbs/errors.rb', line 92

def self.check!(type_name, env:, location:)
  dic = case
        when type_name.class?
          env.class_decls
        when type_name.alias?
          env.alias_decls
        when type_name.interface?
          env.interface_decls
        else
          raise
        end

  dic.key?(type_name) or raise new(type_name: type_name, location: location)

  type_name
end