Reflection in D
    rumbu via Digitalmars-d-learn 
    digitalmars-d-learn at puremagic.com
       
    Sat Jan 28 01:05:13 PST 2017
    
    
  
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));
}
    
    
More information about the Digitalmars-d-learn
mailing list