MCPcopy Create free account
hub / github.com/boostorg/parser / main

Function main

test/parser_rule.cpp:222–652  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

220// clang-format on
221
222int main()
223{
224
225// no_attribute_rules
226{
227 {
228 std::string const str = "xyz";
229 BOOST_TEST(!parse(str, flat_rule));
230 BOOST_TEST(!parse(str, recursive_rule));
231 }
232 {
233 std::string const str = "def";
234 bool const flat_result{parse(str, flat_rule)};
235 BOOST_TEST(flat_result);
236 BOOST_TEST(!parse(str, recursive_rule));
237 }
238 {
239 std::string const str = "abc";
240 BOOST_TEST(parse(str, flat_rule));
241 BOOST_TEST(parse(str, recursive_rule));
242 }
243 {
244 std::string const str = "abcaabc";
245 BOOST_TEST(!parse(str, flat_rule));
246 BOOST_TEST(parse(str, recursive_rule));
247 }
248 {
249 std::string const str = "abcaabc";
250 auto first = str.c_str();
251 BOOST_TEST(prefix_parse(first, boost::parser::detail::text::null_sentinel, flat_rule));
252 first = str.c_str();
253 BOOST_TEST(prefix_parse(first, boost::parser::detail::text::null_sentinel, recursive_rule));
254 }
255}
256
257// string_attribute_rules
258{
259 {
260 std::string const str = "xyz";
261 BOOST_TEST(!parse(str, flat_string_rule));
262 BOOST_TEST(!parse(str, recursive_string_rule));
263 }
264 {
265 std::string const str = "def";
266 auto const flat_result = parse(str, flat_string_rule);
267 BOOST_TEST(flat_result);
268 BOOST_TEST(*flat_result == "def");
269 BOOST_TEST(!parse(str, recursive_string_rule));
270 }
271 {
272 std::string const str = "abc";
273 BOOST_TEST(*parse(str, flat_string_rule) == "abc");
274 BOOST_TEST(*parse(str, recursive_string_rule) == "abc");
275 }
276 {
277 std::string const str = "abcaabc";
278 BOOST_TEST(!parse(str, flat_string_rule));
279 BOOST_TEST(parse(str, recursive_string_rule));

Callers

nothing calls this directly

Calls 6

prefix_parseFunction · 0.85
callback_prefix_parseFunction · 0.85
balanced_parensFunction · 0.85
parseFunction · 0.50
sizeMethod · 0.45
withMethod · 0.45

Tested by

no test coverage detected