Exception: RBS::MixinClassError
- Inherits:
-
DefinitionError
- Object
- StandardError
- BaseError
- DefinitionError
- RBS::MixinClassError
- Includes:
- DetailedMessageable
- 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
Methods included from DetailedMessageable
Constructor Details
#initialize(type_name:, member:) ⇒ MixinClassError
Returns a new instance of MixinClassError.
441 442 443 444 445 446 |
# File 'lib/rbs/errors.rb', line 441 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.
439 440 441 |
# File 'lib/rbs/errors.rb', line 439 def member @member end |
#type_name ⇒ Object (readonly)
Returns the value of attribute type_name.
438 439 440 |
# File 'lib/rbs/errors.rb', line 438 def type_name @type_name end |
Class Method Details
.check!(type_name:, env:, member:) ⇒ Object
452 453 454 455 456 |
# File 'lib/rbs/errors.rb', line 452 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
448 449 450 |
# File 'lib/rbs/errors.rb', line 448 def location member.location end |