3 <meta http-equiv=
"Content-Type" content=
"text/html; charset=US-ASCII">
4 <title>Class template split_interval_map
</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=
"../../header/boost/icl/split_interval_map_hpp.html" title=
"Header <boost/icl/split_interval_map.hpp>">
9 <link rel=
"prev" href=
"../../header/boost/icl/split_interval_map_hpp.html" title=
"Header <boost/icl/split_interval_map.hpp>">
10 <link rel=
"next" href=
"is_map_icl_split__id663662.html" title=
"Struct template is_map<icl::split_interval_map< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc >>">
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=
"../../header/boost/icl/split_interval_map_hpp.html"><img src=
"../../../../../../doc/src/images/prev.png" alt=
"Prev"></a><a accesskey=
"u" href=
"../../header/boost/icl/split_interval_map_hpp.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=
"is_map_icl_split__id663662.html"><img src=
"../../../../../../doc/src/images/next.png" alt=
"Next"></a>
25 <div class=
"refentry" lang=
"en">
26 <a name=
"boost.icl.split_interval_map"></a><div class=
"titlepage"></div>
27 <div class=
"refnamediv">
28 <h2><span class=
"refentrytitle">Class template split_interval_map
</span></h2>
29 <p>boost::icl::split_interval_map
— implements a
<a class=
"link" href=
"map.html" title=
"Class template map">map
</a> as a
<a class=
"link" href=
"map.html" title=
"Class template map">map
</a> of intervals - on insertion overlapping intervals are split and associated values are combined.
</p>
31 <h2 xmlns:
rev=
"http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class=
"refsynopsisdiv-title">Synopsis
</h2>
32 <div xmlns:
rev=
"http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class=
"refsynopsisdiv"><pre class=
"synopsis"><span class=
"comment">// In header:
<<a class=
"link" href=
"../../header/boost/icl/split_interval_map_hpp.html" title=
"Header <boost/icl/split_interval_map.hpp>">boost/icl/split_interval_map.hpp
</a>>
34 </span><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> DomainT
<span class=
"special">,
</span> <span class=
"keyword">typename
</span> CodomainT
<span class=
"special">,
</span>
35 <span class=
"keyword">typename
</span> Traits
<span class=
"special">=
</span> <span class=
"identifier">icl
</span><span class=
"special">::
</span><span class=
"identifier">partial_absorber
</span><span class=
"special">,
</span>
36 <span class=
"identifier">ICL_COMPARE
</span> Compare
<span class=
"special">=
</span> <span class=
"identifier">ICL_COMPARE_INSTANCE
</span><span class=
"special">(
</span><span class=
"identifier">ICL_COMPARE_DEFAULT
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">)
</span><span class=
"special">,
</span>
37 <span class=
"identifier">ICL_COMBINE
</span> Combine
<span class=
"special">=
</span> <span class=
"identifier">ICL_COMBINE_INSTANCE
</span><span class=
"special">(
</span><span class=
"identifier">icl
</span><span class=
"special">::
</span><span class=
"identifier">inplace_plus
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">)
</span><span class=
"special">,
</span>
38 <span class=
"identifier">ICL_SECTION
</span> Section
<span class=
"special">=
</span> <span class=
"identifier">ICL_SECTION_INSTANCE
</span><span class=
"special">(
</span><span class=
"identifier">icl
</span><span class=
"special">::
</span><span class=
"identifier">inter_section
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">)
</span><span class=
"special">,
</span>
39 <span class=
"identifier">ICL_INTERVAL
</span><span class=
"special">(
</span><span class=
"identifier">ICL_COMPARE
</span><span class=
"special">)
</span> Interval
<span class=
"special">=
</span> <span class=
"identifier">ICL_INTERVAL_INSTANCE
</span><span class=
"special">(
</span><span class=
"identifier">ICL_INTERVAL_DEFAULT
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">)
</span><span class=
"special">,
</span>
40 <span class=
"identifier">ICL_ALLOC
</span> Alloc
<span class=
"special">=
</span> <span class=
"identifier">std
</span><span class=
"special">::
</span><span class=
"identifier">allocator
</span><span class=
"special">></span>
41 <span class=
"keyword">class
</span> <a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">:
</span> <span class=
"keyword">public
</span> boost::icl::interval_base_map
< boost::icl::split_interval_map
< DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc
>, DomainT, CodomainT, Traits, Compare, Combine, Section, Interval, Alloc
>
42 <span class=
"special">{
</span>
43 <span class=
"keyword">public
</span><span class=
"special">:
</span>
44 <span class=
"comment">// types
</span>
45 <span class=
"keyword">typedef
</span> <span class=
"identifier">Traits
</span> <a name=
"boost.icl.split_interval_map.traits"></a><span class=
"identifier">traits
</span><span class=
"special">;
</span> <span class=
"comment">// Traits of an itl
<a class=
"link" href=
"map.html" title=
"Class template map">map
</a>.
</span>
46 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a><span class=
"special"><</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Traits
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Combine
</span><span class=
"special">,
</span> <span class=
"identifier">Section
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <a name=
"boost.icl.split_interval_map.type"></a><span class=
"identifier">type
</span><span class=
"special">;
</span>
47 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"interval_map.html" title=
"Class template interval_map">interval_map
</a><span class=
"special"><</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Traits
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Combine
</span><span class=
"special">,
</span> <span class=
"identifier">Section
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <a name=
"boost.icl.split_interval_map.joint_type"></a><span class=
"identifier">joint_type
</span><span class=
"special">;
</span>
48 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"split_interval_map.html#boost.icl.split_interval_map.type">type
</a> <a name=
"boost.icl.split_interval_map.overloadable_type"></a><span class=
"identifier">overloadable_type
</span><span class=
"special">;
</span> <span class=
"comment">// Auxilliary type for overloadresolution.
</span>
49 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"interval_base_map.html" title=
"Class template interval_base_map">interval_base_map
</a><span class=
"special"><</span> <a class=
"link" href=
"split_interval_map.html#boost.icl.split_interval_map.type">type
</a><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Traits
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Combine
</span><span class=
"special">,
</span> <span class=
"identifier">Section
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <a name=
"boost.icl.split_interval_map.base_type"></a><span class=
"identifier">base_type
</span><span class=
"special">;
</span>
50 <span class=
"keyword">typedef
</span> <span class=
"identifier">DomainT
</span> <a name=
"boost.icl.split_interval_map.domain_type"></a><span class=
"identifier">domain_type
</span><span class=
"special">;
</span> <span class=
"comment">// Domain type (type of the keys) of the
<a class=
"link" href=
"map.html" title=
"Class template map">map
</a>.
</span>
51 <span class=
"keyword">typedef
</span> <span class=
"identifier">CodomainT
</span> <a name=
"boost.icl.split_interval_map.codomain_type"></a><span class=
"identifier">codomain_type
</span><span class=
"special">;
</span> <span class=
"comment">// Domain type (type of the keys) of the
<a class=
"link" href=
"map.html" title=
"Class template map">map
</a>.
</span>
52 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">iterator
</span> <a name=
"boost.icl.split_interval_map.iterator"></a><span class=
"identifier">iterator
</span><span class=
"special">;
</span> <span class=
"comment">// iterator for iteration over intervals
</span>
53 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">value_type
</span> <a name=
"boost.icl.split_interval_map.value_type"></a><span class=
"identifier">value_type
</span><span class=
"special">;
</span> <span class=
"comment">// value type of the implementing container
</span>
54 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">element_type
</span> <a name=
"boost.icl.split_interval_map.element_type"></a><span class=
"identifier">element_type
</span><span class=
"special">;
</span> <span class=
"comment">// Conceptual is a
<a class=
"link" href=
"map.html" title=
"Class template map">map
</a> a set of elements of type
<code class=
"computeroutput">element_type
</code>.
</span>
55 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">segment_type
</span> <a name=
"boost.icl.split_interval_map.segment_type"></a><span class=
"identifier">segment_type
</span><span class=
"special">;
</span> <span class=
"comment">// Type of an interval containers segment, that is spanned by an interval.
</span>
56 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">domain_mapping_type
</span> <a name=
"boost.icl.split_interval_map.domain_mapping_type"></a><span class=
"identifier">domain_mapping_type
</span><span class=
"special">;
</span> <span class=
"comment">// Auxiliary type to help the compiler resolve ambiguities when using std::make_pair.
</span>
57 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">interval_mapping_type
</span> <a name=
"boost.icl.split_interval_map.interval_mapping_type"></a><span class=
"identifier">interval_mapping_type
</span><span class=
"special">;
</span> <span class=
"comment">// Auxiliary type for overload resolution.
</span>
58 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">ImplMapT
</span> <a name=
"boost.icl.split_interval_map.ImplMapT"></a><span class=
"identifier">ImplMapT
</span><span class=
"special">;
</span> <span class=
"comment">// Container type for the implementation.
</span>
59 <span class=
"keyword">typedef
</span> <span class=
"identifier">base_type
</span><span class=
"special">::
</span><span class=
"identifier">codomain_combine
</span> <a name=
"boost.icl.split_interval_map.codomain_combine"></a><span class=
"identifier">codomain_combine
</span><span class=
"special">;
</span>
60 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"interval_set.html" title=
"Class template interval_set">interval_set
</a><span class=
"special"><</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <a name=
"boost.icl.split_interval_map.interval_set_type"></a><span class=
"identifier">interval_set_type
</span><span class=
"special">;
</span>
61 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"split_interval_map.html#boost.icl.split_interval_map.interval_set_type">interval_set_type
</a> <a name=
"boost.icl.split_interval_map.set_type"></a><span class=
"identifier">set_type
</span><span class=
"special">;
</span>
62 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"split_interval_map.html#boost.icl.split_interval_map.set_type">set_type
</a> <a name=
"boost.icl.split_interval_map.key_object_type"></a><span class=
"identifier">key_object_type
</span><span class=
"special">;
</span>
64 <span class=
"comment">//
<a class=
"link" href=
"split_interval_map.html#boost.icl.split_interval_mapconstruct-copy-destruct">construct/copy/destruct
</a></span>
65 <a class=
"link" href=
"split_interval_map.html#id663432-bb"><span class=
"identifier">split_interval_map
</span></a><span class=
"special">(
</span><span class=
"special">)
</span><span class=
"special">;
</span>
66 <a class=
"link" href=
"split_interval_map.html#id663436-bb"><span class=
"identifier">split_interval_map
</span></a><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
67 <span class=
"keyword">explicit
</span> <a class=
"link" href=
"split_interval_map.html#id663448-bb"><span class=
"identifier">split_interval_map
</span></a><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">domain_mapping_type
</span> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
68 <span class=
"keyword">explicit
</span> <a class=
"link" href=
"split_interval_map.html#id663455-bb"><span class=
"identifier">split_interval_map
</span></a><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">value_type
</span> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
69 <a class=
"link" href=
"split_interval_map.html#id663492-bb"><span class=
"identifier">split_interval_map
</span></a><span class=
"special">(
</span><a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&&</span><span class=
"special">)
</span><span class=
"special">;
</span>
70 split_interval_map
& <a class=
"link" href=
"split_interval_map.html#id663462-bb"><span class=
"keyword">operator
</span><span class=
"special">=
</span></a><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
71 <span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> SubType
<span class=
"special">></span>
72 split_interval_map
&
73 <a class=
"link" href=
"split_interval_map.html#id663474-bb"><span class=
"keyword">operator
</span><span class=
"special">=
</span></a><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"interval_base_map.html" title=
"Class template interval_base_map">interval_base_map
</a><span class=
"special"><</span> <span class=
"identifier">SubType
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Traits
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Combine
</span><span class=
"special">,
</span> <span class=
"identifier">Section
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
74 split_interval_map
& <a class=
"link" href=
"split_interval_map.html#id663503-bb"><span class=
"keyword">operator
</span><span class=
"special">=
</span></a><span class=
"special">(
</span><a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&&</span><span class=
"special">)
</span><span class=
"special">;
</span>
76 <span class=
"comment">//
<a class=
"link" href=
"split_interval_map.html#id663375-bb">public member functions
</a></span>
77 <span class=
"keyword">typedef
</span> <a class=
"link" href=
"split_interval_map.html#id663377-bb"><span class=
"identifier">ICL_INTERVAL_TYPE
</span></a><span class=
"special">(
</span><span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">)
</span><span class=
"special">;
</span>
78 <span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> SubType
<span class=
"special">></span>
79 <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663405-bb"><span class=
"identifier">assign
</span></a><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"interval_base_map.html" title=
"Class template interval_base_map">interval_base_map
</a><span class=
"special"><</span> <span class=
"identifier">SubType
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Traits
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Combine
</span><span class=
"special">,
</span> <span class=
"identifier">Section
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
81 <span class=
"comment">//
<a class=
"link" href=
"split_interval_map.html#id663514-bb">private member functions
</a></span>
82 <span class=
"identifier">iterator
</span> <a class=
"link" href=
"split_interval_map.html#id663516-bb"><span class=
"identifier">handle_inserted
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">)
</span> <span class=
"keyword">const
</span><span class=
"special">;
</span>
83 <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663527-bb"><span class=
"identifier">handle_inserted
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">,
</span> <span class=
"identifier">iterator
</span><span class=
"special">)
</span> <span class=
"keyword">const
</span><span class=
"special">;
</span>
84 <span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span> <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663543-bb"><span class=
"identifier">handle_left_combined
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">)
</span><span class=
"special">;
</span>
85 <span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span> <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663560-bb"><span class=
"identifier">handle_combined
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">)
</span><span class=
"special">;
</span>
86 <span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span>
87 <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663576-bb"><span class=
"identifier">handle_preceeded_combined
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">,
</span> <span class=
"identifier">iterator
</span> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
88 <span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span>
89 <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663598-bb"><span class=
"identifier">handle_succeeded_combined
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">,
</span> <span class=
"identifier">iterator
</span><span class=
"special">)
</span><span class=
"special">;
</span>
90 <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663620-bb"><span class=
"identifier">handle_reinserted
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">)
</span><span class=
"special">;
</span>
91 <span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span>
92 <span class=
"keyword">void
</span> <a class=
"link" href=
"split_interval_map.html#id663630-bb"><span class=
"identifier">gap_insert_at
</span></a><span class=
"special">(
</span><span class=
"identifier">iterator
</span> <span class=
"special">&</span><span class=
"special">,
</span> <span class=
"identifier">iterator
</span><span class=
"special">,
</span> <span class=
"keyword">const
</span> <span class=
"identifier">interval_type
</span> <span class=
"special">&</span><span class=
"special">,
</span>
93 <span class=
"keyword">const
</span> <span class=
"identifier">codomain_type
</span> <span class=
"special">&</span><span class=
"special">)
</span><span class=
"special">;
</span>
94 <span class=
"special">}
</span><span class=
"special">;
</span></pre></div>
95 <div class=
"refsect1" lang=
"en">
96 <a name=
"id1352652"></a><h2>Description
</h2>
97 <div class=
"refsect2" lang=
"en">
98 <a name=
"id1352655"></a><h3>
99 <a name=
"boost.icl.split_interval_mapconstruct-copy-destruct"></a><code class=
"computeroutput">split_interval_map
</code>
101 construct/copy/destruct
</h3>
102 <div class=
"orderedlist"><ol type=
"1">
104 <pre class=
"literallayout"><a name=
"id663432-bb"></a><span class=
"identifier">split_interval_map
</span><span class=
"special">(
</span><span class=
"special">)
</span><span class=
"special">;
</span></pre>Default constructor for the empty object.
</li>
106 <pre class=
"literallayout"><a name=
"id663436-bb"></a><span class=
"identifier">split_interval_map
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&</span> src
<span class=
"special">)
</span><span class=
"special">;
</span></pre>Copy constructor.
</li>
107 <li><pre class=
"literallayout"><span class=
"keyword">explicit
</span> <a name=
"id663448-bb"></a><span class=
"identifier">split_interval_map
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">domain_mapping_type
</span> <span class=
"special">&</span> base_pair
<span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
108 <li><pre class=
"literallayout"><span class=
"keyword">explicit
</span> <a name=
"id663455-bb"></a><span class=
"identifier">split_interval_map
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <span class=
"identifier">value_type
</span> <span class=
"special">&</span> value_pair
<span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
110 <pre class=
"literallayout"><a name=
"id663492-bb"></a><span class=
"identifier">split_interval_map
</span><span class=
"special">(
</span><a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&&</span> src
<span class=
"special">)
</span><span class=
"special">;
</span></pre>Move constructor.
</li>
112 <pre class=
"literallayout">split_interval_map
& <a name=
"id663462-bb"></a><span class=
"keyword">operator
</span><span class=
"special">=
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&</span> src
<span class=
"special">)
</span><span class=
"special">;
</span></pre>Assignment operator.
</li>
114 <pre class=
"literallayout"><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> SubType
<span class=
"special">></span>
115 split_interval_map
&
116 <a name=
"id663474-bb"></a><span class=
"keyword">operator
</span><span class=
"special">=
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"interval_base_map.html" title=
"Class template interval_base_map">interval_base_map
</a><span class=
"special"><</span> <span class=
"identifier">SubType
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Traits
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Combine
</span><span class=
"special">,
</span> <span class=
"identifier">Section
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <span class=
"special">&</span> src
<span class=
"special">)
</span><span class=
"special">;
</span></pre>Assignment operator for base type.
</li>
118 <pre class=
"literallayout">split_interval_map
& <a name=
"id663503-bb"></a><span class=
"keyword">operator
</span><span class=
"special">=
</span><span class=
"special">(
</span><a class=
"link" href=
"split_interval_map.html" title=
"Class template split_interval_map">split_interval_map
</a> <span class=
"special">&&</span> src
<span class=
"special">)
</span><span class=
"special">;
</span></pre>Move assignment operator.
</li>
121 <div class=
"refsect2" lang=
"en">
122 <a name=
"id1353069"></a><h3>
123 <a name=
"id663375-bb"></a><code class=
"computeroutput">split_interval_map
</code> public member functions
</h3>
124 <div class=
"orderedlist"><ol type=
"1">
126 <pre class=
"literallayout"><span class=
"keyword">typedef
</span> <a name=
"id663377-bb"></a><span class=
"identifier">ICL_INTERVAL_TYPE
</span><span class=
"special">(
</span><span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">)
</span><span class=
"special">;
</span></pre>The interval type of the
<code class=
"computeroutput"><a class=
"link" href=
"map.html" title=
"Class template map">map
</a></code>.
</li>
128 <pre class=
"literallayout"><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> SubType
<span class=
"special">></span>
129 <span class=
"keyword">void
</span> <a name=
"id663405-bb"></a><span class=
"identifier">assign
</span><span class=
"special">(
</span><span class=
"keyword">const
</span> <a class=
"link" href=
"interval_base_map.html" title=
"Class template interval_base_map">interval_base_map
</a><span class=
"special"><</span> <span class=
"identifier">SubType
</span><span class=
"special">,
</span> <span class=
"identifier">DomainT
</span><span class=
"special">,
</span> <span class=
"identifier">CodomainT
</span><span class=
"special">,
</span> <span class=
"identifier">Traits
</span><span class=
"special">,
</span> <span class=
"identifier">Compare
</span><span class=
"special">,
</span> <span class=
"identifier">Combine
</span><span class=
"special">,
</span> <span class=
"identifier">Section
</span><span class=
"special">,
</span> <span class=
"identifier">Interval
</span><span class=
"special">,
</span> <span class=
"identifier">Alloc
</span> <span class=
"special">></span> <span class=
"special">&</span> src
<span class=
"special">)
</span><span class=
"special">;
</span></pre>Assignment from a base
<code class=
"computeroutput"><a class=
"link" href=
"interval_map.html" title=
"Class template interval_map">interval_map
</a></code>.
</li>
132 <div class=
"refsect2" lang=
"en">
133 <a name=
"id1353286"></a><h3>
134 <a name=
"id663514-bb"></a><code class=
"computeroutput">split_interval_map
</code> private member functions
</h3>
135 <div class=
"orderedlist"><ol type=
"1">
136 <li><pre class=
"literallayout"><span class=
"identifier">iterator
</span> <a name=
"id663516-bb"></a><span class=
"identifier">handle_inserted
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span> it_
<span class=
"special">)
</span> <span class=
"keyword">const
</span><span class=
"special">;
</span></pre></li>
137 <li><pre class=
"literallayout"><span class=
"keyword">void
</span> <a name=
"id663527-bb"></a><span class=
"identifier">handle_inserted
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">,
</span> <span class=
"identifier">iterator
</span><span class=
"special">)
</span> <span class=
"keyword">const
</span><span class=
"special">;
</span></pre></li>
138 <li><pre class=
"literallayout"><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span> <span class=
"keyword">void
</span> <a name=
"id663543-bb"></a><span class=
"identifier">handle_left_combined
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span> it_
<span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
139 <li><pre class=
"literallayout"><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span> <span class=
"keyword">void
</span> <a name=
"id663560-bb"></a><span class=
"identifier">handle_combined
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span> it_
<span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
140 <li><pre class=
"literallayout"><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span>
141 <span class=
"keyword">void
</span> <a name=
"id663576-bb"></a><span class=
"identifier">handle_preceeded_combined
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span> prior_
<span class=
"special">,
</span> <span class=
"identifier">iterator
</span> <span class=
"special">&</span> it_
<span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
142 <li><pre class=
"literallayout"><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span>
143 <span class=
"keyword">void
</span> <a name=
"id663598-bb"></a><span class=
"identifier">handle_succeeded_combined
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span> it_
<span class=
"special">,
</span> <span class=
"identifier">iterator
</span><span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
144 <li><pre class=
"literallayout"><span class=
"keyword">void
</span> <a name=
"id663620-bb"></a><span class=
"identifier">handle_reinserted
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span><span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
145 <li><pre class=
"literallayout"><span class=
"keyword">template
</span><span class=
"special"><</span><span class=
"keyword">typename
</span> Combiner
<span class=
"special">></span>
146 <span class=
"keyword">void
</span> <a name=
"id663630-bb"></a><span class=
"identifier">gap_insert_at
</span><span class=
"special">(
</span><span class=
"identifier">iterator
</span> <span class=
"special">&</span> it_
<span class=
"special">,
</span> <span class=
"identifier">iterator
</span> prior_
<span class=
"special">,
</span>
147 <span class=
"keyword">const
</span> <span class=
"identifier">interval_type
</span> <span class=
"special">&</span> end_gap
<span class=
"special">,
</span>
148 <span class=
"keyword">const
</span> <span class=
"identifier">codomain_type
</span> <span class=
"special">&</span> co_val
<span class=
"special">)
</span><span class=
"special">;
</span></pre></li>
153 <table xmlns:
rev=
"http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width=
"100%"><tr>
154 <td align=
"left"></td>
155 <td align=
"right"><div class=
"copyright-footer">Copyright
© 2007 -
2010 Joachim Faulhaber
<br>Copyright
© 1999 -
2006 Cortex Software GmbH
<p>
156 Distributed under the Boost Software License, Version
1.0. (See accompanying
157 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>)
162 <div class=
"spirit-nav">
163 <a accesskey=
"p" href=
"../../header/boost/icl/split_interval_map_hpp.html"><img src=
"../../../../../../doc/src/images/prev.png" alt=
"Prev"></a><a accesskey=
"u" href=
"../../header/boost/icl/split_interval_map_hpp.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=
"is_map_icl_split__id663662.html"><img src=
"../../../../../../doc/src/images/next.png" alt=
"Next"></a>