| 3095 | } |
| 3096 | |
| 3097 | std::shared_ptr<table> parse_inline_table(std::string::iterator& it, |
| 3098 | std::string::iterator& end) |
| 3099 | { |
| 3100 | auto tbl = make_table(); |
| 3101 | do |
| 3102 | { |
| 3103 | ++it; |
| 3104 | if (it == end) |
| 3105 | throw_parse_exception("Unterminated inline table"); |
| 3106 | |
| 3107 | consume_whitespace(it, end); |
| 3108 | if (it != end && *it != '}') |
| 3109 | { |
| 3110 | parse_key_value(it, end, tbl.get()); |
| 3111 | consume_whitespace(it, end); |
| 3112 | } |
| 3113 | } while (*it == ','); |
| 3114 | |
| 3115 | if (it == end || *it != '}') |
| 3116 | throw_parse_exception("Unterminated inline table"); |
| 3117 | |
| 3118 | ++it; |
| 3119 | consume_whitespace(it, end); |
| 3120 | |
| 3121 | return tbl; |
| 3122 | } |
| 3123 | |
| 3124 | void skip_whitespace_and_comments(std::string::iterator& start, |
| 3125 | std::string::iterator& end) |
no test coverage detected