示例#1
0
    /// <summary>
    /// Creates the whole ToString process.
    /// </summary>
    /// <param name="type">Object type, to show the object title.</param>
    /// <param name="obj">Object implementing the interface, the object itself.</param>
    /// <param name="indentOffset">For nested child objects to keep proper indentation.
    /// Pass the indentOffset from the interface here.</param>
    /// <returns>ToStringBuilder object for adding parameters in a chain.</returns>
    public static ToStringBuilder Create(Type type, IToStringBuildable obj, int indentOffset)
    {
        ToStringBuilder tsb = new ToStringBuilder();

        tsb.initialIndentOffset = indentOffset;
        tsb.currIndentOffset    = indentOffset;
        tsb.sb = new StringBuilder();
        tsb.sb.Append(type);
        tsb.AppendSeparator();
        tsb.currIndentOffset++;
        return(tsb);
    }