C# code sample
Mandeep Singh Brar
mandeep at brars.co.in
Tue Jan 25 10:11:09 PST 2011
On Mon, 24 Jan 2011 14:39:33 -0500, Simen kjaeraas
<simen.kjaras at gmail.com> wrote:
> pragma <the_ignorator at hotmail.com> wrote:
>
>> Hi i come from a c# background
>>
>> I would like to write the following code in the according D style but
>> i'm not
>> sure howto do it
>>
>> c# code:
>> void foo(IEnumerable<double[]> data)
>> {
>> foreach (var d in data)
>> {
>> do_some_stuff(d);
>> }
>> }
>>
>> i guess the D equivalent to IEnumerable is Range? how would it look
>> like in D?
>
> void foo( R )( R data )
> if ( isInputRange!R && is( ElementType!R == double ) )
> {
> foreach ( d; data ) {
> do_some_stuff( d );
> }
> }
Actually, isIterable would be more correct than isInputRange for this code
example, not sure what the full code looks like.
http://www.digitalmars.com/d/2.0/phobos/std_traits.html#isIterable
-Steve
How about simply saying:
void foo(double[] data)
{
foreach (d; data)
{
do_some_stuff(d);
}
}
all ranges are already foreachable.
Regards
Mandeep
More information about the Digitalmars-d-learn
mailing list