public string ToStringFormatted() { var stringBuilder = new StringBuilder(); foreach (var inst in Instructions) { stringBuilder.Append($"\t\t{ inst.ToStringFormatted() }\n"); } var instructionString = stringBuilder.ToString(); stringBuilder.Clear(); return("Spir-V Source [\n" + $"\tVersion: 0.{ VersionMajor }.{ VersionMinor }.0\n" + $"\tGenerator: { GeneratorMagic }\n" + $"\tBound: { Bound }\n" + $"\tCapabilities: { string.Join(", ", Capabilities ) }\n" + $"\tExtensions: { string.Join(", ", Extensions) }\n" + $"\tExtInstImports: { ExtInstImports.ToStringFormatted() }\n" + $"\tMemoryModel: { MemoryModel }\n" + $"\tEntryPoints: { string.Join(", ", EntryPoints) }\n" + $"\tExecutionModes: { ExecutionModes.ToStringFormatted() }\n" + $"\tNames: { Names.ToStringFormatted() }\n" + $"\tMemberNames: { MemberNames.ToStringFormatted() }\n" + $"\tInstructions:\n" + $"{instructionString}]"); }