X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2FConsole%2FParsedCommand.cti;h=d6d604855a01d1ef9a2745d58bb8be813a10f3e9;hb=975639608e44e49058ccd52f05ffe6b21faeafef;hp=43a2cffbe880f0fae46585b559092877f621bc6f;hpb=f13780e9e4da7df981d6f6542fbdc714beb34765;p=senf.git diff --git a/senf/Utils/Console/ParsedCommand.cti b/senf/Utils/Console/ParsedCommand.cti index 43a2cff..d6d6048 100644 --- a/senf/Utils/Console/ParsedCommand.cti +++ b/senf/Utils/Console/ParsedCommand.cti @@ -361,9 +361,50 @@ namespace detail { }}} +/////////////////////////////////////////////////////////////////////////// + +template +prefix_ senf::console::SimpleOverloadAttributor +senf::console::factory:: +Command(boost::function fn, + typename boost::enable_if_c::is_simple>::type *) +{ + return SimpleOverloadAttributor(fn); +} + +template +prefix_ senf::console::SimpleOverloadAttributor +senf::console::factory:: +Command(Function fn, + typename boost::enable_if_c::is_simple>::type *) +{ + return SimpleOverloadAttributor(fn); +} + +template +prefix_ senf::console::SimpleOverloadAttributor +senf::console::factory:: +Command(Member memfn, Owner * owner, + typename boost::enable_if >::type *, + typename boost::enable_if_c::is_simple>::type *) +{ + return SimpleOverloadAttributor(senf::membind(memfn,owner)); +} + +template +prefix_ senf::console::SimpleOverloadAttributor +senf::console::factory:: +Command(Member memfn, Owner const * owner, + typename boost::enable_if >::type *, + typename boost::enable_if_c::is_simple>::type *) +{ + return SimpleOverloadAttributor(senf::membind(memfn,owner)); +} + template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor -senf::console::factory::Command(boost::function fn) +senf::console::factory:: +Command(boost::function fn) { return detail::addOverloadedCommandNode(fn); } @@ -372,14 +413,16 @@ template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor senf::console::factory:: Command(Function fn, - typename boost::enable_if_c::is_callable>::type *) + typename boost::enable_if_c::is_callable>::type *, + typename boost::disable_if >::type *) { return detail::addOverloadedCommandNode(fn); } template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor -senf::console::factory::Command(boost::function fn) +senf::console::factory:: +Command(boost::function fn) { return detail::addOverloadedCommandNode(fn); } @@ -388,35 +431,44 @@ template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor senf::console::factory:: Command(Function fn, - typename boost::enable_if_c::is_callable>::type *) + typename boost::enable_if_c::is_callable>::type *, + typename boost::disable_if >::type *) { return detail::addOverloadedCommandNode(fn); } template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor -senf::console::factory::BoundCommand(Owner * owner, Member memfn) +senf::console::factory:: +Command(Member memfn, Owner * owner, + typename boost::enable_if >::type *) { return detail::addOverloadedCommandNode(senf::membind(memfn,owner)); } template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor -senf::console::factory::BoundCommand(Owner const * owner, Member memfn) +senf::console::factory:: +Command(Member memfn, Owner const * owner, + typename boost::enable_if >::type *) { return detail::addOverloadedCommandNode(senf::membind(memfn,owner)); } template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor -senf::console::factory::BoundCommand(Owner * owner, Member memfn) +senf::console::factory:: +Command(Member memfn, Owner * owner, + typename boost::enable_if >::type *) { return detail::addOverloadedCommandNode(senf::membind(memfn,owner)); } template prefix_ typename senf::console::detail::ParsedCommandTraits::Attributor -senf::console::factory::BoundCommand(Owner const * owner, Member memfn) +senf::console::factory:: +Command(Member memfn, Owner const * owner, + typename boost::enable_if >::type *) { return detail::addOverloadedCommandNode(senf::membind(memfn,owner)); }