On Saturday, 28 January 2017 at 07:03:51 UTC, medhi558 wrote:

    public static NetworkMessage GetInstance(string id)
    {
        auto v = (id in ProtocolMessageManager.m_types);
        if (v !is null)
return cast(NetworkMessage)ProtocolMessageManager.m_types[id].create();
        else
         return null;
    }
}

As long as your class has a default constructor, you can use directly Object.factory(id):

public static NetworkMessage GetInstance(string id)
{
  return cast(NetworkMessage)(Object.factory(id));
}

Reply via email to