feat: allow heterogenous array

if TOML11_USE_UNRELEASED_TOML_FEATURES is activated.
In TOML v0.5.0, heterogenous arrays are not allowed. But after some
discussions in toml-lang/toml, it is decided to allow it in the next
release (toml-lang/toml/pull/676).
To support it, disable type check in parse_array function.
This commit is contained in:
ToruNiina
2019-11-08 15:36:58 +09:00
parent 429763377f
commit 9af2d65417

View File

@@ -938,6 +938,7 @@ parse_array(location<Container>& loc)
if(auto val = parse_value<value_type>(loc))
{
#ifndef TOML11_USE_UNRELEASED_TOML_FEATURES
if(!retval.empty() && retval.front().type() != val.as_ok().type())
{
auto array_start_loc = loc;
@@ -956,6 +957,7 @@ parse_array(location<Container>& loc)
}
}), source_location(std::addressof(loc)));
}
#endif
retval.push_back(std::move(val.unwrap()));
}
else