comparison DEPENDENCIES/generic/include/boost/geometry/geometries/linestring.hpp @ 101:c530137014c0

Update Boost headers (1.58.0)
author Chris Cannam
date Mon, 07 Sep 2015 11:12:49 +0100
parents 2665513ce2d3
children
comparison
equal deleted inserted replaced
100:793467b5e61c 101:c530137014c0
1 // Boost.Geometry (aka GGL, Generic Geometry Library) 1 // Boost.Geometry (aka GGL, Generic Geometry Library)
2 2
3 // Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands. 3 // Copyright (c) 2007-2012 Barend Gehrels, Amsterdam, the Netherlands.
4 // Copyright (c) 2008-2012 Bruno Lalande, Paris, France. 4 // Copyright (c) 2008-2012 Bruno Lalande, Paris, France.
5 // Copyright (c) 2009-2012 Mateusz Loskot, London, UK. 5 // Copyright (c) 2009-2012 Mateusz Loskot, London, UK.
6 // Copyright (c) 2014 Adam Wulkiewicz, Lodz, Poland.
6 7
7 // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library 8 // Parts of Boost.Geometry are redesigned from Geodan's Geographic Library
8 // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands. 9 // (geolib/GGL), copyright (c) 1995-2010 Geodan, Amsterdam, the Netherlands.
9 10
10 // Use, modification and distribution is subject to the Boost Software License, 11 // Use, modification and distribution is subject to the Boost Software License,
23 #include <boost/geometry/core/tag.hpp> 24 #include <boost/geometry/core/tag.hpp>
24 #include <boost/geometry/core/tags.hpp> 25 #include <boost/geometry/core/tags.hpp>
25 26
26 #include <boost/geometry/geometries/concepts/point_concept.hpp> 27 #include <boost/geometry/geometries/concepts/point_concept.hpp>
27 28
29 #ifdef BOOST_GEOMETRY_EXPERIMENTAL_ENABLE_INITIALIZER_LIST
30 #include <boost/config.hpp>
31 #ifndef BOOST_NO_CXX11_HDR_INITIALIZER_LIST
32 #include <initializer_list>
33 #endif
34 #endif
28 35
29 namespace boost { namespace geometry 36 namespace boost { namespace geometry
30 { 37 {
31 38
32 namespace model 39 namespace model
66 /// \constructor_begin_end{linestring} 73 /// \constructor_begin_end{linestring}
67 template <typename Iterator> 74 template <typename Iterator>
68 inline linestring(Iterator begin, Iterator end) 75 inline linestring(Iterator begin, Iterator end)
69 : base_type(begin, end) 76 : base_type(begin, end)
70 {} 77 {}
78
79 #ifdef BOOST_GEOMETRY_EXPERIMENTAL_ENABLE_INITIALIZER_LIST
80 #ifndef BOOST_NO_CXX11_HDR_INITIALIZER_LIST
81
82 /// \constructor_initializer_list{linestring}
83 inline linestring(std::initializer_list<Point> l)
84 : base_type(l.begin(), l.end())
85 {}
86
87 // Commented out for now in order to support Boost.Assign
88 // Without this assignment operator first the object should be created
89 // from initializer list, then it should be moved.
90 //// Without this workaround in MSVC the assignment operator is ambiguous
91 //#ifndef BOOST_MSVC
92 // /// \assignment_initializer_list{linestring}
93 // inline linestring & operator=(std::initializer_list<Point> l)
94 // {
95 // base_type::assign(l.begin(), l.end());
96 // return *this;
97 // }
98 //#endif
99
100 #endif
101 #endif
71 }; 102 };
72 103
73 } // namespace model 104 } // namespace model
74 105
75 #ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS 106 #ifndef DOXYGEN_NO_TRAITS_SPECIALIZATIONS