24 #include <boost/unordered_map.hpp>
26 #include <drizzled/gettext.h>
27 #include <drizzled/plugin/function.h>
28 #include <drizzled/function_container.h>
29 #include <drizzled/util/find_ptr.h>
30 #include <drizzled/util/string.h>
34 static plugin::Function::UdfMap udf_registry;
36 const plugin::Function::UdfMap &plugin::Function::getMap()
43 if (FunctionContainer::getMap().count(udf->getName()))
45 errmsg_printf(error::ERROR, _(
"A function named %s already exists!\n"), udf->getName().c_str());
49 if (udf_registry.count(udf->getName()))
51 errmsg_printf(error::ERROR, _(
"A function named %s already exists!\n"), udf->getName().c_str());
55 if (not udf_registry.insert(make_pair(udf->getName(), udf)).second)
57 errmsg_printf(error::ERROR, _(
"Could not add Function!\n"));
67 udf_registry.erase(udf->getName());
72 return find_ptr2(udf_registry, name);