Beispiel #1
0
            public static void WriteTrace(
                TextWriter writer,
                ITrace trace,
                TraceLevel level    = TraceLevel.Verbose,
                AsciiType asciiType = AsciiType.Default)
            {
                if (writer == null)
                {
                    throw new ArgumentNullException(nameof(writer));
                }

                if (trace == null)
                {
                    throw new ArgumentNullException(nameof(trace));
                }

                if ((int)trace.Level > (int)level)
                {
                    return;
                }

                AsciiTreeCharacters asciiTreeCharacter = asciiTreeCharactersMap[asciiType];
                AsciiTreeIndents    asciiTreeIndents   = asciiTreeIndentsMap[asciiType];

                writer.WriteLine(asciiTreeCharacter.Root);
                WriteTraceRecursive(writer, trace, level, asciiTreeIndents, isLastChild: true);
            }
Beispiel #2
0
 public static AsciiTreeIndents Create(AsciiTreeCharacters asciiTreeCharacters)
 {
     return(new AsciiTreeIndents(
                child: new string(
                    new char[]
     {
         asciiTreeCharacters.Child,
         asciiTreeCharacters.Dash,
         asciiTreeCharacters.Dash,
         asciiTreeCharacters.Blank
     }),
                parent: new string(
                    new char[]
     {
         asciiTreeCharacters.Parent,
         asciiTreeCharacters.Blank,
         asciiTreeCharacters.Blank,
         asciiTreeCharacters.Blank
     }),
                last: new string(
                    new char[]
     {
         asciiTreeCharacters.Last,
         asciiTreeCharacters.Dash,
         asciiTreeCharacters.Dash,
         asciiTreeCharacters.Blank
     }),
                blank: new string(
                    new char[]
     {
         asciiTreeCharacters.Blank,
         asciiTreeCharacters.Blank,
         asciiTreeCharacters.Blank,
         asciiTreeCharacters.Blank
     })));
 }