class Syskit::NonSymmetricSpecializationConstraint

Exception raised in SpecializationManager when it detects that a constraint added with {SpecializationManager#add_specialization_constraint} is not symmetric

Attributes

specializations[R]

The validator arguments that trigger the bug

validator[R]

The constraint block

Public Class Methods

new(validator, specializations) click to toggle source
# File lib/syskit/exceptions.rb, line 861
def initialize(validator, specializations)
    @validator, @specializations = validator, specializations
end

Public Instance Methods

pretty_print(pp) click to toggle source
# File lib/syskit/exceptions.rb, line 865
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