Thread overview | ||||||
---|---|---|---|---|---|---|
|
August 01, 2013 Homework help, guys! | ||||
---|---|---|---|---|
| ||||
Hello, guys. It is weird to ask about my homework here, but I haven't gotten a proper answer yet. It's about D feature...maybe.. http://dpaste.dzfl.pl/905d6ad7 Question is that "Investigate how D allows you to defend your definition of Map so that it may be used only with a type of key that is comparable, and place this defense in your solution." Please leave your comments here. Thank you so much. |
August 01, 2013 Re: Homework help, guys! | ||||
---|---|---|---|---|
| ||||
Posted in reply to hunt | On 08/02/2013 01:34 AM, hunt wrote: > Hello, guys. It is weird to ask about my homework here, but I haven't > gotten a proper answer yet. It's about D feature...maybe.. > > http://dpaste.dzfl.pl/905d6ad7 > > Question is that "Investigate how D allows you to defend your definition > of Map so that it may be used only with a type of key that is > comparable, and place this defense in your solution." > > Please leave your comments here. Thank you so much. > > > This should get you started: http://dlang.org/concepts.html http://dlang.org/traits.html#compiles |
August 01, 2013 Re: Homework help, guys! | ||||
---|---|---|---|---|
| ||||
Posted in reply to Timon Gehr | On Thursday, 1 August 2013 at 23:48:33 UTC, Timon Gehr wrote: > On 08/02/2013 01:34 AM, hunt wrote: >> Hello, guys. It is weird to ask about my homework here, but I haven't >> gotten a proper answer yet. It's about D feature...maybe.. >> >> http://dpaste.dzfl.pl/905d6ad7 >> >> Question is that "Investigate how D allows you to defend your definition >> of Map so that it may be used only with a type of key that is >> comparable, and place this defense in your solution." >> >> Please leave your comments here. Thank you so much. >> >> >> > > This should get you started: > > http://dlang.org/concepts.html > http://dlang.org/traits.html#compiles Also, say hello to the most esoteric expression I can think of: D's "is" expression http://dlang.org/expression.html#IsExpression |
August 02, 2013 Re: Homework help, guys! | ||||
---|---|---|---|---|
| ||||
Posted in reply to John Colvin | On Thursday, 1 August 2013 at 23:57:47 UTC, John Colvin wrote: > On Thursday, 1 August 2013 at 23:48:33 UTC, Timon Gehr wrote: >> On 08/02/2013 01:34 AM, hunt wrote: >>> Hello, guys. It is weird to ask about my homework here, but I haven't >>> gotten a proper answer yet. It's about D feature...maybe.. >>> >>> http://dpaste.dzfl.pl/905d6ad7 >>> >>> Question is that "Investigate how D allows you to defend your definition >>> of Map so that it may be used only with a type of key that is >>> comparable, and place this defense in your solution." >>> >>> Please leave your comments here. Thank you so much. >>> >>> >>> >> >> This should get you started: >> >> http://dlang.org/concepts.html >> http://dlang.org/traits.html#compiles > > Also, say hello to the most esoteric expression I can think of: D's "is" expression > > http://dlang.org/expression.html#IsExpression http://dpaste.dzfl.pl/f3d7c828 //Via constraits //This will do a template mismatch struct Map1(T) if (is(typeof(T.init < T.init))) { //Who cares } //Via (explicit) compilation errors struct Map2(T) { static assert (is(typeof(T.init < T.init)), "Error, " ~ T ~ " is not comparable."); } void main() { struct S {} //Not comparable assert( is(Map1!int)); assert(!is(Map1!S)); assert( is(Map2!int)); assert(!is(Map2!S)); } |
Copyright © 1999-2021 by the D Language Foundation