Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r83224 - in sandbox-branches/geometry/index: boost/geometry/index boost/geometry/index/detail doc/generated doc/html doc/html/geometry_index doc/html/geometry_index/r_tree doc/rtree test/rtree
From: adam.wulkiewicz_at_[hidden]
Date: 2013-02-28 21:59:41


Author: awulkiew
Date: 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
New Revision: 83224
URL: http://svn.boost.org/trac/boost/changeset/83224

Log:
value() predicate renamed to satisfies()
Text files modified:
   sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp | 14 ++-
   sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp | 57 +++++++++++++---
   sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp | 6
   sandbox-branches/geometry/index/doc/generated/predicates.qbk | 74 ++++++++++++++++++----
   sandbox-branches/geometry/index/doc/generated/rtree.qbk | 6
   sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk | 4
   sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html | 2
   sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html | 15 ++--
   sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html | 131 ++++++++++++++++++++++++++++++---------
   sandbox-branches/geometry/index/doc/html/index.html | 2
   sandbox-branches/geometry/index/doc/rtree/query.qbk | 8 +-
   sandbox-branches/geometry/index/test/rtree/test_rtree.hpp | 14 ++--
   12 files changed, 241 insertions(+), 92 deletions(-)

Modified: sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/detail/predicates.hpp 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -20,12 +20,13 @@
 // predicates
 // ------------------------------------------------------------------ //
 
+// not needed?
 struct empty {};
 
 template <typename Fun>
-struct value
+struct satisfies
 {
- value(Fun const& f) : fun(f) {}
+ satisfies(Fun const& f) : fun(f) {}
     Fun const& fun;
 };
 
@@ -151,6 +152,7 @@
     }
 };
 
+// not needed?
 template <>
 struct predicate_check<empty, value_tag>
 {
@@ -162,10 +164,10 @@
 };
 
 template <typename Fun>
-struct predicate_check<value<Fun>, value_tag>
+struct predicate_check<satisfies<Fun>, value_tag>
 {
     template <typename Value, typename Indexable>
- static inline bool apply(value<Fun> const& p, Value const& v, Indexable const&)
+ static inline bool apply(satisfies<Fun> const& p, Value const& v, Indexable const&)
     {
         return p.fun(v);
     }
@@ -326,10 +328,10 @@
 };
 
 template <typename Fun>
-struct predicate_check<value<Fun>, bounds_tag>
+struct predicate_check<satisfies<Fun>, bounds_tag>
 {
     template <typename Value, typename Box>
- static bool apply(value<Fun> const&, Value const&, Box const&)
+ static bool apply(satisfies<Fun> const&, Value const&, Box const&)
     {
         return true;
     }

Modified: sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/predicates.hpp 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -34,6 +34,11 @@
 Value will be returned by the query if <tt>bg::covered_by(Indexable, Geometry)</tt>
 returns true.
 
+\par Example
+\verbatim
+bgi::query(spatial_index, bgi::covered_by(box), std::back_inserter(result));
+\endverbatim
+
 \ingroup predicates
 
 \tparam Geometry The Geometry type.
@@ -53,6 +58,11 @@
 Value will be returned by the query if <tt>bg::disjoint(Indexable, Geometry)</tt>
 returns true.
 
+\par Example
+\verbatim
+bgi::query(spatial_index, bgi::disjoint(box), std::back_inserter(result));
+\endverbatim
+
 \ingroup predicates
 
 \tparam Geometry The Geometry type.
@@ -72,6 +82,13 @@
 Value will be returned by the query if <tt>bg::intersects(Indexable, Geometry)</tt>
 returns true.
 
+\par Example
+\verbatim
+bgi::query(spatial_index, bgi::intersects(box), std::back_inserter(result));
+bgi::query(spatial_index, bgi::intersects(ring), std::back_inserter(result));
+bgi::query(spatial_index, bgi::intersects(polygon), std::back_inserter(result));
+\endverbatim
+
 \ingroup predicates
 
 \tparam Geometry The Geometry type.
@@ -91,6 +108,11 @@
 Value will be returned by the query if <tt>bg::overlaps(Indexable, Geometry)</tt>
 returns true.
 
+\par Example
+\verbatim
+bgi::query(spatial_index, bgi::overlaps(box), std::back_inserter(result));
+\endverbatim
+
 \ingroup predicates
 
 \tparam Geometry The Geometry type.
@@ -129,6 +151,11 @@
 Value will be returned by the query if <tt>bg::within(Indexable, Geometry)</tt>
 returns true.
 
+\par Example
+\verbatim
+bgi::query(spatial_index, bgi::within(box), std::back_inserter(result));
+\endverbatim
+
 \ingroup predicates
 
 \tparam Geometry The Geometry type.
@@ -142,25 +169,31 @@
 }
 
 /*!
-\brief Generate value predicate.
+\brief Generate satisfies() predicate.
+
+A wrapper around user-defined UnaryPredicate checking if Value should be returned by spatial query.
 
-A wrapper around user-defined functor
-describing if Value should be returned by spatial query.
+\par Example
+\verbatim
+bool is_red(Value const& v) { ... }
+...
+bgi::query(spatial_index, bgi::intersects(box) && bgi::satisfies(is_red), std::back_inserter(result));
+\endverbatim
 
 \ingroup predicates
 
-\tparam Fun Functor type.
+\tparam UnaryPredicate A type of unary predicate function or function object.
 
-\param fun The functor.
+\param pred The unary predicate function or function object.
 */
-template <typename Fun>
-inline detail::value<Fun> value(Fun const& fun)
+template <typename UnaryPredicate>
+inline detail::satisfies<UnaryPredicate> satisfies(UnaryPredicate const& pred)
 {
- return detail::value<Fun>(fun);
+ return detail::satisfies<UnaryPredicate>(pred);
 }
 
 /*!
-\brief Generate nearest predicate.
+\brief Generate nearest() predicate.
 
 When nearest predicate is passed to the query, k-nearest neighbour search will be performed.
 
@@ -174,9 +207,9 @@
 
 \par Example
 \verbatim
-tree.query(bgi::nearest(pt, 5), std::back_inserter(result));
-tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
-tree.query(bgi::nearest(bgi::to_centroid(pt), 5) && bgi::within(box), std::back_inserter(result));
+bgi::query(spatial_index, bgi::nearest(pt, 5), std::back_inserter(result));
+bgi::query(spatial_index, bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
+bgi::query(spatial_index, bgi::nearest(bgi::to_centroid(pt), 5) && bgi::within(box), std::back_inserter(result));
 \endverbatim
 
 \warning

Modified: sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp
==============================================================================
--- sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp (original)
+++ sandbox-branches/geometry/index/boost/geometry/index/rtree.hpp 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -634,8 +634,8 @@
     tree.query(box, std::back_inserter(result));
     // return elements intersecting poly but not within box
     tree.query(bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
- // return elements overlapping box and meeting my_fun value predicate
- tree.query(bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+ // return elements overlapping box and meeting my_fun unary predicate
+ tree.query(bgi::overlaps(box) && bgi::satisfies(my_fun), std::back_inserter(result));
     // return 5 elements nearest to pt and elements are intersecting box
     tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
     // return 5 elements which centroids are nearest to pt and elements aren't within box
@@ -1286,7 +1286,7 @@
 // return elements intersecting poly but not within box
 bgi::query(tree, bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
 // return elements overlapping box and meeting my_fun value predicate
-bgi::query(tree, bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+bgi::query(tree, bgi::overlaps(box) && bgi::satisfies(my_fun), std::back_inserter(result));
 // return 5 elements nearest to pt and elements are intersecting box
 bgi::query(tree, bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
 // return 5 elements which centroids are nearest to pt and elements aren't within box

Modified: sandbox-branches/geometry/index/doc/generated/predicates.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/predicates.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/predicates.qbk 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -9,8 +9,8 @@
 [[[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 `intersects(Geometry const &)`]][Generate [^[link group__predicates_1ga7301c50e0272976b9f1434536383e6d0 intersects()]] predicate. ]]
 [[[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 `overlaps(Geometry const &)`]][Generate [^[link group__predicates_1ga5511236f56be1defcccbf11e742ccd88 overlaps()]] predicate. ]]
 [[[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d `within(Geometry const &)`]][Generate [^[link group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d within()]] predicate. ]]
-[[[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce `value(Fun const &)`]][Generate value predicate. ]]
-[[[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 `nearest(PointOrRelation const &, unsigned)`]][Generate nearest predicate. ]]
+[[[link group__predicates_1gae7e9291c5b99041fb155d29de0860bab `satisfies(UnaryPredicate const &)`]][Generate [link group__predicates_1gae7e9291c5b99041fb155d29de0860bab satisfies()] predicate. ]]
+[[[link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 `nearest(PointOrRelation const &, unsigned)`]][Generate [link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 nearest()] predicate. ]]
 ]
 
 [#group__predicates_1ga0a613a7f1d18ac33955bfdc2c5777c61]
@@ -35,6 +35,13 @@
 [[Type][Name][Description]]
 [[`Geometry const &`][ `g` ][The Geometry object. ]]
 ]
+[heading Example]
+
+``
+bgi::query(spatial_index, bgi::covered_by(box), std::back_inserter(result));
+``
+
+
 [endsect]
 
 [#group__predicates_1ga351bb3b82e019ff45adf789385b8007d]
@@ -59,6 +66,13 @@
 [[Type][Name][Description]]
 [[`Geometry const &`][ `g` ][The Geometry object. ]]
 ]
+[heading Example]
+
+``
+bgi::query(spatial_index, bgi::disjoint(box), std::back_inserter(result));
+``
+
+
 [endsect]
 
 [#group__predicates_1ga7301c50e0272976b9f1434536383e6d0]
@@ -83,6 +97,15 @@
 [[Type][Name][Description]]
 [[`Geometry const &`][ `g` ][The Geometry object. ]]
 ]
+[heading Example]
+
+``
+bgi::query(spatial_index, bgi::intersects(box), std::back_inserter(result));
+bgi::query(spatial_index, bgi::intersects(ring), std::back_inserter(result));
+bgi::query(spatial_index, bgi::intersects(polygon), std::back_inserter(result));
+``
+
+
 [endsect]
 
 [#group__predicates_1ga5511236f56be1defcccbf11e742ccd88]
@@ -107,6 +130,13 @@
 [[Type][Name][Description]]
 [[`Geometry const &`][ `g` ][The Geometry object. ]]
 ]
+[heading Example]
+
+``
+bgi::query(spatial_index, bgi::overlaps(box), std::back_inserter(result));
+``
+
+
 [endsect]
 
 [#group__predicates_1gabf9c4e76dd8a09a4c476f2f8fa8a0e4d]
@@ -131,35 +161,51 @@
 [[Type][Name][Description]]
 [[`Geometry const &`][ `g` ][The Geometry object. ]]
 ]
+[heading Example]
+
+``
+bgi::query(spatial_index, bgi::within(box), std::back_inserter(result));
+``
+
+
 [endsect]
 
-[#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce]
-[section value(Fun const &)]
-Generate value predicate.
+[#group__predicates_1gae7e9291c5b99041fb155d29de0860bab]
+[section satisfies(UnaryPredicate const &)]
+Generate [link group__predicates_1gae7e9291c5b99041fb155d29de0860bab satisfies()] predicate.
 
 [heading Description]
-A wrapper around user-defined functor describing if Value should be returned by spatial query.[heading Synopsis]
+A wrapper around user-defined UnaryPredicate checking if Value should be returned by spatial query.[heading Synopsis]
 [pre
-`template<``typename Fun``>`
-`detail::value<Fun> boost::geometry::index::value``(``Fun const &` `fun``)`
+`template<``typename UnaryPredicate``>`
+`detail::satisfies<UnaryPredicate> boost::geometry::index::satisfies``(``UnaryPredicate const &` `pred``)`
 ]
 
 [heading Template parameter(s)]
 [table
 [[Parameter] [Description]]
-[[`Fun`][Functor type.]]
+[[`UnaryPredicate`][A type of unary predicate function or function object.]]
 ]
 
 [heading Parameter(s)]
 [table
 [[Type][Name][Description]]
-[[`Fun const &`][ `fun` ][The functor. ]]
+[[`UnaryPredicate const &`][ `pred` ][The unary predicate function or function object. ]]
 ]
+[heading Example]
+
+``
+bool is_red(Value const& v) { ... }
+...
+bgi::query(spatial_index, bgi::intersects(box) && bgi::satisfies(is_red), std::back_inserter(result));
+``
+
+
 [endsect]
 
 [#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556]
 [section nearest(PointOrRelation const &, unsigned)]
-Generate nearest predicate.
+Generate [link group__predicates_1gae80a2c204673a8b11c4fc137cfff6556 nearest()] predicate.
 
 [heading Description]
 When nearest predicate is passed to the query, k-nearest neighbour search will be performed.
@@ -187,9 +233,9 @@
 [heading Example]
 
 ``
-tree.query(bgi::nearest(pt, 5), std::back_inserter(result));
-tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
-tree.query(bgi::nearest(bgi::to_centroid(pt), 5) && bgi::within(box), std::back_inserter(result));
+bgi::query(spatial_index, bgi::nearest(pt, 5), std::back_inserter(result));
+bgi::query(spatial_index, bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
+bgi::query(spatial_index, bgi::nearest(bgi::to_centroid(pt), 5) && bgi::within(box), std::back_inserter(result));
 ``
 
 

Modified: sandbox-branches/geometry/index/doc/generated/rtree.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/rtree.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/rtree.qbk 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -630,7 +630,7 @@
 
 This is a special kind of predicate which allows to pass a user-defined functor which checks if Value should be returned by the query. It's generated by:
 
-* [^[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce boost::geometry::index::value()]].
+* [^`boost::geometry::index::value()`].
 
 [*Nearest predicate]
 
@@ -662,8 +662,8 @@
 tree.query(box, std::back_inserter(result));
 // return elements intersecting poly but not within box
 tree.query(bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
-// return elements overlapping box and meeting my_fun value predicate
-tree.query(bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+// return elements overlapping box and meeting my_fun unary predicate
+tree.query(bgi::overlaps(box) && bgi::satisfies(my_fun), std::back_inserter(result));
 // return 5 elements nearest to pt and elements are intersecting box
 tree.query(bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
 // return 5 elements which centroids are nearest to pt and elements aren't within box

Modified: sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk (original)
+++ sandbox-branches/geometry/index/doc/generated/rtree_functions.qbk 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -202,7 +202,7 @@
 
 This is a special kind of predicate which allows to pass a user-defined functor which checks if Value should be returned by the query. It's generated by:
 
-* [^[link group__predicates_1ga8acb81106fce01da72f310184ab4d9ce boost::geometry::index::value()]].
+* [^`boost::geometry::index::value()`].
 
 [*Nearest predicate]
 
@@ -242,7 +242,7 @@
 // return elements intersecting poly but not within box
 bgi::query(tree, bgi::intersects(poly) && !bgi::within(box), std::back_inserter(result));
 // return elements overlapping box and meeting my_fun value predicate
-bgi::query(tree, bgi::overlaps(box) && bgi::value(my_fun), std::back_inserter(result));
+bgi::query(tree, bgi::overlaps(box) && bgi::satisfies(my_fun), std::back_inserter(result));
 // return 5 elements nearest to pt and elements are intersecting box
 bgi::query(tree, bgi::nearest(pt, 5) && bgi::intersects(box), std::back_inserter(result));
 // return 5 elements which centroids are nearest to pt and elements aren't within box

Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree.html 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -57,7 +57,7 @@
         queries</a></span></dt>
 <dt><span class="section"><a href="r_tree/queries.html#geometry_index.r_tree.queries.nearest_neighbours_queries">Nearest
         neighbours queries</a></span></dt>
-<dt><span class="section"><a href="r_tree/queries.html#geometry_index.r_tree.queries.value_predicate">Value
+<dt><span class="section"><a href="r_tree/queries.html#geometry_index.r_tree.queries.satisfies_predicate">Satisfies
         predicate</a></span></dt>
 <dt><span class="section"><a href="r_tree/queries.html#geometry_index.r_tree.queries.passing_a_set_of_predicates">Passing
         a set of predicates</a></span></dt>

Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/queries.html 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -33,7 +33,7 @@
         queries</a></span></dt>
 <dt><span class="section"><a href="queries.html#geometry_index.r_tree.queries.nearest_neighbours_queries">Nearest
         neighbours queries</a></span></dt>
-<dt><span class="section"><a href="queries.html#geometry_index.r_tree.queries.value_predicate">Value
+<dt><span class="section"><a href="queries.html#geometry_index.r_tree.queries.satisfies_predicate">Satisfies
         predicate</a></span></dt>
 <dt><span class="section"><a href="queries.html#geometry_index.r_tree.queries.passing_a_set_of_predicates">Passing
         a set of predicates</a></span></dt>
@@ -54,7 +54,8 @@
             some Point,
           </li>
 <li class="listitem">
- value predicate - passing user-defined functor to the query.
+ satisfies predicate - allows to pass user-defined UnaryPredicate (function
+ or function object) to the query.
           </li>
 </ul></div>
 <p>
@@ -313,13 +314,13 @@
 </div>
 <div class="section">
 <div class="titlepage"><div><div><h4 class="title">
-<a name="geometry_index.r_tree.queries.value_predicate"></a><a class="link" href="queries.html#geometry_index.r_tree.queries.value_predicate" title="Value predicate">Value
+<a name="geometry_index.r_tree.queries.satisfies_predicate"></a><a class="link" href="queries.html#geometry_index.r_tree.queries.satisfies_predicate" title="Satisfies predicate">Satisfies
         predicate</a>
 </h4></div></div></div>
 <p>
- There is a unique predicate <code class="computeroutput"><span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span><span class="special">(...)</span></code> taking user-defined function/functor
- which checks if <code class="computeroutput">Value</code> should be returned by the query. It
- may be used to check some specific conditions for user-defined Values.
+ There is a unique predicate <code class="computeroutput"><span class="identifier">index</span><span class="special">::</span><span class="identifier">satisfies</span><span class="special">(...)</span></code> taking user-defined function or function
+ object which checks if <code class="computeroutput">Value</code> should be returned by the query.
+ It may be used to check some specific conditions for user-defined Values.
         </p>
 <pre class="programlisting"><span class="keyword">bool</span> <span class="identifier">fun</span><span class="special">(</span>Value <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">v</span><span class="special">)</span>
 <span class="special">{</span>
@@ -328,7 +329,7 @@
 
 <span class="comment">// ...</span>
 
-<span class="identifier">rt</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span><span class="special">(</span><span class="identifier">fun</span><span class="special">),</span>
+<span class="identifier">rt</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">index</span><span class="special">::</span><span class="identifier">satisfies</span><span class="special">(</span><span class="identifier">fun</span><span class="special">),</span>
          <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
 </pre>
 </div>

Modified: sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html
==============================================================================
--- sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html (original)
+++ sandbox-branches/geometry/index/doc/html/geometry_index/r_tree/reference.html 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -2602,7 +2602,7 @@
             by:
           </p>
 <div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
+ <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span><span class="special">()</span></code></code>.
               </li></ul></div>
 <p>
             <span class="bold"><strong>Nearest predicate</strong></span>
@@ -2719,8 +2719,8 @@
 <span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">box</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
 <span class="comment">// return elements intersecting poly but not within box</span>
 <span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="comment">// return elements overlapping box and meeting my_fun value predicate</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">value</span><span class="special">(</span><span class="identifier">my_fun</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="comment">// return elements overlapping box and meeting my_fun unary predicate</span>
+<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">satisfies</span><span class="special">(</span><span class="identifier">my_fun</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
 <span class="comment">// return 5 elements nearest to pt and elements are intersecting box</span>
 <span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
 <span class="comment">// return 5 elements which centroids are nearest to pt and elements aren't within box</span>
@@ -4018,7 +4018,7 @@
             by:
           </p>
 <div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
- <code class="literal"><a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce">boost::geometry::index::value()</a></code>.
+ <code class="literal"><code class="computeroutput"><span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span><span class="special">()</span></code></code>.
               </li></ul></div>
 <p>
             <span class="bold"><strong>Nearest predicate</strong></span>
@@ -4156,7 +4156,7 @@
 <span class="comment">// return elements intersecting poly but not within box</span>
 <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">poly</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="special">!</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
 <span class="comment">// return elements overlapping box and meeting my_fun value predicate</span>
-<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">value</span><span class="special">(</span><span class="identifier">my_fun</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">satisfies</span><span class="special">(</span><span class="identifier">my_fun</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
 <span class="comment">// return 5 elements nearest to pt and elements are intersecting box</span>
 <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">tree</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
 <span class="comment">// return 5 elements which centroids are nearest to pt and elements aren't within box</span>
@@ -5479,13 +5479,14 @@
 <tr>
 <td>
                   <p>
- <a class="link" href="reference.html#group__predicates_1ga8acb81106fce01da72f310184ab4d9ce"><code class="computeroutput"><span class="identifier">value</span><span class="special">(</span><span class="identifier">Fun</span> <span class="keyword">const</span>
+ <a class="link" href="reference.html#group__predicates_1gae7e9291c5b99041fb155d29de0860bab"><code class="computeroutput"><span class="identifier">satisfies</span><span class="special">(</span><span class="identifier">UnaryPredicate</span> <span class="keyword">const</span>
                     <span class="special">&amp;)</span></code></a>
                   </p>
                 </td>
 <td>
                   <p>
- Generate value predicate.
+ Generate <a class="link" href="reference.html#group__predicates_1gae7e9291c5b99041fb155d29de0860bab">satisfies()</a>
+ predicate.
                   </p>
                 </td>
 </tr>
@@ -5498,7 +5499,8 @@
                 </td>
 <td>
                   <p>
- Generate nearest predicate.
+ Generate <a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556">nearest()</a>
+ predicate.
                   </p>
                 </td>
 </tr>
@@ -5609,6 +5611,16 @@
                   </td>
 </tr></tbody>
 </table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.h4"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.covered_by_geometry_const___.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">covered_by</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
 </div>
 <div class="section">
 <div class="titlepage"><div><div><h5 class="title">
@@ -5715,6 +5727,16 @@
                   </td>
 </tr></tbody>
 </table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.h4"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.disjoint_geometry_const___.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">disjoint</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
 </div>
 <div class="section">
 <div class="titlepage"><div><div><h5 class="title">
@@ -5821,6 +5843,18 @@
                   </td>
 </tr></tbody>
 </table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.h4"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.intersects_geometry_const___.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">ring</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">polygon</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
 </div>
 <div class="section">
 <div class="titlepage"><div><div><h5 class="title">
@@ -5927,6 +5961,16 @@
                   </td>
 </tr></tbody>
 </table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.h4"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.overlaps_geometry_const___.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">overlaps</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
 </div>
 <div class="section">
 <div class="titlepage"><div><div><h5 class="title">
@@ -6033,33 +6077,44 @@
                   </td>
 </tr></tbody>
 </table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.h4"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.within_geometry_const___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.within_geometry_const___.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
 </div>
 <div class="section">
 <div class="titlepage"><div><div><h5 class="title">
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___"></a><a name="group__predicates_1ga8acb81106fce01da72f310184ab4d9ce"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___" title="value(Fun const &amp;)">value(Fun
+<a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___"></a><a name="group__predicates_1gae7e9291c5b99041fb155d29de0860bab"></a><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___" title="satisfies(UnaryPredicate const &amp;)">satisfies(UnaryPredicate
           const &amp;)</a>
 </h5></div></div></div>
 <p>
- Generate value predicate.
+ Generate <a class="link" href="reference.html#group__predicates_1gae7e9291c5b99041fb155d29de0860bab">satisfies()</a>
+ predicate.
           </p>
 <h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h0"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.description">Description</a>
+<a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.h0"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.description"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.description">Description</a>
           </h6>
 <p>
- A wrapper around user-defined functor describing if Value should be returned
- by spatial query.
+ A wrapper around user-defined UnaryPredicate checking if Value should
+ be returned by spatial query.
           </p>
 <h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h1"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.synopsis">Synopsis</a>
+<a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.h1"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.synopsis"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.synopsis">Synopsis</a>
           </h6>
-<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special">&lt;</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">Fun</span></code><code class="computeroutput"><span class="special">&gt;</span></code>
-<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">value</span><span class="special">&lt;</span><span class="identifier">Fun</span><span class="special">&gt;</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">value</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">Fun</span> <span class="keyword">const</span> <span class="special">&amp;</span></code> <code class="computeroutput"><span class="identifier">fun</span></code><code class="computeroutput"><span class="special">)</span></code>
+<pre class="programlisting"><code class="computeroutput"><span class="keyword">template</span><span class="special">&lt;</span></code><code class="computeroutput"><span class="keyword">typename</span> <span class="identifier">UnaryPredicate</span></code><code class="computeroutput"><span class="special">&gt;</span></code>
+<code class="computeroutput"><span class="identifier">detail</span><span class="special">::</span><span class="identifier">satisfies</span><span class="special">&lt;</span><span class="identifier">UnaryPredicate</span><span class="special">&gt;</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">geometry</span><span class="special">::</span><span class="identifier">index</span><span class="special">::</span><span class="identifier">satisfies</span></code><code class="computeroutput"><span class="special">(</span></code><code class="computeroutput"><span class="identifier">UnaryPredicate</span> <span class="keyword">const</span> <span class="special">&amp;</span></code> <code class="computeroutput"><span class="identifier">pred</span></code><code class="computeroutput"><span class="special">)</span></code>
 </pre>
 <h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h2"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.template_parameter_s_">Template
+<a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.h2"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.template_parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.template_parameter_s_">Template
             parameter(s)</a>
           </h6>
 <div class="informaltable"><table class="table">
@@ -6082,19 +6137,19 @@
 <tbody><tr>
 <td>
                     <p>
- <code class="computeroutput"><span class="identifier">Fun</span></code>
+ <code class="computeroutput"><span class="identifier">UnaryPredicate</span></code>
                     </p>
                   </td>
 <td>
                     <p>
- Functor type.
+ A type of unary predicate function or function object.
                     </p>
                   </td>
 </tr></tbody>
 </table></div>
 <h6>
-<a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.h3"></a>
- <span><a name="geometry_index.r_tree.reference.group__predicates.value_fun_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.value_fun_const___.parameter_s_">Parameter(s)</a>
+<a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.h3"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.parameter_s_"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.parameter_s_">Parameter(s)</a>
           </h6>
 <div class="informaltable"><table class="table">
 <colgroup>
@@ -6122,22 +6177,33 @@
 <tbody><tr>
 <td>
                     <p>
- <code class="computeroutput"><span class="identifier">Fun</span> <span class="keyword">const</span>
- <span class="special">&amp;</span></code>
+ <code class="computeroutput"><span class="identifier">UnaryPredicate</span> <span class="keyword">const</span> <span class="special">&amp;</span></code>
                     </p>
                   </td>
 <td>
                     <p>
- <code class="computeroutput"><span class="identifier">fun</span></code>
+ <code class="computeroutput"><span class="identifier">pred</span></code>
                     </p>
                   </td>
 <td>
                     <p>
- The functor.
+ The unary predicate function or function object.
                     </p>
                   </td>
 </tr></tbody>
 </table></div>
+<h6>
+<a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.h4"></a>
+ <span><a name="geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.example"></a></span><a class="link" href="reference.html#geometry_index.r_tree.reference.group__predicates.satisfies_unarypredicate_const___.example">Example</a>
+ </h6>
+<p>
+</p>
+<pre class="programlisting"><span class="keyword">bool</span> <span class="identifier">is_red</span><span class="special">(</span><span class="identifier">Value</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="identifier">v</span><span class="special">)</span> <span class="special">{</span> <span class="special">...</span> <span class="special">}</span>
+<span class="special">...</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">satisfies</span><span class="special">(</span><span class="identifier">is_red</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+</pre>
+<p>
+ </p>
 </div>
 <div class="section">
 <div class="titlepage"><div><div><h5 class="title">
@@ -6145,7 +6211,8 @@
           const &amp;, unsigned)</a>
 </h5></div></div></div>
 <p>
- Generate nearest predicate.
+ Generate <a class="link" href="reference.html#group__predicates_1gae80a2c204673a8b11c4fc137cfff6556">nearest()</a>
+ predicate.
           </p>
 <h6>
 <a name="geometry_index.r_tree.reference.group__predicates.nearest_pointorrelation_const____unsigned_.h0"></a>
@@ -6252,9 +6319,9 @@
           </h6>
 <p>
 </p>
-<pre class="programlisting"><span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
-<span class="identifier">tree</span><span class="special">.</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="number">5</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<pre class="programlisting"><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">pt</span><span class="special">,</span> <span class="number">5</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">intersects</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result</span><span class="special">));</span>
+<span class="identifier">bgi</span><span class="special">::</span><span class="identifier">query</span><span class="special">(</span><span class="identifier">spatial_index</span><span class="special">,</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">nearest</span><span class="special">(</span><span class="identifier">bgi</span><span class="special">::</span><span class="identifier">to_centroid</span><span class="special">(</span><span class="identifier">pt</span><span class="special">),</span> <span class="number">5</span><span class="special">)</span> <span class="special">&amp;&amp;</span> <span class="identifier">bgi</span><span class="special">::</span><span class="identifier">within</span><span class="special">(</span><span class="identifier">box</span><span class="special">),</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">back_inserter</span><span class="special">(</span><span class="identifier">result
</span><span class="special">));</span>
 </pre>
 <p>
           </p>

Modified: sandbox-branches/geometry/index/doc/html/index.html
==============================================================================
--- sandbox-branches/geometry/index/doc/html/index.html (original)
+++ sandbox-branches/geometry/index/doc/html/index.html 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -51,7 +51,7 @@
 </div>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: February 27, 2013 at 11:59:54 GMT</small></p></td>
+<td align="left"><p><small>Last revised: March 01, 2013 at 02:58:06 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>

Modified: sandbox-branches/geometry/index/doc/rtree/query.qbk
==============================================================================
--- sandbox-branches/geometry/index/doc/rtree/query.qbk (original)
+++ sandbox-branches/geometry/index/doc/rtree/query.qbk 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -14,7 +14,7 @@
 
 * spatial predicates - defining relationship between stored Values and some Geometry,
 * nearest predicates - defining relationship between stored Values and some Point,
-* value predicate - passing user-defined functor to the query.
+* satisfies predicate - allows to pass user-defined UnaryPredicate (function or function object) to the query.
 
 For example queries may be used to retrieve Values:
 
@@ -134,9 +134,9 @@
 
 [endsect]
 
-[section Value predicate]
+[section Satisfies predicate]
 
-There is a unique predicate `index::value(...)` taking user-defined function/functor
+There is a unique predicate `index::satisfies(...)` taking user-defined function or function object
 which checks if `__value__` should be returned by the query. It may be used to check
 some specific conditions for user-defined Values.
 
@@ -147,7 +147,7 @@
 
  // ...
 
- rt.query(index::intersects(box) && index::value(fun),
+ rt.query(index::intersects(box) && index::satisfies(fun),
           std::back_inserter(result));
 
 [endsect]

Modified: sandbox-branches/geometry/index/test/rtree/test_rtree.hpp
==============================================================================
--- sandbox-branches/geometry/index/test/rtree/test_rtree.hpp (original)
+++ sandbox-branches/geometry/index/test/rtree/test_rtree.hpp 2013-02-28 21:59:39 EST (Thu, 28 Feb 2013)
@@ -832,32 +832,32 @@
     typedef typename Rtree::value_type Value;
 
     std::vector<Value> output_v;
- size_t n_res = rtree.query(bgi::nearest(pt, 5) && bgi::value(AlwaysFalse()), std::back_inserter(output_v));
+ size_t n_res = rtree.query(bgi::nearest(pt, 5) && bgi::satisfies(AlwaysFalse()), std::back_inserter(output_v));
     BOOST_CHECK(output_v.size() == n_res);
     BOOST_CHECK(n_res < 5);
 }
 
 template <typename Value>
-bool test_value_fun(Value const& v) { return true; }
+bool test_satisfies_fun(Value const& ) { return true; }
 
-struct test_value_obj
+struct test_satisfies_obj
 {
     template <typename Value>
- bool operator()(Value const& v) const { return true; }
+ bool operator()(Value const& ) const { return true; }
 };
 
 template <typename Rtree, typename Value>
 void test_value_predicate(Rtree const& rtree, std::vector<Value> const& input)
 {
     std::vector<Value> result;
- rtree.query(bgi::value(test_value_obj()), std::back_inserter(result));
+ rtree.query(bgi::satisfies(test_satisfies_obj()), std::back_inserter(result));
     BOOST_CHECK(result.size() == input.size());
     result.clear();
- rtree.query(bgi::value(test_value_fun<Value>), std::back_inserter(result));
+ rtree.query(bgi::satisfies(test_satisfies_fun<Value>), std::back_inserter(result));
     BOOST_CHECK(result.size() == input.size());
 #ifndef BOOST_NO_CXX11_LAMBDAS
     result.clear();
- rtree.query(bgi::value([](Value const& v){ return true; }), std::back_inserter(result));
+ rtree.query(bgi::satisfies([](Value const& v){ return true; }), std::back_inserter(result));
     BOOST_CHECK(result.size() == input.size());
 #endif
 }


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk