public override void Accept(IConstraintVisitor visitor) => visitor.VisitDeclConstraint(Pattern);
public override void Accept(IConstraintVisitor visitor) => visitor.VisitDisjunctionConstraint(Constraints);
public override void Accept(IConstraintVisitor visitor) => visitor.VisitStructuredConstraint();
public override void Accept(IConstraintVisitor visitor) => visitor.VisitApplicableConstraint();
public override void Accept(IConstraintVisitor visitor) => visitor.VisitPrimTypeConstraint(PrimType);
public override void Accept(IConstraintVisitor visitor) => visitor.VisitTypeConstraint(TypeAtom);
public override void Accept(IConstraintVisitor visitor) => visitor.VisitForbiddenConstraint();
public override void Accept(IConstraintVisitor visitor) => visitor.VisitAnyObjectConstraint();
public abstract void Accept([NotNull] IConstraintVisitor visitor);