Lines Matching full:std
81 toLocalString(std::string s) in toLocalString()
83 return icu::UnicodeString::fromUTF8(std::move(s)); in toLocalString()
87 std::iterator<std::forward_iterator_tag, int32_t>
137 return s.append(std::move(a)); in stringAppend()
173 std::string
176 std::string result; in toUTF8String()
190 namespace std namespace
212 typedef std::string String;
218 return std::forward<T>(t); in toLocalString()
232 return s.append(std::move(a)); in stringAppend()
250 std::string
253 return std::forward<T>(t); in toUTF8String()
258 empty(const std::string& s) in empty()
272 const std::string LQUOTE("\'");
273 const std::string RQUOTE("\'");
275 const std::string LQUOTE("‘");
276 const std::string RQUOTE("’");
280 class Value : public std::enable_shared_from_this<Value>
287 std::shared_ptr<Value>
291 parse(const std::string& text) const = 0;
305 virtual std::string
308 virtual std::string
311 virtual std::shared_ptr<Value>
312 default_value(const std::string& value) = 0;
314 virtual std::shared_ptr<Value>
315 implicit_value(const std::string& value) = 0;
317 virtual std::shared_ptr<Value>
324 class OptionException : public std::exception
327 OptionException(const std::string& message) in OptionException()
339 std::string m_message;
346 OptionSpecException(const std::string& message) in OptionSpecException()
355 OptionParseException(const std::string& message) in OptionParseException()
364 option_exists_error(const std::string& option) in option_exists_error()
373 invalid_option_format_error(const std::string& format) in invalid_option_format_error()
381 option_syntax_exception(const std::string& text) in option_syntax_exception()
391 option_not_exists_exception(const std::string& option) in option_not_exists_exception()
400 missing_argument_exception(const std::string& option) in missing_argument_exception()
411 option_requires_argument_exception(const std::string& option) in option_requires_argument_exception()
424 const std::string& option, in option_not_has_argument_exception()
425 const std::string& arg in option_not_has_argument_exception()
439 option_not_present_exception(const std::string& option) in option_not_present_exception()
450 const std::string& arg in argument_incorrect_type()
462 option_required_exception(const std::string& option) in option_required_exception()
474 std::basic_regex<char> integer_pattern
476 std::basic_regex<char> truthy_pattern
478 std::basic_regex<char> falsy_pattern
492 operator()(bool negative, U u, const std::string& text) in operator ()()
496 if (u > static_cast<U>((std::numeric_limits<T>::min)())) in operator ()()
503 if (u > static_cast<U>((std::numeric_limits<T>::max)())) in operator ()()
516 operator()(bool, U, const std::string&) {} in operator ()()
521 check_signed_range(bool negative, U value, const std::string& text) in check_signed_range()
523 SignedCheck<T, std::numeric_limits<T>::is_signed>()(negative, value, text); in check_signed_range()
529 checked_negate(T&& t, const std::string&, std::true_type) in checked_negate()
539 checked_negate(T&&, const std::string& text, std::false_type) in checked_negate()
546 integer_parser(const std::string& text, T& value) in integer_parser()
548 std::smatch match; in integer_parser()
549 std::regex_match(text, match, integer_pattern); in integer_parser()
562 using US = typename std::make_unsigned<T>::type; in integer_parser()
564 constexpr bool is_signed = std::numeric_limits<T>::is_signed; in integer_parser()
608 std::integral_constant<bool, is_signed>()); in integer_parser()
617 void stringstream_parser(const std::string& text, T& value) in stringstream_parser()
619 std::stringstream in(text); in stringstream_parser()
628 parse_value(const std::string& text, uint8_t& value) in parse_value()
635 parse_value(const std::string& text, int8_t& value) in parse_value()
642 parse_value(const std::string& text, uint16_t& value) in parse_value()
649 parse_value(const std::string& text, int16_t& value) in parse_value()
656 parse_value(const std::string& text, uint32_t& value) in parse_value()
663 parse_value(const std::string& text, int32_t& value) in parse_value()
670 parse_value(const std::string& text, uint64_t& value) in parse_value()
677 parse_value(const std::string& text, int64_t& value) in parse_value()
684 parse_value(const std::string& text, bool& value) in parse_value()
686 std::smatch result; in parse_value()
687 std::regex_match(text, result, truthy_pattern); in parse_value()
695 std::regex_match(text, result, falsy_pattern); in parse_value()
707 parse_value(const std::string& text, std::string& value) in parse_value()
717 parse_value(const std::string& text, T& value) { in parse_value()
723 parse_value(const std::string& text, std::vector<T>& value) in parse_value()
725 std::stringstream in(text); in parse_value()
726 std::string token; in parse_value()
727 while(in.eof() == false && std::getline(in, token, CXXOPTS_VECTOR_DELIMITER)) { in parse_value()
730 value.emplace_back(std::move(v)); in parse_value()
737 parse_value(const std::string& text, std::optional<T>& value) in parse_value()
741 value = std::move(result); in parse_value()
752 struct type_is_container<std::vector<T>>
764 : m_result(std::make_shared<T>()) in abstract_value()
780 m_result = std::make_shared<T>(); in abstract_value()
795 parse(const std::string& text) const in parse()
824 std::shared_ptr<Value>
825 default_value(const std::string& value) in default_value()
832 std::shared_ptr<Value>
833 implicit_value(const std::string& value) in implicit_value()
840 std::shared_ptr<Value>
847 std::string
853 std::string
862 return std::is_same<T, bool>::value; in is_boolean()
879 std::shared_ptr<T> m_result;
885 std::string m_default_value;
886 std::string m_implicit_value;
895 std::shared_ptr<Value>
898 return std::make_shared<standard_value<T>>(*this); in clone()
919 std::shared_ptr<Value>
922 return std::make_shared<standard_value<bool>>(*this); in clone()
939 std::shared_ptr<Value>
942 return std::make_shared<values::standard_value<T>>(); in value()
946 std::shared_ptr<Value>
949 return std::make_shared<values::standard_value<T>>(&t); in value()
959 const std::string& short_, in OptionDetails()
960 const std::string& long_, in OptionDetails()
962 std::shared_ptr<const Value> val in OptionDetails()
991 std::shared_ptr<Value>
997 const std::string&
1003 const std::string&
1010 std::string m_short;
1011 std::string m_long;
1013 std::shared_ptr<const Value> m_value;
1019 std::string s;
1020 std::string l;
1023 std::string default_value;
1025 std::string implicit_value;
1026 std::string arg_help;
1033 std::string name;
1034 std::string description;
1035 std::vector<HelpOptionDetails> options;
1044 std::shared_ptr<const OptionDetails> details, in parse()
1045 const std::string& text in parse()
1054 parse_default(std::shared_ptr<const OptionDetails> details) in parse_default()
1079 throw std::domain_error("No value"); in as()
1091 ensure_value(std::shared_ptr<const OptionDetails> details) in ensure_value()
1099 std::shared_ptr<Value> m_value;
1107 KeyValue(std::string key_, std::string value_) in KeyValue()
1108 : m_key(std::move(key_)) in KeyValue()
1109 , m_value(std::move(value_)) in KeyValue()
1114 std::string&
1121 std::string&
1137 std::string m_key;
1138 std::string m_value;
1146 const std::shared_ptr<
1147 std::unordered_map<std::string, std::shared_ptr<OptionDetails>>
1149 std::vector<std::string>,
1154 count(const std::string& o) const in count()
1168 operator[](const std::string& option) const in operator []()
1182 const std::vector<KeyValue>&
1194 add_to_option(const std::string& option, const std::string& arg);
1197 consume_positional(std::string a);
1202 std::shared_ptr<OptionDetails> value,
1203 const std::string& name,
1204 const std::string& arg = ""
1208 parse_default(std::shared_ptr<OptionDetails> details);
1216 std::shared_ptr<OptionDetails> value,
1217 const std::string& name
1220 const std::shared_ptr<
1221 std::unordered_map<std::string, std::shared_ptr<OptionDetails>>
1223 std::vector<std::string> m_positional;
1224 std::vector<std::string>::iterator m_next_positional;
1225 std::unordered_set<std::string> m_positional_set;
1226 std::unordered_map<std::shared_ptr<OptionDetails>, OptionValue> m_results;
1230 std::vector<KeyValue> m_sequential;
1235 typedef std::unordered_map<std::string, std::shared_ptr<OptionDetails>>
1239 Options(std::string program, std::string help_string = "") in Options()
1240 : m_program(std::move(program)) in Options()
1241 , m_help_string(toLocalString(std::move(help_string))) in Options()
1246 , m_options(std::make_shared<OptionMap>()) in Options()
1252 positional_help(std::string help_text) in positional_help()
1254 m_positional_help = std::move(help_text); in positional_help()
1259 custom_help(std::string help_text) in custom_help()
1261 m_custom_help = std::move(help_text); in custom_help()
1283 add_options(std::string group = "");
1288 const std::string& group,
1289 const std::string& s,
1290 const std::string& l,
1291 std::string desc,
1292 std::shared_ptr<const Value> value,
1293 std::string arg_help
1298 parse_positional(std::string option);
1301 parse_positional(std::vector<std::string> options);
1304 parse_positional(std::initializer_list<std::string> options);
1309 parse_positional(std::vector<std::string>{begin, end}); in parse_positional()
1312 std::string
1313 help(const std::vector<std::string>& groups = {}) const;
1315 const std::vector<std::string>
1319 group_help(const std::string& group) const;
1326 const std::string& option,
1327 std::shared_ptr<OptionDetails> details
1331 help_one_group(const std::string& group) const;
1337 const std::vector<std::string>& groups
1343 std::string m_program;
1345 std::string m_custom_help;
1346 std::string m_positional_help;
1350 std::shared_ptr<OptionMap> m_options;
1351 std::vector<std::string> m_positional;
1352 std::vector<std::string>::iterator m_next_positional;
1353 std::unordered_set<std::string> m_positional_set;
1356 std::map<std::string, HelpGroupDetails> m_help;
1363 OptionAdder(Options& options, std::string group) in OptionAdder()
1364 : m_options(options), m_group(std::move(group)) in OptionAdder()
1371 const std::string& opts,
1372 const std::string& desc,
1373 std::shared_ptr<const Value> value
1375 std::string arg_help = ""
1380 std::string m_group;
1388 std::basic_regex<char> option_matcher
1391 std::basic_regex<char> option_specifier
1453 auto current = std::begin(desc); in format_description()
1459 while (current != std::end(desc)) in format_description()
1509 const std::shared_ptr< in ParseResult()
1510 std::unordered_map<std::string, std::shared_ptr<OptionDetails>> in ParseResult()
1512 std::vector<std::string> positional, in ParseResult()
1517 , m_positional(std::move(positional)) in ParseResult()
1526 Options::add_options(std::string group) in add_options()
1528 return OptionAdder(*this, std::move(group)); in add_options()
1535 const std::string& opts, in operator ()()
1536 const std::string& desc, in operator ()()
1537 std::shared_ptr<const Value> value, in operator ()()
1538 std::string arg_help in operator ()()
1541 std::match_results<const char*> result; in operator ()()
1542 std::regex_match(opts.c_str(), result, option_specifier); in operator ()()
1562 const std::sub_match<const char*>& short_, in operator ()()
1563 const std::sub_match<const char*>& long_ in operator ()()
1568 return std::make_tuple(long_.str(), short_.str()); in operator ()()
1572 return std::make_tuple(short_.str(), long_.str()); in operator ()()
1579 std::get<0>(option_names), in operator ()()
1580 std::get<1>(option_names), in operator ()()
1583 std::move(arg_help) in operator ()()
1591 ParseResult::parse_default(std::shared_ptr<OptionDetails> details) in parse_default()
1600 std::shared_ptr<OptionDetails> value, in parse_option()
1601 const std::string& /*name*/, in parse_option()
1602 const std::string& arg in parse_option()
1618 std::shared_ptr<OptionDetails> value, in checked_parse_arg()
1619 const std::string& name in checked_parse_arg()
1649 ParseResult::add_to_option(const std::string& option, const std::string& arg) in add_to_option()
1663 ParseResult::consume_positional(std::string a) in consume_positional()
1702 Options::parse_positional(std::string option) in parse_positional()
1704 parse_positional(std::vector<std::string>{std::move(option)}); in parse_positional()
1709 Options::parse_positional(std::vector<std::string> options) in parse_positional()
1711 m_positional = std::move(options); in parse_positional()
1719 Options::parse_positional(std::initializer_list<std::string> options) in parse_positional()
1721 parse_positional(std::vector<std::string>(std::move(options))); in parse_positional()
1751 std::match_results<const char*> result; in parse()
1752 std::regex_match(argv[current], result, option_matcher); in parse()
1782 const std::string& s = result[4]; in parse()
1784 for (std::size_t i = 0; i != s.size(); ++i) in parse()
1786 std::string name(1, s[i]); in parse()
1822 const std::string& name = result[1]; in parse()
1902 const std::string& group, in add_option()
1903 const std::string& s, in add_option()
1904 const std::string& l, in add_option()
1905 std::string desc, in add_option()
1906 std::shared_ptr<const Value> value, in add_option()
1907 std::string arg_help in add_option()
1910 auto stringDesc = toLocalString(std::move(desc)); in add_option()
1911 auto option = std::make_shared<OptionDetails>(s, l, stringDesc, value); in add_option()
1929 std::move(arg_help), in add_option()
1938 const std::string& option, in add_one_option()
1939 std::shared_ptr<OptionDetails> details in add_one_option()
1952 Options::help_one_group(const std::string& g) const in help_one_group()
1954 typedef std::vector<std::pair<String, String>> OptionHelp; in help_one_group()
1982 longest = (std::max)(longest, stringLength(s)); in help_one_group()
1983 format.push_back(std::make_pair(s, String())); in help_one_group()
1986 longest = (std::min)(longest, static_cast<size_t>(OPTION_LONGEST)); in help_one_group()
2006 result += toLocalString(std::string(longest + OPTION_DESC_GAP, ' ')); in help_one_group()
2010 result += toLocalString(std::string(longest + OPTION_DESC_GAP - in help_one_group()
2028 const std::vector<std::string>& print_groups in generate_group_help()
2050 std::vector<std::string> all_groups; in generate_all_groups_help()
2062 std::string
2063 Options::help(const std::vector<std::string>& help_groups) const in help()
2087 const std::vector<std::string>
2090 std::vector<std::string> g; in groups()
2092 std::transform( in groups()
2095 std::back_inserter(g), in groups()
2096 [] (const std::map<std::string, HelpGroupDetails>::value_type& pair) in groups()
2107 Options::group_help(const std::string& group) const in group_help()