3 <meta http-equiv=
"Content-Type" content=
"text/html; charset=US-ASCII">
4 <title>Selection
</title>
5 <link rel=
"stylesheet" href=
"../../../../../../doc/src/boostbook.css" type=
"text/css">
6 <meta name=
"generator" content=
"DocBook XSL Stylesheets V1.74.0">
7 <link rel=
"home" href=
"../../index.html" title=
"Chapter 1. Boost.Icl">
8 <link rel=
"up" href=
"../function_reference.html" title=
"Function Reference">
9 <link rel=
"prev" href=
"range.html" title=
"Range">
10 <link rel=
"next" href=
"addition.html" title=
"Addition">
12 <body bgcolor=
"white" text=
"black" link=
"#0000FF" vlink=
"#840084" alink=
"#0000FF">
13 <table cellpadding=
"2" width=
"100%"><tr>
14 <td valign=
"top"><img alt=
"Boost C++ Libraries" width=
"277" height=
"86" src=
"../../../../../../boost.png"></td>
15 <td align=
"center"><a href=
"../../../../../../index.html">Home
</a></td>
16 <td align=
"center"><a href=
"../../../../../libraries.htm">Libraries
</a></td>
17 <td align=
"center"><a href=
"http://www.boost.org/users/people.html">People
</a></td>
18 <td align=
"center"><a href=
"http://www.boost.org/users/faq.html">FAQ
</a></td>
19 <td align=
"center"><a href=
"../../../../../../more/index.htm">More
</a></td>
22 <div class=
"spirit-nav">
23 <a accesskey=
"p" href=
"range.html"><img src=
"../../../../../../doc/src/images/prev.png" alt=
"Prev"></a><a accesskey=
"u" href=
"../function_reference.html"><img src=
"../../../../../../doc/src/images/up.png" alt=
"Up"></a><a accesskey=
"h" href=
"../../index.html"><img src=
"../../../../../../doc/src/images/home.png" alt=
"Home"></a><a accesskey=
"n" href=
"addition.html"><img src=
"../../../../../../doc/src/images/next.png" alt=
"Next"></a>
25 <div class=
"section boost_icl_function_reference_selection" lang=
"en">
26 <div class=
"titlepage"><div><div><h3 class=
"title">
27 <a name=
"boost_icl.function_reference.selection"></a><a class=
"link" href=
"selection.html" title=
"Selection">Selection
</a>
28 </h3></div></div></div>
29 <div class=
"informaltable"><table class=
"table">
41 <span class=
"emphasis"><em><span class=
"bold"><strong>Selection
</strong></span></em></span>
74 <code class=
"computeroutput"><span class=
"identifier">iterator
</span> <span class=
"identifier">T
</span><span class=
"special">::
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">domain_type
</span><span class=
"special">&)
</span></code>
87 <span class=
"emphasis"><em>O(log n)
</em></span>
92 <span class=
"emphasis"><em>O(log n)
</em></span>
103 <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span> <span class=
"identifier">T
</span><span class=
"special">::
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">domain_type
</span><span class=
"special">&)
</span><span class=
"keyword">const
</span></code>
108 <span class=
"emphasis"><em>O(log n)
</em></span>
113 <span class=
"emphasis"><em>O(log n)
</em></span>
118 <span class=
"emphasis"><em>O(log n)
</em></span>
123 <span class=
"emphasis"><em>O(log n)
</em></span>
134 <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span> <span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"identifier">T
</span><span class=
"special">&,
</span> <span class=
"keyword">const
</span>
135 <span class=
"identifier">domain_type
</span><span class=
"special">&)
</span></code>
140 <span class=
"emphasis"><em>O(log n)
</em></span>
145 <span class=
"emphasis"><em>O(log n)
</em></span>
164 <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span> <span class=
"identifier">T
</span><span class=
"special">::
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">interval_type
</span><span class=
"special">&)
</span><span class=
"keyword">const
</span></code>
169 <span class=
"emphasis"><em>O(log n)
</em></span>
174 <span class=
"emphasis"><em>O(log n)
</em></span>
193 <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span> <span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"identifier">T
</span><span class=
"special">&,
</span> <span class=
"keyword">const
</span>
194 <span class=
"identifier">interval_type
</span><span class=
"special">&)
</span></code>
199 <span class=
"emphasis"><em>O(log n)
</em></span>
204 <span class=
"emphasis"><em>O(log n)
</em></span>
223 <code class=
"computeroutput"><span class=
"identifier">codomain_type
</span><span class=
"special">&</span>
224 <span class=
"keyword">operator
</span><span class=
"special">[]
</span>
225 <span class=
"special">(
</span><span class=
"keyword">const
</span>
226 <span class=
"identifier">domain_type
</span><span class=
"special">&)
</span></code>
243 <span class=
"emphasis"><em>O(log n)
</em></span>
254 <code class=
"computeroutput"><span class=
"identifier">codomain_type
</span> <span class=
"keyword">operator
</span><span class=
"special">()
</span> <span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">domain_type
</span><span class=
"special">&)
</span><span class=
"keyword">const
</span></code>
263 <span class=
"emphasis"><em>O(log n)
</em></span>
272 <span class=
"emphasis"><em>O(log n)
</em></span>
277 <code class=
"computeroutput"><span class=
"identifier">is_total
</span><span class=
"special"><</span><span class=
"identifier">T
</span><span class=
"special">>::
</span><span class=
"identifier">value
</span></code>
283 <div class=
"itemizedlist"><ul type=
"disc">
285 All time
<span class=
"bold"><strong>complexities
</strong></span> are
<span class=
"emphasis"><em><span class=
"bold"><strong>logarithmic
</strong></span></em></span> in the containers
<code class=
"computeroutput"><span class=
"identifier">iterative_size
</span><span class=
"special">()
</span></code>.
288 <code class=
"computeroutput"><span class=
"keyword">operator
</span><span class=
"special">()
</span></code>
289 is available for total maps only.
292 <code class=
"computeroutput"><span class=
"identifier">interval_type
</span></code> is also the
293 interval container's
<code class=
"computeroutput"><span class=
"identifier">key_type
</span></code>
296 <div class=
"informaltable"><table class=
"table">
305 <span class=
"emphasis"><em><span class=
"bold"><strong>Selection
</strong></span></em></span>
323 <code class=
"computeroutput"><span class=
"identifier">iterator
</span> <span class=
"identifier">T
</span><span class=
"special">::
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">domain_type
</span><span class=
"special">&</span>
324 <span class=
"identifier">x
</span><span class=
"special">)
</span></code>
329 <a class=
"link" href=
"../interface/function_synopsis.html#itl_set_type"><span class=
"bold"><strong>s
</strong></span></a>
330 <a class=
"link" href=
"../interface/function_synopsis.html#itl_map_type"><span class=
"bold"><strong>m
</strong></span></a>
335 Searches the container for the element
<code class=
"computeroutput"><span class=
"identifier">x
</span></code>
336 and return an iterator to it, if
<code class=
"computeroutput"><span class=
"identifier">x
</span></code>
337 is found. Otherwise
<code class=
"computeroutput"><span class=
"identifier">find
</span></code>
338 returns iterator
<code class=
"computeroutput"><span class=
"identifier">end
</span><span class=
"special">()
</span></code>.
345 <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span> <span class=
"identifier">T
</span><span class=
"special">::
</span><span class=
"identifier">find
</span></code><br>
346 <code class=
"computeroutput"><span class=
"special">(
</span><span class=
"keyword">const
</span>
347 <span class=
"identifier">domain_type
</span><span class=
"special">&</span>
348 <span class=
"identifier">x
</span><span class=
"special">)
</span><span class=
"keyword">const
</span></code>
353 <a class=
"link" href=
"../interface/function_synopsis.html#itl_set_type"><span class=
"bold"><strong>s
</strong></span></a>
354 <a class=
"link" href=
"../interface/function_synopsis.html#itl_map_type"><span class=
"bold"><strong>m
</strong></span></a>
359 Const version of
<code class=
"computeroutput"><span class=
"identifier">find
</span></code>
367 <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span> <span class=
"identifier">T
</span><span class=
"special">::
</span><span class=
"identifier">find
</span></code><br>
368 <code class=
"computeroutput"><span class=
"special">(
</span><span class=
"keyword">const
</span>
369 <span class=
"identifier">domain_type
</span><span class=
"special">&</span>
370 <span class=
"identifier">x
</span><span class=
"special">)
</span><span class=
"keyword">const
</span></code><br> <br> <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span>
371 <span class=
"identifier">find
</span></code><br> <code class=
"computeroutput"><span class=
"special">(
</span><span class=
"identifier">T
</span><span class=
"special">&,
</span> <span class=
"keyword">const
</span>
372 <span class=
"identifier">domain_type
</span><span class=
"special">&</span>
373 <span class=
"identifier">x
</span><span class=
"special">)
</span></code>
378 <a class=
"link" href=
"../interface/function_synopsis.html#interval_set_types"><span class=
"bold"><strong>S
</strong></span></a>
379 <a class=
"link" href=
"../interface/function_synopsis.html#interval_map_types"><span class=
"bold"><strong>M
</strong></span></a>
384 For interval containers
<code class=
"computeroutput"><span class=
"identifier">c
</span></code>,
385 <code class=
"computeroutput"><span class=
"identifier">c
</span><span class=
"special">.
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"identifier">x
</span><span class=
"special">)
</span></code>
386 or
<code class=
"computeroutput"><span class=
"identifier">icl
</span><span class=
"special">::
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"identifier">c
</span><span class=
"special">,
</span><span class=
"identifier">x
</span><span class=
"special">)
</span></code>
387 searches a key element
<code class=
"computeroutput"><span class=
"identifier">x
</span></code>
388 and returns an iterator to the interval containing the element
<code class=
"computeroutput"><span class=
"identifier">x
</span></code>.
395 <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span> <span class=
"identifier">T
</span><span class=
"special">::
</span><span class=
"identifier">find
</span></code><br>
396 <code class=
"computeroutput"><span class=
"special">(
</span><span class=
"keyword">const
</span>
397 <span class=
"identifier">interval_type
</span><span class=
"special">&</span>
398 <span class=
"identifier">x
</span><span class=
"special">)
</span><span class=
"keyword">const
</span></code><br> <br> <code class=
"computeroutput"><span class=
"identifier">const_iterator
</span>
399 <span class=
"identifier">find
</span></code><br> <code class=
"computeroutput"><span class=
"special">(
</span><span class=
"identifier">T
</span><span class=
"special">&,
</span> <span class=
"keyword">const
</span>
400 <span class=
"identifier">interval_type
</span><span class=
"special">&</span>
401 <span class=
"identifier">x
</span><span class=
"special">)
</span></code>
406 <a class=
"link" href=
"../interface/function_synopsis.html#interval_set_types"><span class=
"bold"><strong>S
</strong></span></a>
407 <a class=
"link" href=
"../interface/function_synopsis.html#interval_map_types"><span class=
"bold"><strong>M
</strong></span></a>
412 For interval containers
<code class=
"computeroutput"><span class=
"identifier">c
</span></code>,
413 <code class=
"computeroutput"><span class=
"identifier">c
</span><span class=
"special">.
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"identifier">y
</span><span class=
"special">)
</span></code>
414 or
<code class=
"computeroutput"><span class=
"identifier">icl
</span><span class=
"special">::
</span><span class=
"identifier">find
</span><span class=
"special">(
</span><span class=
"identifier">c
</span><span class=
"special">,
</span><span class=
"identifier">y
</span><span class=
"special">)
</span></code>
415 searches an interval
<code class=
"computeroutput"><span class=
"identifier">y
</span></code>
416 and returns an iterator to the first interval in
<code class=
"computeroutput"><span class=
"identifier">c
</span></code>
417 that overlaps with
<code class=
"computeroutput"><span class=
"identifier">y
</span></code>.
424 <code class=
"computeroutput"><span class=
"identifier">codomain_type
</span><span class=
"special">&</span>
425 <span class=
"keyword">operator
</span><span class=
"special">[]
</span></code><br>
426 <code class=
"computeroutput"><span class=
"special">(
</span><span class=
"keyword">const
</span>
427 <span class=
"identifier">domain_type
</span><span class=
"special">&</span>
428 <span class=
"identifier">x
</span><span class=
"special">)
</span></code>
433 <a class=
"link" href=
"../interface/function_synopsis.html#itl_map_type"><span class=
"bold"><strong>m
</strong></span></a>
438 For the key element
<code class=
"computeroutput"><span class=
"identifier">x
</span></code>
439 the operator returns a reference to the mapped value. A pair
<code class=
"computeroutput"><span class=
"identifier">std
</span><span class=
"special">::
</span><span class=
"identifier">pair
</span><span class=
"special">(
</span><span class=
"identifier">x
</span><span class=
"special">,
</span><span class=
"identifier">codomain_type
</span><span class=
"special">())
</span></code>
440 will be inserted, of
<code class=
"computeroutput"><span class=
"identifier">x
</span></code>
441 is not found in the map.
448 <code class=
"computeroutput"><span class=
"identifier">codomain_type
</span> <span class=
"keyword">operator
</span><span class=
"special">()
</span></code><br> <code class=
"computeroutput"><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">domain_type
</span><span class=
"special">&</span> <span class=
"identifier">x
</span><span class=
"special">)
</span><span class=
"keyword">const
</span></code>
453 <a class=
"link" href=
"../interface/function_synopsis.html#interval_map_types"><span class=
"bold"><strong>M
</strong></span></a>
454 <a class=
"link" href=
"../interface/function_synopsis.html#itl_map_type"><span class=
"bold"><strong>m
</strong></span></a>
459 Returns the mapped value for a key
<code class=
"computeroutput"><span class=
"identifier">x
</span></code>.
460 The operator is only available for
<span class=
"emphasis"><em><span class=
"bold"><strong>total
</strong></span></em></span>
468 <span class=
"emphasis"><em><span class=
"bold"><strong>See also . . .
</strong></span></em></span>
470 <div class=
"informaltable"><table class=
"table">
471 <colgroup><col></colgroup>
472 <thead><tr></tr></thead>
475 <a class=
"link" href=
"intersection.html" title=
"Intersection"><span class=
"emphasis"><em><span class=
"bold"><strong>Intersection
</strong></span></em></span></a>
480 <span class=
"emphasis"><em><span class=
"bold"><strong>Back to section . . .
</strong></span></em></span>
482 <div class=
"informaltable"><table class=
"table">
483 <colgroup><col></colgroup>
484 <thead><tr></tr></thead>
488 <a class=
"link" href=
"../interface/function_synopsis.html#function_synopsis_table"><span class=
"emphasis"><em><span class=
"bold"><strong>Function
489 Synopsis
</strong></span></em></span></a>
494 <a class=
"link" href=
"../interface.html" title=
"Interface"><span class=
"emphasis"><em><span class=
"bold"><strong>Interface
</strong></span></em></span></a>
500 <table xmlns:
rev=
"http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width=
"100%"><tr>
501 <td align=
"left"></td>
502 <td align=
"right"><div class=
"copyright-footer">Copyright
© 2007 -
2010 Joachim Faulhaber
<br>Copyright
© 1999 -
2006 Cortex Software GmbH
<p>
503 Distributed under the Boost Software License, Version
1.0. (See accompanying
504 file LICENSE_1_0.txt or copy at
<a href=
"http://www.boost.org/LICENSE_1_0.txt" target=
"_top">http://www.boost.org/LICENSE_1_0.txt
</a>)
509 <div class=
"spirit-nav">
510 <a accesskey=
"p" href=
"range.html"><img src=
"../../../../../../doc/src/images/prev.png" alt=
"Prev"></a><a accesskey=
"u" href=
"../function_reference.html"><img src=
"../../../../../../doc/src/images/up.png" alt=
"Up"></a><a accesskey=
"h" href=
"../../index.html"><img src=
"../../../../../../doc/src/images/home.png" alt=
"Home"></a><a accesskey=
"n" href=
"addition.html"><img src=
"../../../../../../doc/src/images/next.png" alt=
"Next"></a>