1 <!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 3.2//EN">
5 <meta http-equiv=
"Content-Type" content=
"text/html; charset=ISO-8859-1">
6 <title>Boost.Assignment Documentation
</title>
7 <link rel=
"stylesheet" href=
"style.css" type=
"text/css">
12 <span class=comment
>// Boost.Assign library
14 // Copyright Thorsten Ottosen
2003-
2004. Use, modification and
15 // distribution is subject to the Boost Software License, Version
16 //
1.0. (See accompanying file LICENSE_1_0.txt or copy at
17 // http://www.boost.org/LICENSE_1_0.txt)
19 // For more information, see http://www.boost.org/libs/assign/
23 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>detail
</span><span class=special
>/
</span><span class=identifier
>workaround
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>>
25 <span class=preprocessor
>#if
</span><span class=identifier
>BOOST_WORKAROUND
</span><span class=special
>(
</span><span class=identifier
>__BORLANDC__
</span><span class=special
>,
</span><span class=identifier
>BOOST_TESTED_AT
</span><span class=special
>(
</span><span class=number
>0</span><span class=identifier
>x564
</span><span class=special
>))
</span>
26 ###
<span class=identifier
>pragma
</span><span class=identifier
>warn
</span><span class=special
>-
</span><span class=number
>8091 </span><span class=comment
>// supress warning in Boost.Test
</span>
27 ###
<span class=identifier
>pragma
</span><span class=identifier
>warn
</span><span class=special
>-
</span><span class=number
>8057 </span><span class=comment
>// unused argument argc/argv in Boost.Test
</span>
28 <span class=preprocessor
>#endif
30 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>assign
</span><span class=special
>/
</span><span class=identifier
>list_of
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
31 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>assign
</span><span class=special
>/
</span><span class=identifier
>list_inserter
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
32 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>multi_index_container
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
33 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>multi_index
</span><span class=special
>/
</span><span class=identifier
>identity
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
34 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>multi_index
</span><span class=special
>/
</span><span class=identifier
>member
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
35 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>multi_index
</span><span class=special
>/
</span><span class=identifier
>ordered_index
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
36 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>multi_index
</span><span class=special
>/
</span><span class=identifier
>sequenced_index
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
37 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>test
</span><span class=special
>/
</span><span class=identifier
>unit_test
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
38 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>test
</span><span class=special
>/
</span><span class=identifier
>test_tools
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>></span>
39 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>cstddef
</span><span class=special
>></span>
40 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>ostream
</span><span class=special
>></span>
41 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>string
</span><span class=special
>>
43 <span class=keyword
>using
</span><span class=keyword
>namespace
</span><span class=identifier
>boost
</span><span class=special
>;
</span>
44 <span class=keyword
>using
</span><span class=keyword
>namespace
</span><span class=identifier
>boost
</span><span class=special
>::
</span><span class=identifier
>multi_index
</span><span class=special
>;
</span>
45 <span class=keyword
>namespace
</span><span class=identifier
>ba
</span><span class=special
>=
</span><span class=identifier
>boost
</span><span class=special
>::
</span><span class=identifier
>assign
</span><span class=special
>;
47 <span class=comment
>//
48 // Define a classical multi_index_container for employees
50 <span class=keyword
>struct
</span><span class=identifier
>employee
</span>
52 </span><span class=keyword
>int
</span><span class=identifier
>id
</span><span class=special
>;
53 </span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>string
</span><span class=identifier
>name
</span><span class=special
>;
54 </span><span class=keyword
>int
</span><span class=identifier
>age
</span><span class=special
>;
56 </span><span class=identifier
>employee
</span><span class=special
>(
</span><span class=keyword
>int
</span><span class=identifier
>id_
</span><span class=special
>,
</span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>string
</span><span class=identifier
>name_
</span><span class=special
>,
</span><span class=keyword
>int
</span><span class=identifier
>age_
</span><span class=special
>):
</span><span class=identifier
>id
</span><span class=special
>(
</span><span class=identifier
>id_
</span><span class=special
>),
</span><span class=identifier
>name
</span><span class=special
>(
</span><span class=identifier
>name_
</span><span class=special
>),
</span><span class=identifier
>age
</span><span class=special
>(
</span><span class=identifier
>age_
</span><span class=special
>){}
58 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
>==(
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>x
</span><span class=special
>)
</span><span class=keyword
>const
59 </span><span class=special
>{
60 </span><span class=keyword
>return
</span><span class=identifier
>id
</span><span class=special
>==
</span><span class=identifier
>x
</span><span class=special
>.
</span><span class=identifier
>id
</span><span class=special
>&&</span><span class=identifier
>name
</span><span class=special
>==
</span><span class=identifier
>x
</span><span class=special
>.
</span><span class=identifier
>name
</span><span class=special
>&&</span><span class=identifier
>age
</span><span class=special
>==
</span><span class=identifier
>x
</span><span class=special
>.
</span><span class=identifier
>age
</span><span class=special
>;
61 </span><span class=special
>}
63 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
><(
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>x
</span><span class=special
>)
</span><span class=keyword
>const
64 </span><span class=special
>{
65 </span><span class=keyword
>return
</span><span class=identifier
>id
</span><span class=special
><</span><span class=identifier
>x
</span><span class=special
>.
</span><span class=identifier
>id
</span><span class=special
>;
66 </span><span class=special
>}
68 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
>!=(
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>x
</span><span class=special
>)
</span><span class=keyword
>const
</span><span class=special
>{
</span><span class=keyword
>return
</span><span class=special
>!(*
</span><span class=keyword
>this
</span><span class=special
>==
</span><span class=identifier
>x
</span><span class=special
>);}
69 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
>> </span><span class=special
>(
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>x
</span><span class=special
>)
</span><span class=keyword
>const
</span><span class=special
>{
</span><span class=keyword
>return
</span><span class=identifier
>x
</span><span class=special
><*
</span><span class=keyword
>this
</span><span class=special
>;}
70 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
>>=(
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>x
</span><span class=special
>)
</span><span class=keyword
>const
</span><span class=special
>{
</span><span class=keyword
>return
</span><span class=special
>!(*
</span><span class=keyword
>this
</span><span class=special
><</span><span class=identifier
>x
</span><span class=special
>);}
71 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
><=(
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>x
</span><span class=special
>)
</span><span class=keyword
>const
</span><span class=special
>{
</span><span class=keyword
>return
</span><span class=special
>!(
</span><span class=identifier
>x
</span><span class=special
><*
</span><span class=keyword
>this
</span><span class=special
>);}
73 </span><span class=keyword
>struct
</span><span class=identifier
>comp_id
74 </span><span class=special
>{
75 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
>()(
</span><span class=keyword
>int
</span><span class=identifier
>x
</span><span class=special
>,
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>e2
</span><span class=special
>)
</span><span class=keyword
>const
</span><span class=special
>{
</span><span class=keyword
>return
</span><span class=identifier
>x
</span><span class=special
><</span><span class=identifier
>e2
</span><span class=special
>.
</span><span class=identifier
>id
</span><span class=special
>;}
76 </span><span class=keyword
>bool
</span><span class=keyword
>operator
</span><span class=special
>()(
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>e1
</span><span class=special
>,
</span><span class=keyword
>int
</span><span class=identifier
>x
</span><span class=special
>)
</span><span class=keyword
>const
</span><span class=special
>{
</span><span class=keyword
>return
</span><span class=identifier
>e1
</span><span class=special
>.
</span><span class=identifier
>id
</span><span class=special
><</span><span class=identifier
>x
</span><span class=special
>;}
77 </span><span class=special
>};
79 </span><span class=keyword
>friend
</span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>ostream
</span><span class=special
>& </span><span class=keyword
>operator
</span><span class=special
><<(
</span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>ostream
</span><span class=special
>& </span><span class=identifier
>os
</span><span class=special
>,
</span><span class=keyword
>const
</span><span class=identifier
>employee
</span><span class=special
>& </span><span class=identifier
>e
</span><span class=special
>)
80 </span><span class=special
>{
81 </span><span class=identifier
>os
</span><span class=special
><<</span><span class=identifier
>e
</span><span class=special
>.
</span><span class=identifier
>id
</span><span class=special
><<</span><span class=string
>" "</span><span class=special
><<</span><span class=identifier
>e
</span><span class=special
>.
</span><span class=identifier
>name
</span><span class=special
><<</span><span class=string
>" "</span><span class=special
><<</span><span class=identifier
>e
</span><span class=special
>.
</span><span class=identifier
>age
</span><span class=special
><<</span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>endl
</span><span class=special
>;
82 </span><span class=keyword
>return
</span><span class=identifier
>os
</span><span class=special
>;
83 </span><span class=special
>}
</span>
84 <span class=special
>};
86 <span class=keyword
>struct
</span><span class=identifier
>name
</span><span class=special
>{};
</span>
87 <span class=keyword
>struct
</span><span class=identifier
>by_name
</span><span class=special
>{};
</span>
88 <span class=keyword
>struct
</span><span class=identifier
>age
</span><span class=special
>{};
</span>
89 <span class=keyword
>struct
</span><span class=identifier
>as_inserted
</span><span class=special
>{};
91 <span class=keyword
>typedef
92 </span><span class=identifier
>multi_index_container
</span><span class=special
><
93 </span><span class=identifier
>employee
</span><span class=special
>,
94 </span><span class=identifier
>indexed_by
</span><span class=special
><
95 </span><span class=identifier
>ordered_unique
</span><span class=special
><
96 </span><span class=identifier
>identity
</span><span class=special
><</span><span class=identifier
>employee
</span><span class=special
>> </span><span class=special
>>,
97 </span><span class=identifier
>ordered_non_unique
</span><span class=special
><
98 </span><span class=identifier
>tag
</span><span class=special
><</span><span class=identifier
>name
</span><span class=special
>,
</span><span class=identifier
>by_name
</span><span class=special
>>,
99 </span><span class=identifier
>BOOST_MULTI_INDEX_MEMBER
</span><span class=special
>(
</span><span class=identifier
>employee
</span><span class=special
>,
</span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>string
</span><span class=special
>,
</span><span class=identifier
>name
</span><span class=special
>)
>,
100 </span><span class=identifier
>ordered_non_unique
</span><span class=special
><
101 </span><span class=identifier
>tag
</span><span class=special
><</span><span class=identifier
>age
</span><span class=special
>>,
102 </span><span class=identifier
>BOOST_MULTI_INDEX_MEMBER
</span><span class=special
>(
</span><span class=identifier
>employee
</span><span class=special
>,
</span><span class=keyword
>int
</span><span class=special
>,
</span><span class=identifier
>age
</span><span class=special
>)
>,
103 </span><span class=identifier
>sequenced
</span><span class=special
><
104 </span><span class=identifier
>tag
</span><span class=special
><</span><span class=identifier
>as_inserted
</span><span class=special
>> </span><span class=special
>> </span><span class=special
>> </span><span class=special
>>
105 </span><span class=identifier
>employee_set
</span><span class=special
>;
107 <span class=preprocessor
>#if
</span><span class=identifier
>defined
</span><span class=special
>(
</span><span class=identifier
>BOOST_NO_MEMBER_TEMPLATES
</span><span class=special
>)
</span>
108 <span class=keyword
>typedef
</span><span class=identifier
>nth_index
</span><span class=special
><
109 </span><span class=identifier
>employee_set
</span><span class=special
>,
</span><span class=number
>1</span><span class=special
>>::
</span><span class=identifier
>type
</span><span class=identifier
>employee_set_by_name
</span><span class=special
>;
</span>
110 <span class=preprocessor
>#else
</span>
111 <span class=keyword
>typedef
</span><span class=identifier
>employee_set
</span><span class=special
>::
</span><span class=identifier
>nth_index
</span><span class=special
><</span><span class=number
>1</span><span class=special
>>::
</span><span class=identifier
>type
</span><span class=identifier
>employee_set_by_name
</span><span class=special
>;
</span>
112 <span class=preprocessor
>#endif
114 <span class=keyword
>typedef
</span><span class=identifier
>boost
</span><span class=special
>::
</span><span class=identifier
>multi_index
</span><span class=special
>::
</span><span class=identifier
>index
</span><span class=special
><
115 </span><span class=identifier
>employee_set
</span><span class=special
>,
</span><span class=identifier
>age
</span><span class=special
>>::
</span><span class=identifier
>type
</span><span class=identifier
>employee_set_by_age
</span><span class=special
>;
</span>
116 <span class=keyword
>typedef
</span><span class=identifier
>boost
</span><span class=special
>::
</span><span class=identifier
>multi_index
</span><span class=special
>::
</span><span class=identifier
>index
</span><span class=special
><
117 </span><span class=identifier
>employee_set
</span><span class=special
>,
</span><span class=identifier
>as_inserted
</span><span class=special
>>::
</span><span class=identifier
>type
</span><span class=identifier
>employee_set_as_inserted
</span><span class=special
>;
119 <span class=comment
>//
120 // Define a multi_index_container with a list-like index and an ordered index
122 <span class=keyword
>typedef
</span><span class=identifier
>multi_index_container
</span><span class=special
><
123 </span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>string
</span><span class=special
>,
124 </span><span class=identifier
>indexed_by
</span><span class=special
><
125 </span><span class=identifier
>sequenced
</span><span class=special
><>,
</span><span class=comment
>// list-like index
126 </span><span class=identifier
>ordered_non_unique
</span><span class=special
><</span><span class=identifier
>identity
</span><span class=special
><</span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>string
</span><span class=special
>> </span><span class=special
>> </span><span class=comment
>// words by alphabetical order
127 </span><span class=special
>></span>
128 <span class=special
>> </span><span class=identifier
>text_container
</span><span class=special
>;
132 <span class=keyword
>void
</span><span class=identifier
>test_multi_index_container
</span><span class=special
>()
</span>
133 <span class=special
>{
134 </span><span class=identifier
>employee_set
</span><span class=identifier
>eset
</span><span class=special
>=
</span><span class=identifier
>ba
</span><span class=special
>::
</span><span class=identifier
>list_of
</span><span class=special
>< </span><span class=identifier
>employee
</span><span class=special
>>(
</span><span class=number
>1</span><span class=special
>,
</span><span class=string
>"Franz
"</span><span class=special
>,
</span><span class=number
>30</span><span class=special
>)(
</span><span class=number
>2</span><span class=special
>,
</span><span class=string
>"Hanz
"</span><span class=special
>,
</span><span class=number
>40</span><span class=special
>)(
</span><span class=number
>3</span><span class=special
>,
</span><span class=string
>"Ilse
"</span><span class=special
>,
</span><span class=number
>50</span><span class=special
>);
135 </span><span class=identifier
>BOOST_CHECK
</span><span class=special
>(
</span><span class=identifier
>eset
</span><span class=special
>.
</span><span class=identifier
>size
</span><span class=special
>()
</span><span class=special
>==
</span><span class=number
>3u </span><span class=special
>);
137 </span><span class=comment
>//
138 // This container is associative, hence we can use 'insert()'
141 </span><span class=identifier
>ba
</span><span class=special
>::
</span><span class=identifier
>insert
</span><span class=special
>(
</span><span class=identifier
>eset
</span><span class=special
>)(
</span><span class=number
>4</span><span class=special
>,
</span><span class=string
>"Kurt
"</span><span class=special
>,
</span><span class=number
>55</span><span class=special
>)(
</span><span class=number
>5</span><span class=special
>,
</span><span class=string
>"Bjarne
"</span><span class=special
>,
</span><span class=number
>77</span><span class=special
>)(
</span><span class=number
>7</span><span class=special
>,
</span><span class=string
>"Thorsten
"</span><span class=special
>,
</span><span class=number
>24</span><span class=special
>);
142 </span><span class=identifier
>BOOST_CHECK
</span><span class=special
>(
</span><span class=identifier
>eset
</span><span class=special
>.
</span><span class=identifier
>size
</span><span class=special
>()
</span><span class=special
>==
</span><span class=number
>6u </span><span class=special
>);
144 </span><span class=identifier
>employee_set_by_name
</span><span class=special
>& </span><span class=identifier
>name_index
</span><span class=special
>=
</span><span class=identifier
>boost
</span><span class=special
>::
</span><span class=identifier
>multi_index
</span><span class=special
>::
</span><span class=identifier
>get
</span><span class=special
><</span><span class=identifier
>name
</span><span class=special
>>(
</span><span class=identifier
>eset
</span><span class=special
>);
145 </span><span class=identifier
>employee_set_by_name
</span><span class=special
>::
</span><span class=identifier
>iterator
</span><span class=identifier
>i
</span><span class=special
>=
</span><span class=identifier
>name_index
</span><span class=special
>.
</span><span class=identifier
>find
</span><span class=special
>(
</span><span class=string
>"Ilse
"</span><span class=special
>);
146 </span><span class=identifier
>BOOST_CHECK
</span><span class=special
>(
</span><span class=identifier
>i
</span><span class=special
>-
></span><span class=identifier
>id
</span><span class=special
>==
</span><span class=number
>3 </span><span class=special
>);
147 </span><span class=identifier
>BOOST_CHECK
</span><span class=special
>(
</span><span class=identifier
>i
</span><span class=special
>-
></span><span class=identifier
>age
</span><span class=special
>==
</span><span class=number
>50 </span><span class=special
>);
149 </span><span class=identifier
>text_container
</span><span class=identifier
>text
</span><span class=special
>=
</span><span class=identifier
>ba
</span><span class=special
>::
</span><span class=identifier
>list_of
</span><span class=special
>< </span><span class=identifier
>std
</span><span class=special
>::
</span><span class=identifier
>string
</span><span class=special
>>(
</span><span class=string
>"Have
"</span><span class=special
>)(
</span><span class=string
>"you
"</span><span class=special
>)(
</span><span class=string
>"ever
"</span><span class=special
>)(
</span><span class=string
>"wondered
"</span><span class=special
>)(
</span><span class=string
>"how
"</span><span class=special
>)(
</span><span class=string
>"much
"</span><span class=special
>)(
</span><span class=string
>"Boost
"</span><span class=special
>)(
</span><span class=string
>"rocks?!
"</span><span class=special
>);
150 </span><span class=identifier
>BOOST_CHECK_EQUAL
</span><span class=special
>(
</span><span class=identifier
>text
</span><span class=special
>.
</span><span class=identifier
>size
</span><span class=special
>(),
</span><span class=number
>8u </span><span class=special
>);
151 </span><span class=identifier
>BOOST_CHECK_EQUAL
</span><span class=special
>(
</span><span class=special
>*
</span><span class=identifier
>text
</span><span class=special
>.
</span><span class=identifier
>begin
</span><span class=special
>(),
</span><span class=string
>"Have
" </span><span class=special
>);
153 </span><span class=comment
>//
154 // This container is a sequence, hence we can use 'push_back()' and 'push_font()'
157 </span><span class=identifier
>ba
</span><span class=special
>::
</span><span class=identifier
>push_back
</span><span class=special
>(
</span><span class=identifier
>text
</span><span class=special
>)(
</span><span class=string
>"Well
"</span><span class=special
>)(
</span><span class=string
>",
"</span><span class=special
>)(
</span><span class=string
>"A
"</span><span class=special
>)(
</span><span class=string
>"LOT
"</span><span class=special
>)(
</span><span class=string
>",
"</span><span class=special
>)(
</span><span class=string
>"obviously!
"</span><span class=special
>);
158 </span><span class=identifier
>BOOST_CHECK_EQUAL
</span><span class=special
>(
</span><span class=identifier
>text
</span><span class=special
>.
</span><span class=identifier
>size
</span><span class=special
>(),
</span><span class=number
>14u </span><span class=special
>);
159 </span><span class=identifier
>BOOST_CHECK_EQUAL
</span><span class=special
>(
</span><span class=special
>*--
</span><span class=identifier
>text
</span><span class=special
>.
</span><span class=identifier
>end
</span><span class=special
>(),
</span><span class=string
>"obviously!
" </span><span class=special
>);
161 </span><span class=identifier
>ba
</span><span class=special
>::
</span><span class=identifier
>push_front
</span><span class=special
>(
</span><span class=identifier
>text
</span><span class=special
>)
</span><span class=special
>=
</span><span class=string
>"question:
"</span><span class=special
>,
</span><span class=string
>"simple
"</span><span class=special
>,
</span><span class=string
>"A
"</span><span class=special
>;
162 </span><span class=identifier
>BOOST_CHECK_EQUAL
</span><span class=special
>(
</span><span class=identifier
>text
</span><span class=special
>.
</span><span class=identifier
>size
</span><span class=special
>(),
</span><span class=number
>17u </span><span class=special
>);
163 </span><span class=identifier
>BOOST_CHECK_EQUAL
</span><span class=special
>(
</span><span class=identifier
>text
</span><span class=special
>.
</span><span class=identifier
>front
</span><span class=special
>(),
</span><span class=string
>"A
" </span><span class=special
>);
</span>
164 <span class=special
>}
168 <span class=preprocessor
>#include
</span><span class=special
><</span><span class=identifier
>boost
</span><span class=special
>/
</span><span class=identifier
>test
</span><span class=special
>/
</span><span class=identifier
>included
</span><span class=special
>/
</span><span class=identifier
>unit_test_framework
</span><span class=special
>.
</span><span class=identifier
>hpp
</span><span class=special
>>
170 <span class=keyword
>using
</span><span class=identifier
>boost
</span><span class=special
>::
</span><span class=identifier
>unit_test_framework
</span><span class=special
>::
</span><span class=identifier
>test_suite
</span><span class=special
>;
172 <span class=identifier
>test_suite
</span><span class=special
>*
</span><span class=identifier
>init_unit_test_suite
</span><span class=special
>(
</span><span class=keyword
>int
</span><span class=identifier
>argc
</span><span class=special
>,
</span><span class=keyword
>char
</span><span class=special
>*
</span><span class=identifier
>argv
</span><span class=special
>[]
</span><span class=special
>)
</span>
173 <span class=special
>{
174 </span><span class=identifier
>test_suite
</span><span class=special
>*
</span><span class=identifier
>test
</span><span class=special
>=
</span><span class=identifier
>BOOST_TEST_SUITE
</span><span class=special
>(
</span><span class=string
>"List Test Suite
" </span><span class=special
>);
176 </span><span class=identifier
>test
</span><span class=special
>-
></span><span class=identifier
>add
</span><span class=special
>(
</span><span class=identifier
>BOOST_TEST_CASE
</span><span class=special
>(
</span><span class=special
>&</span><span class=identifier
>test_multi_index_container
</span><span class=special
>)
</span><span class=special
>);
178 </span><span class=keyword
>return
</span><span class=identifier
>test
</span><span class=special
>;
</span>
179 <span class=special
>}