public override object RecursiveReference(RecursiveReferenceEqualityExplanation target, Tuple <InfoPanelContent, PrettyPrintFormat, bool, int> arg)
        {
            var content           = arg.Item1;
            var format            = arg.Item2;
            var shouldPrintSource = arg.Item3;
            var indent            = arg.Item4;

            var indentString = getIndentString(format, indent);

            if (shouldPrintSource)
            {
                content.Append(indentString);
                target.source.PrettyPrint(content, format, indent);
            }
            content.switchToDefaultFormat();
            content.Append($"\n{indentString}= ({format.equalityNumbers[target.ReferencedExplanation]}{(target.isPrime ? "'" : "")}){(target.GenerationOffset > 0 ? "-" + target.GenerationOffset : "")}");
            content.Append($"\n{indentString}");
            target.target.PrettyPrint(content, format, indent);

            return(null);
        }
Пример #2
0
 public override object RecursiveReference(RecursiveReferenceEqualityExplanation target, Action <Term> arg)
 {
     arg(target.source);
     arg(target.target);
     return(null);
 }