Mickey Rose
568507349b
bring C++14 type traits aliases for C++11 support
2016-12-15 11:51:02 +01:00
artemp
7affd45511
refactor json_value into separate header and reduce include
bloat
2016-12-15 11:29:29 +01:00
artemp
4ba87b1e9d
c++14 support is not sufficient on windows: reverting back and start tracking Windows workarounds in separate branch
...
Revert "move BOOST_SPIRIT_DEFINE into separate headers + use across all grammar defs (#3573 )"
This reverts commit 81cfa721db
.
Revert "windows : fix errors C3259 + C3249"
This reverts commit 8327905aba
.
Revert "Workaround for VC++ C2995 via redifining BOOST_SPIRIT_DEFINE macro (#3573 )"
This reverts commit 2a2f0bf00a
.
2016-12-14 17:11:59 +01:00
artemp
81cfa721db
move BOOST_SPIRIT_DEFINE into separate headers + use across all grammar defs ( #3573 )
2016-12-14 16:35:24 +01:00
artemp
8327905aba
windows : fix errors C3259 + C3249
2016-12-14 15:53:07 +01:00
artemp
2a2f0bf00a
Workaround for VC++ C2995 via redifining BOOST_SPIRIT_DEFINE macro ( #3573 )
2016-12-14 15:10:22 +01:00
Mickey Rose
7c14964de3
simplify mapnik::value conversion rules
...
- fixes #3570
- avoids recursive exception-specification on value constructor
by only constructing a temporary for arithmetic types (everything
else passes a reference to the base variant constructor)
- also removes `is_same<decay_t<T>, value>` SFINAE check -- because
we're only passing a reference down, explicitly forcing the compiler
to use the implicitly-defined copy/move instead is pointless
2016-12-14 02:37:27 +01:00
artemp
c2a61161a6
remove hash_combine
(unused)
2016-12-13 15:51:57 +01:00
artemp
0307499753
simplify hash calculation (we don't need combine with which(), using hash<T> is sufficient)
2016-12-13 15:50:00 +01:00
artemp
8e15353818
minor format tweak
2016-12-13 15:49:03 +01:00
artemp
2924d736a8
update version to 3.1.0
2016-12-09 17:07:23 +01:00
artemp
0d703ee552
cleanup include directives
2016-12-08 18:55:55 +01:00
artemp
fe7e9a7dc5
use mapbox namespace to fix name resolution
2016-12-06 15:14:28 +01:00
artemp
df10fab439
only add valid
bounding boxes (make backward compatible)
2016-12-06 12:23:09 +01:00
Jiri Drbalek
2174c10b2f
find max element instead of std::sort
2016-12-03 14:33:55 +00:00
Dane Springmeyer
8262eb5206
avoid -Wshadow and 'unrecognized command line option' with gcc
2016-12-02 13:43:43 -08:00
artemp
5ea5f18a7e
cleanups
2016-12-02 12:42:07 +01:00
artemp
6824f4c477
fix more gcc warnings
2016-12-02 11:42:57 +01:00
artemp
069de8e266
fix gcc6 compilation issue
2016-12-02 11:04:11 +01:00
artemp
2f8da6dfd5
reduce compiler warnings (gcc 6)
2016-12-01 17:17:56 +01:00
artemp
b01481ded7
refactor feature_grammar_x3 to have a cleaner separation between feature and geometry rules
2016-11-30 11:33:35 +01:00
artemp
2dc57effb8
allow null
geometry
2016-11-29 16:26:58 +01:00
Jiri Drbalek
2b852ad1f9
remove methods that are not referenced anywhere
2016-11-29 14:55:06 +00:00
artemp
36eb7f61bd
implement from_geojson in terms of parse_(feature|geometry)
2016-11-29 10:48:06 +01:00
artemp
941a025682
remove spirit::qi usage from (Geo)JSON
2016-11-29 10:46:23 +01:00
artemp
160c1c9471
pass iterator pair by ref,const& ref to match spirit::x3 APIs and be able check for fully consumed input (needed by geojson.input logic)
2016-11-28 18:40:03 +01:00
artemp
f4f39993d0
allow accessing geometry by ref
2016-11-28 18:38:40 +01:00
artemp
cc9f23c470
allow empty "properties"
2016-11-28 18:38:04 +01:00
artemp
b05d0caba1
implement support for "GeometryCollection" type
2016-11-28 17:05:46 +01:00
artemp
0ea1c7cce2
Merge branch 'master' into develop-master
2016-11-28 15:26:13 +01:00
artemp
af1b39c689
support both box2d<float> and box2d<double>
2016-11-28 10:14:49 +01:00
artemp
d4e1cb9ae7
add an extra extract_bounding_boxes_reverse_context_type definition
2016-11-27 17:06:02 +01:00
artemp
f32b423428
attempting to keep clang on Travis happy
2016-11-25 17:59:44 +01:00
artemp
483f709541
don't include xxx_def.hpp + make rules const
2016-11-25 16:52:56 +01:00
artemp
8a436c8cdc
add extract_bounding_boxes_x3 parser configuration
2016-11-25 16:49:42 +01:00
artemp
be4f9ca79b
add missing context type definitions + BOOST_SPIRIT_INSTANTIATE_UNUSED macro to instantiate parse_rule
with boost::spirit::x3::unused_type
attribute
2016-11-25 16:46:10 +01:00
artemp
163a82fd1e
add feature_grammar_x3 implementation
2016-11-25 16:45:23 +01:00
artemp
cad029bf7c
make hex rules const
2016-11-25 16:44:20 +01:00
talaj
994a327c7f
remove superfluous declaration
2016-11-25 13:31:55 +01:00
artemp
23ba18ead2
make rules const
2016-11-25 11:48:16 +01:00
artemp
988966c68e
declare in using one macro
2016-11-25 11:47:33 +01:00
artemp
4aa60d669e
adapt box2d<float> to boost::geometry
2016-11-23 18:22:11 +01:00
artemp
71c112a0b0
add coord2f type
2016-11-23 18:21:44 +01:00
artemp
a112e88e23
fix compilation - move extract_bounding_boxes into mapnik-index src dir
2016-11-23 17:44:35 +01:00
artemp
ed5ee69c3c
refactor GeoJSON bounding box extraction into separate method for re-use and more...
2016-11-23 16:18:38 +01:00
artemp
20d6f84b3b
use char const*
2016-11-22 10:43:41 +01:00
artemp
2a0bc9db6c
GeoJSON - refactor feature/geometry parsing
2016-11-21 16:08:15 +01:00
artemp
3d629bf76d
add missing generic_json_grammar_x3
2016-11-21 11:15:21 +01:00
artemp
ead152499b
fix - ensure stringifier called recursively for nested json objects
2016-11-18 09:42:47 +01:00
artemp
493b662f16
add create_feature
helper method (geojson_value -> mapnik::feature_impl)
2016-11-17 16:44:09 +01:00
artemp
21a121df18
avoid name clashing
2016-11-17 13:13:07 +01:00
artemp
ca96d3e137
fix duplicate feature to geojson code
2016-11-17 10:33:05 +01:00
artemp
190023a085
remove unused include (#include <mapnik/json/value_converters.hpp>)
2016-11-17 10:31:55 +01:00
artemp
fec5715a69
update to use boost::bimap
2016-11-16 16:05:40 +01:00
artemp
4588c23274
use boost:bimap
to store key/name mapping for inverse searching caps
2016-11-16 16:04:54 +01:00
artemp
69b79b303f
make create_geometry a method
2016-11-16 16:03:25 +01:00
artemp
c2d7ecbef7
move keys_map initilizer with well-known-names into separate inline method
2016-11-15 17:23:27 +01:00
artemp
1b74544b08
start well-known-names enum from 1 + pre-initialise keys_map with well-known-names
2016-11-15 11:18:44 +01:00
artemp
d6bedd235c
parse well-known-names as un-quoted strings
2016-11-15 11:16:58 +01:00
artemp
1e238be7ee
move wkn_to_string to json_grammar_config.hpp
2016-11-15 10:15:10 +01:00
artemp
ae30675e98
move json well_known_names
2016-11-15 10:13:36 +01:00
Dane Springmeyer
3283f50639
Merge branch 'master' of github.com:mapnik/mapnik into develop-master
2016-11-14 15:32:39 -08:00
Dane Springmeyer
5a6d16d4fe
default scale_factor for filter_visitor (unbreaks node-mapnik compile)
2016-11-14 15:31:18 -08:00
Dane Springmeyer
4449f81e03
restore to_wkt on geometry<std::int64_t>
2016-11-14 15:23:29 -08:00
Dane Springmeyer
657dd7d73a
suppress boost warnings
2016-11-14 15:04:07 -08:00
artemp
92d35d1e40
fix json_value name clashing + add skeleton feature validation method
2016-11-14 12:18:36 +01:00
artemp
2b6f23890b
remove redundant mapnik::util::recursive_wrapper
2016-11-14 12:13:26 +01:00
artemp
6fb3dbd63f
remove BIGINT redifinition
2016-11-10 17:28:16 +01:00
artemp
e46a52c3f0
GeoJSON - spirit::x3 based parsing building blocks
2016-11-10 17:26:24 +01:00
artemp
88b16e0ca8
pass context by const ref + extract _attr(ctx) once and re-use
2016-10-20 17:16:03 +02:00
artemp
eea427b19f
cleanup include directives
2016-10-19 13:15:59 +02:00
artemp
7622aa25be
cleanup include directives
2016-10-19 13:15:15 +02:00
artemp
e74af890fb
Silence -Wundefined-var-template
warnings in enumeration.hpp
2016-10-17 16:58:22 +02:00
artemp
9846632daa
Merge branch 'master' into develop-master
2016-10-17 16:56:08 +02:00
Jiri Drbalek
b830469d2d
multiply blur radius by scale_factor
2016-10-17 11:59:21 +00:00
artemp
6790e27712
remove redundant includes directives
2016-10-17 10:49:56 +02:00
artemp
62012fbf19
re-use literal parser implementation between separator
and quote
primitives
2016-10-14 14:32:44 +02:00
artemp
83cc819c39
upgrade CSV parser to boost::spirit::x3
2016-10-14 14:24:44 +02:00
artemp
01fbbafc26
remove duplicate 'transcoder_tag`
2016-10-14 09:24:52 +02:00
artemp
4c7d4a51e6
remove unused <bitset> header
2016-10-13 17:00:12 +02:00
artemp
b27cddc101
Silence -Wundefined-var-template
warnings in enumeration.hpp
2016-10-13 17:00:12 +02:00
artemp
d934630bc5
Fix clang >= 3.9.0 compilation by using mapbox::util::variant
as alias (via deps/mapbox/variant => "types" branch)
2016-10-13 17:00:12 +02:00
artemp
ab86171c2b
GeoJSON generator - implement using geometry<double> karma adapters
2016-10-13 17:00:12 +02:00
artemp
b770db56c3
remove unused rule
2016-10-13 17:00:12 +02:00
artemp
9de3c80b0d
add specialisations for coord_type = std::int64_t
2016-10-13 17:00:12 +02:00
artemp
a63a491ba0
wkt generator - remove boost::phoenix headers
2016-10-13 17:00:12 +02:00
artemp
beee2fd539
mapnik::geometry - refactor karma adaper into separate header for re-use
2016-10-13 17:00:12 +02:00
artemp
9853353353
adapt mapnik::geometry::geometry<double>
to work with boost::spirit::karma
+ simplify and optimise WKT generator
2016-10-13 17:00:12 +02:00
artemp
67468ef356
refactor path_expression_grammar
2016-10-13 17:00:11 +02:00
artemp
d2f64604a3
consistently return x3 grammars by const&
2016-10-13 17:00:11 +02:00
artemp
1cb966cee2
upgrade WKT grammar to boost::spirit::x3
2016-10-13 17:00:11 +02:00
artemp
3d80a62531
remove unused include directives
2016-10-13 17:00:11 +02:00
artemp
ce0f87fb71
merge spirit-x3
2016-10-13 17:00:11 +02:00
artemp
9a82ffbde7
add geometry
and value
dirs
2016-10-11 18:01:30 +02:00
artemp
923efd589c
geometry_to_path.hpp
=> geometry/to_path.hpp
2016-10-11 18:01:30 +02:00
artemp
b5c9966e4b
refactor value related objects into include/value
dir
2016-10-11 18:01:30 +02:00
artemp
8ce7a1c43d
refactor souce code files with the following rule: the physical filesytem path matches namespace structure
...
e.g `mapnik::geometry::centroid()` -> `$(MAPNIK_SOURCE)/include/mapnik/geometry/centroid.hpp`
2016-10-11 18:01:29 +02:00
Jiri Drbalek
0f3eecbe5e
fix intersecting extents in different projections
2016-09-27 20:36:34 +00:00
artemp
8a8427daed
GeoJSON feature/geometry grammars - split (a | b | ...) % lit(',')
rule to avoid creating bogus temp synthesised attribute e.g boost::variant<a,b,..>
which causes clang compiler >= 3.9 to segfault. (ref #3507 )
...
NOTE: In general many Boost.Spirit gotchas can be fixed by simplifying rules (better control what gets synthesied under the bonet)
2016-09-22 12:18:34 +02:00
Mickey Rose
870b890042
remove redundant member pData_ from mapnik::image
...
I believe this is better than fixing swap() by also
swapping pData_
2016-09-07 20:03:17 +02:00