• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html>
2<head>
3<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
4<title>basic_static_string::replace (8 of 14 overloads)</title>
5<link rel="stylesheet" href="../../../../../../../../doc/src/boostbook.css" type="text/css">
6<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
7<link rel="home" href="../../../../index.html" title="Boost.StaticString">
8<link rel="up" href="../replace.html" title="basic_static_string::replace">
9<link rel="prev" href="overload7.html" title="basic_static_string::replace (7 of 14 overloads)">
10<link rel="next" href="overload9.html" title="basic_static_string::replace (9 of 14 overloads)">
11</head>
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="../../../../../../../../libs/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>
20</tr></table>
21<hr>
22<div class="spirit-nav">
23<a accesskey="p" href="overload7.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../replace.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="overload9.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
24</div>
25<div class="section">
26<div class="titlepage"><div><div><h5 class="title">
27<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8"></a><a class="link" href="overload8.html" title="basic_static_string::replace (8 of 14 overloads)">basic_static_string::replace
28          (8 of 14 overloads)</a>
29</h5></div></div></div>
30<p>
31            Replace a part of the string.
32          </p>
33<h6>
34<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h0"></a>
35            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.synopsis"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.synopsis">Synopsis</a>
36          </h6>
37<pre class="programlisting"><span class="keyword">template</span><span class="special">&lt;</span>
38    <span class="identifier">std</span><span class="special">::</span><span class="identifier">size_t</span> <span class="identifier">M</span><span class="special">&gt;</span>
39<span class="keyword">constexpr</span> <span class="identifier">basic_static_string</span><span class="special">&amp;</span>
40<span class="identifier">replace</span><span class="special">(</span>
41    <span class="identifier">const_iterator</span> <span class="identifier">i1</span><span class="special">,</span>
42    <span class="identifier">const_iterator</span> <span class="identifier">i2</span><span class="special">,</span>
43    <span class="keyword">const</span> <span class="identifier">basic_static_string</span><span class="special">&lt;</span> <span class="identifier">M</span><span class="special">,</span> <span class="identifier">CharT</span><span class="special">,</span> <span class="identifier">Traits</span> <span class="special">&gt;&amp;</span> <span class="identifier">str</span><span class="special">);</span>
44</pre>
45<h6>
46<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h1"></a>
47            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.description"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.description">Description</a>
48          </h6>
49<p>
50            Replaces the characters in the range <code class="computeroutput"><span class="special">{</span><span class="identifier">i1</span><span class="special">,</span> <span class="identifier">i2</span><span class="special">)</span></code>
51            with those of <code class="computeroutput"><span class="identifier">str</span></code>.
52          </p>
53<h6>
54<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h2"></a>
55            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.precondition"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.precondition">Precondition</a>
56          </h6>
57<p>
58            <code class="computeroutput"><span class="special">{</span><span class="identifier">i1</span><span class="special">,</span> <span class="identifier">i2</span><span class="special">)</span></code>is a valid range.
59          </p>
60<h6>
61<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h3"></a>
62            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.exception_safety"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.exception_safety">Exception
63            Safety</a>
64          </h6>
65<p>
66            Strong guarantee.
67          </p>
68<h6>
69<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h4"></a>
70            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.remarks"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.remarks">Remarks</a>
71          </h6>
72<p>
73            The replacement is done unchecked when the capacity of <code class="computeroutput"><span class="identifier">str</span></code> differs from that of the string
74            the function is called on. All references, pointers, or iterators referring
75            to contained elements are invalidated. Any past-the-end iterators are
76            also invalidated.
77          </p>
78<h6>
79<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h5"></a>
80            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.template_parameters"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.template_parameters">Template
81            Parameters</a>
82          </h6>
83<div class="informaltable"><table class="table">
84<colgroup>
85<col>
86<col>
87</colgroup>
88<thead><tr>
89<th>
90                    <p>
91                      Type
92                    </p>
93                  </th>
94<th>
95                    <p>
96                      Description
97                    </p>
98                  </th>
99</tr></thead>
100<tbody><tr>
101<td>
102                    <p>
103                      <code class="computeroutput"><span class="identifier">M</span></code>
104                    </p>
105                  </td>
106<td>
107                    <p>
108                      The size of the input string.
109                    </p>
110                  </td>
111</tr></tbody>
112</table></div>
113<h6>
114<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h6"></a>
115            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.return_value"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.return_value">Return
116            Value</a>
117          </h6>
118<p>
119            <code class="computeroutput"><span class="special">*</span><span class="keyword">this</span></code>
120          </p>
121<h6>
122<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h7"></a>
123            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.parameters"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.parameters">Parameters</a>
124          </h6>
125<div class="informaltable"><table class="table">
126<colgroup>
127<col>
128<col>
129</colgroup>
130<thead><tr>
131<th>
132                    <p>
133                      Name
134                    </p>
135                  </th>
136<th>
137                    <p>
138                      Description
139                    </p>
140                  </th>
141</tr></thead>
142<tbody>
143<tr>
144<td>
145                    <p>
146                      <code class="computeroutput"><span class="identifier">i1</span></code>
147                    </p>
148                  </td>
149<td>
150                    <p>
151                      An iterator referring to the first character to replace.
152                    </p>
153                  </td>
154</tr>
155<tr>
156<td>
157                    <p>
158                      <code class="computeroutput"><span class="identifier">i2</span></code>
159                    </p>
160                  </td>
161<td>
162                    <p>
163                      An iterator referring past the end of the last character to
164                      replace.
165                    </p>
166                  </td>
167</tr>
168<tr>
169<td>
170                    <p>
171                      <code class="computeroutput"><span class="identifier">str</span></code>
172                    </p>
173                  </td>
174<td>
175                    <p>
176                      The string to replace with.
177                    </p>
178                  </td>
179</tr>
180</tbody>
181</table></div>
182<h6>
183<a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.h8"></a>
184            <span class="phrase"><a name="static_string.ref.boost__static_strings__basic_static_string.replace.overload8.exceptions"></a></span><a class="link" href="overload8.html#static_string.ref.boost__static_strings__basic_static_string.replace.overload8.exceptions">Exceptions</a>
185          </h6>
186<div class="informaltable"><table class="table">
187<colgroup>
188<col>
189<col>
190</colgroup>
191<thead><tr>
192<th>
193                    <p>
194                      Type
195                    </p>
196                  </th>
197<th>
198                    <p>
199                      Thrown On
200                    </p>
201                  </th>
202</tr></thead>
203<tbody><tr>
204<td>
205                    <p>
206                      <code class="computeroutput"><span class="identifier">std</span><span class="special">::</span><span class="identifier">length_error</span></code>
207                    </p>
208                  </td>
209<td>
210                    <p>
211                      <a class="link" href="../size.html" title="basic_static_string::size"><code class="computeroutput"><span class="identifier">size</span><span class="special">()</span></code></a>
212                      + (str.size() - std::distance(i1, i2)) &gt; <a class="link" href="../max_size.html" title="basic_static_string::max_size"><code class="computeroutput"><span class="identifier">max_size</span><span class="special">()</span></code></a>
213                    </p>
214                  </td>
215</tr></tbody>
216</table></div>
217</div>
218<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
219<td align="left"></td>
220<td align="right"><div class="copyright-footer">Copyright © 2019, 2020 Krystian Stasiowski<br>Copyright © 2016-2019 Vinnie
221      Falco<p>
222        Distributed under the Boost Software License, Version 1.0. (See accompanying
223        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>)
224      </p>
225</div></td>
226</tr></table>
227<hr>
228<div class="spirit-nav">
229<a accesskey="p" href="overload7.html"><img src="../../../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../replace.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="overload9.html"><img src="../../../../../../../../doc/src/images/next.png" alt="Next"></a>
230</div>
231</body>
232</html>
233