Lines Matching full:std

57 		std::string *out = reinterpret_cast<std::string *>(ud);  in append_char()
66 std::string *out = reinterpret_cast<std::string *>(ud); in append_len()
75 std::string *out = reinterpret_cast<std::string *>(ud); in append_int()
76 auto nstr = std::to_string (elt); in append_int()
85 std::string *out = reinterpret_cast<std::string *>(ud); in append_double()
86 auto nstr = std::to_string (elt); in append_double()
112 auto vars = reinterpret_cast<std::set<std::string> *>(ud); in ucl_variable_getter()
129 std::string var_name (data, data + len); in ucl_variable_replacer()
134 std::string var_value = replacer->replace (var_name); in ucl_variable_replacer()
149 static Ucl parse_with_strategy_function (C config_func, P parse_func, std::string &err) in parse_with_strategy_function()
170 std::unique_ptr<ucl_object_t, ucl_deleter> obj;
190 std::shared_ptr<void> it;
191 std::unique_ptr<Ucl> cur;
193 typedef std::forward_iterator_tag iterator_category;
196 it = std::shared_ptr<void>(ucl_object_iterate_new (obj.obj.get()), in const_iterator()
254 virtual bool is_variable (const std::string &str) const in is_variable()
259 virtual std::string replace (const std::string &var) const = 0;
283 Ucl(std::nullptr_t) noexcept { in Ucl()
298 Ucl(const std::string &value) { in Ucl()
310 // Implicit constructor: map-like objects (std::map, std::unordered_map, etc)
311 template <class M, typename std::enable_if<
312 std::is_constructible<std::string, typename M::key_type>::value
313 && std::is_constructible<Ucl, typename M::mapped_type>::value,
325 // Implicit constructor: vector-like objects (std::list, std::vector, std::set, etc)
326 template <class V, typename std::enable_if<
327 std::is_constructible<Ucl, typename V::value_type>::value,
345 std::string key () const { in key()
346 std::string res; in key()
388 std::string string_value (const std::string& default_val = "") const
417 Ucl lookup (const std::string &key) const in lookup()
432 inline Ucl operator[](const std::string &key) const
437 void dump (std::string &out, ucl_emitter_t type = UCL_EMIT_JSON) const
447 std::string dump (ucl_emitter_t type = UCL_EMIT_JSON) const
449 std::string out;
456 …static Ucl parse (const std::string &in, std::string &err, enum ucl_duplicate_strategy duplicate_s…
458 return parse (in, std::map<std::string, std::string>(), err, duplicate_strategy);
461 static Ucl parse (const std::string &in, const std::map<std::string, std::string> &vars,
462 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
464 std::vector< std::tuple< std::string, macro_handler_s, void * > > emptyVector;
469 static Ucl parse (const std::string &in,
470 std::vector< std::tuple< std::string /*name*/, macro_handler_s, void * /*userdata*/ > > &macros,
471 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
473 return parse (in, std::map<std::string, std::string>(), macros, err, duplicate_strategy);
477 static Ucl parse (const std::string &in, const std::map<std::string, std::string> &vars,
478 std::vector< std::tuple< std::string /*name*/, macro_handler_s, void * /*userdata*/ > > &macros,
479 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
482 std::vector<macro_userdata_s> userdata_list;
489 userdata_list.push_back ({parser, std::get<2>(macro)});
490 if (std::get<1>(macro).handler != NULL) {
492 std::get<0>(macro).c_str(),
493 std::get<1>(macro).handler,
496 else if (std::get<1>(macro).ctx_handler != NULL) {
498 std::get<0>(macro).c_str(),
499 std::get<1>(macro).ctx_handler,
517 static Ucl parse (const std::string &in, const variable_replacer &replacer,
518 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
520 std::vector< std::tuple< std::string, macro_handler_s, void * > > emptyVector;
525 static Ucl parse (const std::string &in, const variable_replacer &replacer,
526 std::vector< std::tuple< std::string /*name*/, macro_handler_s, void * /*userdata*/ > > &macros,
527 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
530 std::vector<macro_userdata_s> userdata_list;
535 userdata_list.push_back ({parser, std::get<2>(macro)});
536 if (std::get<1>(macro).handler != NULL) {
538 std::get<0>(macro).c_str(),
539 std::get<1>(macro).handler,
542 else if (std::get<1>(macro).ctx_handler != NULL) {
544 std::get<0>(macro).c_str(),
545 std::get<1>(macro).ctx_handler,
563 …static Ucl parse (const char *in, std::string &err, enum ucl_duplicate_strategy duplicate_strategy…
565 return parse (in, std::map<std::string, std::string>(), err, duplicate_strategy);
568 static Ucl parse (const char *in, const std::map<std::string, std::string> &vars, std::string &err) in parse()
574 return parse (std::string (in), vars, err); in parse()
579 std::vector< std::tuple< std::string /*name*/, macro_handler_s, void * /*userdata*/ > > &macros,
580 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
582 return parse (in, std::map<std::string, std::string>(), macros, err, duplicate_strategy);
586 static Ucl parse (const char *in, const std::map<std::string, std::string> &vars,
587 std::vector< std::tuple< std::string /*name*/, macro_handler_s, void * /*userdata*/ > > &macros,
588 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
594 return parse (std::string (in), vars, macros, err, duplicate_strategy);
598 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
604 return parse (std::string(in), replacer, err, duplicate_strategy);
609 std::vector< std::tuple< std::string /*name*/, macro_handler_s, void * /*userdata*/ > > &macros,
610 std::string &err, enum ucl_duplicate_strategy duplicate_strategy = UCL_DUPLICATE_APPEND)
616 return parse (std::string (in), replacer, macros, err, duplicate_strategy);
619 static Ucl parse_from_file (const std::string &filename, std::string &err) in parse_from_file()
621 return parse_from_file (filename, std::map<std::string, std::string>(), err); in parse_from_file()
624 …static Ucl parse_from_file (const std::string &filename, const std::map<std::string, std::string> … in parse_from_file()
639 …static Ucl parse_from_file (const std::string &filename, const variable_replacer &replacer, std::s… in parse_from_file()
653 static std::vector<std::string> find_variable (const std::string &in) in find_variable()
657 std::set<std::string> vars; in find_variable()
662 std::vector<std::string> result; in find_variable()
663 std::move (vars.begin (), vars.end (), std::back_inserter (result)); in find_variable()
667 static std::vector<std::string> find_variable (const char *in) in find_variable()
670 return std::vector<std::string>(); in find_variable()
672 return find_variable (std::string (in)); in find_variable()
675 static std::vector<std::string> find_variable_from_file (const std::string &filename) in find_variable_from_file()
679 std::set<std::string> vars; in find_variable_from_file()
684 std::vector<std::string> result; in find_variable_from_file()
685 std::move (vars.begin (), vars.end (), std::back_inserter (result)); in find_variable_from_file()