From 81ee37e4ae0274a1e0ec2a18d3802e4659453461 Mon Sep 17 00:00:00 2001 From: John Hewson Date: Mon, 28 Jan 2013 22:30:04 +0000 Subject: [PATCH] show argument types, like pdftohtml/pdftocairo/etc --- src/util/ArgParser.h | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/util/ArgParser.h b/src/util/ArgParser.h index 24a7db9..d89dc35 100644 --- a/src/util/ArgParser.h +++ b/src/util/ArgParser.h @@ -39,6 +39,23 @@ void dump_value(std::ostream & out, const T & v) extern void dump_value(std::ostream & out, const std::string & v); +// type names helper +template +struct type_name { + static char const* value() { return "unknown"; } +}; + +template<> struct type_name { + static char const* value() { return "int"; } +}; + +template<> struct type_name { + static char const* value() { return "fp"; } +}; + +template<> struct type_name { + static char const* value() { return "string"; } +}; class ArgParser { @@ -161,7 +178,7 @@ void ArgParser::ArgEntry::show_usage(std::ostream & out) const if(need_arg) { - sout << " "; + sout << " <" << type_name::value() << ">"; } std::string s = sout.str();