...
import std.experimental.allocator : make, dispose;
import std.experimental.allocator.mallocator : Mallocator;
public synchronized class Session
{
private:
ASI parent;
cUser user;
public:
static Session create(ASI _parent,
accounts.user.id_user_t id_user) @nogc
{
return Mallocator.instance.make!Session(_parent,
id_user);
}
this (ASI _parent, uint id_user)
{
assert(_parent !is null);
assert(id_user != 0);
parent = _parent;
user = Mallocator.instance.make!cUser(id_user,
parent.stringManager);
}
~this ()
{
Mallocator.instance.dispose(user);
}
}
trying to build it throws "Don't know how to initialize an object
of type Session with arguments (ASI, uint)
D:\Dmd\dmd2\windows\bin\..\..\src\phobos\std\experimental\allocator\package.d(455,48):
instantiated from here: emplace!(Session, ASI, uint)
source\alfred\memory.d(51,52): instantiated from here:
make!(Session, shared(Mallocator), ASI, uint)
dmd failed with exit code 1."
Can't you see the constructor arguments? xDDDD
What I'm doing wrong? :<