///////////////////////////////////////////////////////////////////////////
// senf::console::ParsedCommandOverloadBase
-prefix_ void senf::console::ParsedCommandOverloadBase::v_help(std::ostream & os)
+prefix_ unsigned senf::console::ParsedCommandOverloadBase::v_numArguments()
const
-{}
+{
+ return parameters_.size();
+}
+
+prefix_ void senf::console::ParsedCommandOverloadBase::v_argumentDoc(unsigned index,
+ ArgumentDoc & doc)
+ const
+{
+ BOOST_ASSERT( index < parameters_.size() );
+ detail::ArgumentInfoBase & arg (*parameters_[index]);
+ doc.name = arg.name.empty()
+ ? (boost::format("arg%d%d") % overloadIndex() % (index+1)).str()
+ : arg.name;
+ doc.type = arg.type;
+ if (arg.hasDefault) {
+ doc.defaultValue = arg.defaultDoc.empty()
+ ? arg.defaultValueStr()
+ : arg.defaultDoc;
+ if (doc.defaultValue.empty())
+ doc.defaultValue = "(empty)";
+ }
+ doc.doc = arg.doc;
+}
+
+prefix_ std::string senf::console::ParsedCommandOverloadBase::v_doc()
+ const
+{
+ return doc_;
+}
///////////////////////////////cc.e////////////////////////////////////////
#undef prefix_