http://d.puremagic.com/issues/show_bug.cgi?id=4666
Summary: Optional name for std.typecons.Tuples? Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: enhancement Priority: P2 Component: Phobos AssignedTo: nob...@puremagic.com ReportedBy: bearophile_h...@eml.cc --- Comment #0 from bearophile_h...@eml.cc 2010-08-17 07:31:10 PDT --- This correct D2 program: import std.stdio: writeln; import std.typecons: Tuple; void main() { alias Tuple!(double, "x", double, "y") Point2D; writeln(Point2D()); } Prints (DMD 2.048): Tuple!(double,"x",double,"y")(nan, nan) In recent versions of the Python std lib there is collections.namedtuple, that is similar to std.typecons.Tuple: http://docs.python.org/dev/library/collections.html#collections.namedtuple A namedtuple contains a name too, this is handy when they get printed. So in theory a Tuple may allow an optional name too: import std.stdio: writeln; import std.typecons: Tuple; void main() { alias Tuple!("Point2D", double, "x", double, "y") Point2D; writeln(Point2D()); } That may print: Point2D(nan, nan) The main difference between the Tuple named 'Point2D' and a normal struct named 'Point2D' is the extra features Tuples have (and will have) over plain structs. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------