Ejemplo n.º 1
0
        public override string VisitTermWithExplicitType(TermWithExplicitType t)
        {
            var rTerm = Visit(t.Term);
            var rType = typePrettyPrinter.Visit(t.Type);

            return(H.Parenthesis(rTerm + "::" + rType));
        }
Ejemplo n.º 2
0
        private int HandleAbbrevOrDef(OuterDecl d, string topLevel, TypeIsa type, string equality,
                                      Tuple <IList <Term>, Term> equation)
        {
            _sb.Append(topLevel + " ").Append(d.Name);
            if (type != null)
            {
                _sb.Append(" :: ");
                AppendInner(_typeIsaPrinter.Visit(type));
            }

            _sb.AppendLine().Append(IsaPrettyPrinterHelper.Indent(1)).Append("where");
            _sb.AppendLine().Append(IsaPrettyPrinterHelper.Indent(2));

            var args = _termPrinter.VisitList(equation.Item1).SpaceAggregate();

            AppendInner(
                () => _sb.Append(d.Name).Append(" ").Append(args).Append(" " + equality + " ")
                .Append(_termPrinter.Visit(equation.Item2))
                );

            return(0);
        }