Whether or not to also display members marked as Unserialisable; usually transitive information that doesn't carry between program runs. Also those annotated Hidden.
Whether to display in colours or not.
Output range to write to.
Whether or not to format for a bright terminal background.
Variadic list of aggregate objects to enumerate and format.
struct Foo { int foo = 42; string bar = "arr matey"; float f = 3.14f; double d = 9.99; } Foo foo, bar; Appender!(char[]) sink; sink.formatObjects!(Yes.all, Yes.coloured)(foo); sink.formatObjects!(No.all, No.coloured)(bar); writeln(sink.data);
Formats an aggregate object, with all its printable members with all their printable values. Overload that writes to a passed output range sink.