public override string ToString()

in Sources/BoogieAST/BoogieAST.cs [183:237]


        public override string ToString()
        {
            StringBuilder builder = new StringBuilder();
            builder.Append("procedure ");
            if (Attributes != null)
            {
                foreach (BoogieAttribute attribute in Attributes)
                {
                    builder.Append(attribute).Append(" ");
                }
            }
            builder.Append(Name).Append("(");
            if (InParams.Count > 0)
            {
                foreach (BoogieVariable inParam in InParams)
                {
                    builder.Append(inParam).Append(", ");
                }
                builder.Length -= 2;
            }
            builder.Append(")");
            if (OutParams.Count > 0)
            {
                builder.Append(" returns (");
                foreach (BoogieVariable outParam in OutParams)
                {
                    builder.Append(outParam).Append(", ");
                }
                builder.Length -= 2;
                builder.Append(")");
            }
            builder.AppendLine(";");
            if (ModSet != null)
            {
                foreach(var m in ModSet)
                {
                    builder.AppendLine($"modifies {m.Name};");
                }
            }
            if (preConditions != null)
            {
                foreach (var e in preConditions)
                {
                    builder.AppendLine($"requires({e.ToString()});");
                }
            }
            if (postConditions != null)
            {
                foreach (var e in postConditions)
                {
                    builder.AppendLine($"ensures({e.ToString()});");
                }
            }
            return builder.ToString();
        }