Exception: Syskit::NonSymmetricSpecializationConstraint
- Defined in:
- lib/syskit/exceptions.rb
Overview
Exception raised in SpecializationManager when it detects that a constraint added with SpecializationManager#add_specialization_constraint is not symmetric
Instance Attribute Summary collapse
-
#specializations ⇒ Object
readonly
The validator arguments that trigger the bug.
-
#validator ⇒ Object
readonly
The constraint block.
Instance Method Summary collapse
-
#initialize(validator, specializations) ⇒ NonSymmetricSpecializationConstraint
constructor
A new instance of NonSymmetricSpecializationConstraint.
- #pretty_print(pp) ⇒ Object
Constructor Details
#initialize(validator, specializations) ⇒ NonSymmetricSpecializationConstraint
Returns a new instance of NonSymmetricSpecializationConstraint
865 866 867 |
# File 'lib/syskit/exceptions.rb', line 865 def initialize(validator, specializations) @validator, @specializations = validator, specializations end |
Instance Attribute Details
#specializations ⇒ Object (readonly)
The validator arguments that trigger the bug
863 864 865 |
# File 'lib/syskit/exceptions.rb', line 863 def specializations @specializations end |
#validator ⇒ Object (readonly)
The constraint block
861 862 863 |
# File 'lib/syskit/exceptions.rb', line 861 def validator @validator end |
Instance Method Details
#pretty_print(pp) ⇒ Object
869 870 871 872 873 874 875 |
# File 'lib/syskit/exceptions.rb', line 869 def pretty_print(pp) pp.text "the specialization constraint block #{validator} is not symmetric:" pp.breakable pp.text " #{validator}[#{specializations[0]},#{specializations[1]}] => #{validator[*specializations]}" pp.breakable pp.text " #{validator}[#{specializations[1]},#{specializations[0]}] => #{validator[*specializations.reverse]}" end |