]> git.llucax.com Git - software/druntime.git/blobdiff - src/compiler/dmd/object_.d
add hidden function error support
[software/druntime.git] / src / compiler / dmd / object_.d
index df5cfff6591d83fb59e35659ca46ffff3fbca9de..4e78220bdbdc077056859dad67d6af11438a8c88 100644 (file)
@@ -66,7 +66,7 @@ else
 }
 
 alias size_t hash_t;
 }
 
 alias size_t hash_t;
-alias int equals_t;
+alias bool equals_t;
 
 alias invariant(char)[]  string;
 alias invariant(wchar)[] wstring;
 
 alias invariant(char)[]  string;
 alias invariant(wchar)[] wstring;
@@ -125,6 +125,23 @@ class Object
         void lock();
         void unlock();
     }
         void lock();
         void unlock();
     }
+
+    /******
+     * Create instance of class specified by classname.
+     * The class must either have no constructors or have
+     * a default constructor.
+     * Returns:
+     *   null if failed
+     */
+    static Object factory(string classname)
+    {
+        auto ci = ClassInfo.find(classname);
+        if (ci)
+        {
+            return ci.create();
+        }
+        return null;
+    }
 }
 
 /**
 }
 
 /**