Function Session.opApply
Enables foreach-iteration over all keys of the session.
int opApply
(
scope @safe int delegate(string) del
) @safe;
Example
//import vibe.http.server;
// workaround for cyclic module ctor compiler error
class HTTPServerRequest { Session session; }
class HTTPServerResponse { import vibe .core .stream; OutputStream bodyWriter() @safe { assert(false); } string contentType; }
// sends all session entries to the requesting browser
// assumes that all entries are strings
void handleRequest(scope HTTPServerRequest req, scope HTTPServerResponse res)
{
res .contentType = "text/plain";
req .session .opApply((key) @safe {
res .bodyWriter .write(key ~ ": " ~ req .session .get!string(key) ~ "\n");
return 0;
});
}
}
package void destroy() @safe { m_store .destroy(m_id);