fix generic_json usage across grammars
This commit is contained in:
parent
e528b433d4
commit
6bd708af86
5 changed files with 14 additions and 15 deletions
|
@ -154,7 +154,7 @@ extract_bounding_box_grammar<Iterator, Boxes, ErrorHandler>::extract_bounding_bo
|
|||
json.key_value = (json.string_ >> lit(':') >> json.value)
|
||||
;
|
||||
|
||||
json.object = lit('{') >> *json.pairs >> lit('}')
|
||||
json.object = lit('{') >> json.pairs >> lit('}')
|
||||
;
|
||||
|
||||
json.array = lit('[')
|
||||
|
|
|
@ -65,7 +65,7 @@ geometry_grammar<Iterator, ErrorHandler>::geometry_grammar()
|
|||
;
|
||||
|
||||
json_.object = lit('{')
|
||||
> *json_.pairs
|
||||
> json_.pairs
|
||||
> lit('}')
|
||||
;
|
||||
json_.array = lit('[')
|
||||
|
|
|
@ -139,7 +139,7 @@ topojson_grammar<Iterator, ErrorHandler>::topojson_grammar()
|
|||
json.key_value = (json.string_ >> lit(':') >> json.value)
|
||||
;
|
||||
|
||||
json.object = lit('{') >> *json.pairs >> lit('}')
|
||||
json.object = lit('{') >> json.pairs >> lit('}')
|
||||
;
|
||||
|
||||
json.array = lit('[')
|
||||
|
|
|
@ -257,7 +257,14 @@ public:
|
|||
{
|
||||
return mapnik::value(tr_.transcode(val.c_str()));
|
||||
}
|
||||
|
||||
mapnik::value operator()(std::vector<mapnik::json::json_value> const& arr) const
|
||||
{
|
||||
return mapnik::value(tr_.transcode("FAIL ARRAY"));
|
||||
}
|
||||
mapnik::value operator()(std::unordered_map<std::string, mapnik::json::json_value> const& obj) const
|
||||
{
|
||||
return mapnik::value(tr_.transcode("FAIL OBJECT"));
|
||||
}
|
||||
template <typename T>
|
||||
mapnik::value operator()(T const& val) const
|
||||
{
|
||||
|
|
|
@ -67,17 +67,9 @@ struct attr_value_converter
|
|||
return mapnik::Boolean;
|
||||
}
|
||||
|
||||
mapnik::eAttributeType operator() (std::string const& /*val*/) const
|
||||
{
|
||||
return mapnik::String;
|
||||
}
|
||||
|
||||
mapnik::eAttributeType operator() (mapnik::value_unicode_string const& /*val*/) const
|
||||
{
|
||||
return mapnik::String;
|
||||
}
|
||||
|
||||
mapnik::eAttributeType operator() (mapnik::value_null const& /*val*/) const
|
||||
// string, object, array
|
||||
template <typename T>
|
||||
mapnik::eAttributeType operator() (T const& /*val*/) const
|
||||
{
|
||||
return mapnik::String;
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue