Exception: RBS::MixinClassError
- Inherits:
-
DefinitionError
- Object
- StandardError
- BaseError
- DefinitionError
- RBS::MixinClassError
- Defined in:
- lib/rbs/errors.rb
Instance Attribute Summary collapse
-
#member ⇒ Object
readonly
Returns the value of attribute member.
-
#type_name ⇒ Object
readonly
Returns the value of attribute type_name.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(type_name:, member:) ⇒ MixinClassError
constructor
A new instance of MixinClassError.
- #location ⇒ Object
Constructor Details
#initialize(type_name:, member:) ⇒ MixinClassError
Returns a new instance of MixinClassError.
395 396 397 398 399 400 |
# File 'lib/rbs/errors.rb', line 395 def initialize(type_name:, member:) @type_name = type_name @member = member super "#{Location.to_string member.location}: Cannot #{mixin_name} a class `#{member.name}` in the definition of `#{type_name}`" end |
Instance Attribute Details
#member ⇒ Object (readonly)
Returns the value of attribute member.
393 394 395 |
# File 'lib/rbs/errors.rb', line 393 def member @member end |
#type_name ⇒ Object (readonly)
Returns the value of attribute type_name.
392 393 394 |
# File 'lib/rbs/errors.rb', line 392 def type_name @type_name end |
Class Method Details
.check!(type_name:, env:, member:) ⇒ Object
406 407 408 409 410 |
# File 'lib/rbs/errors.rb', line 406 def self.check!(type_name:, env:, member:) if env.class_decl?(member.name) raise new(type_name: type_name, member: member) end end |
Instance Method Details
#location ⇒ Object
402 403 404 |
# File 'lib/rbs/errors.rb', line 402 def location member.location end |