X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=Console%2FNode.cti;h=a6e113fe515f57aacb0946473e2bdfdd697aeecb;hb=80c6cb7ba9ad7776824c84809f422209adf27331;hp=c56f014753509675e7d467e729b2ef2d4107ce88;hpb=9c0078ac0054789badff2a987364ed0448b080ef;p=senf.git diff --git a/Console/Node.cti b/Console/Node.cti index c56f014..a6e113f 100644 --- a/Console/Node.cti +++ b/Console/Node.cti @@ -34,10 +34,10 @@ // senf::console::NodeCreateTraits::Creator template -prefix_ typename senf::console::NodeCreateTraits::NodeType & +prefix_ typename senf::console::NodeCreateTraits::result_type senf::console::NodeCreateTraits::Creator::create(DirectoryNode & node, std::string const & name, - Object const & ob) + Object & ob) { return senf_console_add_node(node, name, ob, 0); } @@ -47,16 +47,6 @@ senf::console::NodeCreateTraits::Creator::create(DirectoryNode & node, template prefix_ NodeType & senf::console::DirectoryNode::add(std::string const & name, - std::auto_ptr node) -{ - GenericNode::ptr p (node); - p->name(name); - add(p); - return static_cast(*p); -} - -template -prefix_ NodeType & senf::console::DirectoryNode::add(std::string const & name, boost::shared_ptr node) { SENF_ASSERT( ! node->parent() ); @@ -66,20 +56,17 @@ prefix_ NodeType & senf::console::DirectoryNode::add(std::string const & name, } template -prefix_ typename senf::console::NodeCreateTraits::NodeType & +prefix_ typename senf::console::NodeCreateTraits::result_type senf::console::DirectoryNode::add(std::string const & name, Object const & ob) { - return NodeCreateTraits::Creator::create(*this, name, ob); + return NodeCreateTraits::Creator::create(*this, name, ob); } -/////////////////////////////////////////////////////////////////////////// -// senf::console::SimpleCommandNode - -template -prefix_ senf::console::SimpleCommandNode & senf::console:: -senf_console_add_node(DirectoryNode & node, std::string const & name, Function const & fn, ...) +template +prefix_ typename senf::console::NodeCreateTraits::result_type +senf::console::DirectoryNode::add(std::string const & name, Object & ob) { - return node.add(name, SimpleCommandNode::create(fn)); + return NodeCreateTraits::Creator::create(*this, name, ob); } ///////////////////////////////cti.e///////////////////////////////////////