Just because it's a slow Thursday on this forum
Andrei Alexandrescu via Digitalmars-d
digitalmars-d at puremagic.com
Sun Feb 7 15:26:05 PST 2016
On 02/04/2016 09:46 PM, Tofu Ninja wrote:
> On Thursday, 4 February 2016 at 15:33:41 UTC, Andrei Alexandrescu wrote:
>> https://github.com/D-Programming-Language/phobos/pull/3971 -- Andrei
>
> People one github were asking for a dump function so they could do
> int a = 5;
> dump!("a"); // prints "a = 5"
>
>
> Here's a working version if anyone wants it but you have to use it like
> mixin dump!("a");
>
>
> //------------------------------------------------
>
> mixin template dump(Names ... )
> {
> auto _unused_dump = {
> import std.stdio : writeln, write;
> foreach(i,name; Names)
> {
> write(name, " = ", mixin(name), (i<Names.length-1)?", ":
> "\n");
> }
> return false;
> }();
> }
>
> unittest{
> int x = 5;
> int y = 3;
> int z = 15;
>
> mixin dump!("x", "y"); // x = 5, y = 3
> mixin dump!("z"); // z = 15
> mixin dump!("x+y"); // x+y = 8
> mixin dump!("x+y < z");// x+y < z = true
> }
This is useful and we should include it. How would you improve the code
to allow dumping to a different File than stdout (e.g. most often
stderr)? -- Andrei
More information about the Digitalmars-d
mailing list