On Thursday, 16 July 2015 at 20:00:38 UTC, Ali Çehreli wrote:
On 07/16/2015 12:35 PM, "Jarl =?UTF-8?B?QW5kcsOpIEjDvGJlbnRoYWwi?= <jarl.an...@gmail.com>" wrote:
Hi

using mongo with vibe.d is easy. But I would like to skip the foreach on
MongoCursor?

I mean, I want to use map!, filter! and reduce! on the resulting docs. Is there a fast way to convert MongoCursor to an array without resolving
to ugly for loops with appender! ?

I've never used MongoCursor but judging from the fact that it has empty, front, and popFront(), it is an InputRange:

  http://vibed.org/api/vibe.db.mongo.cursor/MongoCursor

Have you tried using it with map and others? What errors do you get?

Ali

Ah well I got another error now. Using the following code:

        Resource[] getResource() {
                auto coll = client.getCollection("app.resource");
return coll.find().map!(doc => deserialize!(BsonSerializer, Resource)(doc));
        }

I get this error:

src/app.d(51,21): Error: cannot implicitly convert expression (map(coll.find())) of type MapResult!(__lambda1, MongoCursor!(Bson, Bson, typeof(null))) to Resource[]

Reply via email to