namespace RMI {
const Message&
f01(Message& msg)
{
Widget* instance = msg.instance();
return (delete instance, msg);
}
const Message&
f02(Message& msg)
{
std::string arg0 = msg.arg(0);
return msg.result(new Widget(arg0));
}
const Message&
f03(Message& msg)
{
Widget* arg0 = msg.arg(0);
return msg.result(new Widget(*arg0));
}
const Message&
f04(Message& msg)
{
Widget* instance = msg.instance();
Widget* arg0 = msg.arg(0);
return msg.result(instance->operator=(*arg0));
}
const Message&
f05(Message& msg)
{
Widget* instance = msg.instance();
return msg.result(instance->name());
}
const Message&
f06(Message& msg)
{
std::string arg0 = msg.arg(0);
Point arg1 = msg.arg(1);
int arg2 = msg.arg(2);
return msg.result(new Circle(arg0, arg1, arg2));
}
const Message&
f09(Message& msg)
{
Circle* instance = msg.instance();
Point arg0 = msg.arg(0);
return (instance->center(arg0), msg);
}
const Message&
f10(Message& msg)
{
Circle* instance = msg.instance();
return msg.result(instance->center());
}
}
RMI::Server::Server()
{
functions_["Widget::~Widget()"] = f01;
functions_["Widget::Widget(const string&)"] = f02;
functions_["Widget::Widget(const Widget&)"] = f03;
functions_["Widget& Widget::operator=(const Widget&)"] = f04;
functions_["const string& Widget::name() const"] = f05;
functions_["Circle::Circle(const string&, const Point&, int)"] = f06;
functions_["void Circle::center(const Point&)"] = f09;
functions_["const Point& Circle::center() const"] = f10;
}