   Smart pointers and Luabind
  I'm playing around with Luabind a bit, and I've encountered a problem binding functions that take a smart-pointer parameter.Here's a Cpp snippet:class MyClass{  //...};typedef SmartPtr<MyClass> MyClassPtr;void DoSomething(MyClassPtr pMyClass){  //...}void BindToLua(lua_State* L){  module(L)  [    class_<MyClass, MyClassPtr>("MyClass")    .def(constructor<>())  ];  module(L)  [    def("DoSomething", &DoSomething)  ];}Now, in Lua I can create instances of MyClass, but when I try to pass an instance to DoSomething in Lua, I get a "No matching overload found, candidates are..." error from Luabind.What am I doing wrong here?  What are my options?   