Thread overview
Does anyone have a completed version of a d analogue to php's var_dump?
Feb 25, 2017
Kevin Brogan
Feb 25, 2017
Seb
February 25, 2017
I can dump a struct easily enough with the following. I'm wondering if anyone else has done all the work to make it work for every type? https://code.dlang.org/ is down at the moment so I can't check there, and google hasn't been helpful.

========================================================================================

import std.traits;

void main()
{
	WSADATA wsa;
	dump!wsa;
}

void dump(alias variable)()
{
	writeln("\nDumping ",typeid(typeof(variable)),":\n");
	writeln(variable.stringof, " = \n{");
	foreach(member; FieldNameTuple!(typeof(variable)))
	{
		writeln("\t", member, ": ", mixin("variable."~member) );
	}
	writeln("}\n");
}

========================================================================================
February 25, 2017
On Saturday, 25 February 2017 at 06:22:02 UTC, Kevin Brogan wrote:
> I can dump a struct easily enough with the following. I'm wondering if anyone else has done all the work to make it work for every type? https://code.dlang.org/ is down at the moment so I can't check there, and google hasn't been helpful.
>
> ========================================================================================
>
> import std.traits;
>
> void main()
> {
> 	WSADATA wsa;
> 	dump!wsa;
> }
>
> void dump(alias variable)()
> {
> 	writeln("\nDumping ",typeid(typeof(variable)),":\n");
> 	writeln(variable.stringof, " = \n{");
> 	foreach(member; FieldNameTuple!(typeof(variable)))
> 	{
> 		writeln("\t", member, ": ", mixin("variable."~member) );
> 	}
> 	writeln("}\n");
> }
>
> ========================================================================================

How about this?


https://github.com/dlang/phobos/pull/4318

February 27, 2017
On Saturday, 25 February 2017 at 06:22:02 UTC, Kevin Brogan wrote:
> I can dump a struct easily enough with the following.
[...]
> import std.traits;
[...]
> 	dump!wsa;
[...]

>
> ========================================================================================
A good addition, thank you!
To my question here: https://forum.dlang.org/post/foxuhcldegonvotchujv@forum.dlang.org