3 <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
4 <title>Class template basic_string_literal</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="Chapter 1. Boost.Log v2">
8 <link rel="up" href="../../utilities.html#header.boost.log.utility.string_literal_fwd_hpp" title="Header <boost/log/utility/string_literal_fwd.hpp>">
9 <link rel="prev" href="str_literal.html" title="Function template str_literal">
10 <link rel="next" href="native_date_time_types.html" title="Type definition native_date_time_types">
12 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13 <table cellpadding="2" width="100%"><tr><td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../../../boost.png"></td></tr></table>
15 <div class="spirit-nav">
16 <a accesskey="p" href="str_literal.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../utilities.html#header.boost.log.utility.string_literal_fwd_hpp"><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="native_date_time_types.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>
18 <div class="refentry">
19 <a name="boost.log.basic_string_literal"></a><div class="titlepage"></div>
20 <div class="refnamediv">
21 <h2><span class="refentrytitle">Class template basic_string_literal</span></h2>
22 <p>boost::log::basic_string_literal — String literal wrapper. </p>
24 <h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2>
25 <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="../../utilities.html#header.boost.log.utility.string_literal_fwd_hpp" title="Header <boost/log/utility/string_literal_fwd.hpp>">boost/log/utility/string_literal_fwd.hpp</a>>
27 </span><span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> CharT<span class="special">,</span> <span class="keyword">typename</span> TraitsT<span class="special">></span>
28 <span class="keyword">class</span> <a class="link" href="basic_string_literal.html" title="Class template basic_string_literal">basic_string_literal</a> <span class="special">{</span>
29 <span class="keyword">public</span><span class="special">:</span>
30 <span class="comment">// <a class="link" href="basic_string_literal.html#boost.log.basic_string_literalconstruct-copy-destruct">construct/copy/destruct</a></span>
31 <a class="link" href="basic_string_literal.html#idm45711342482208-bb"><span class="identifier">basic_string_literal</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
32 <span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="identifier">size_type</span> LenV<span class="special">></span> <a class="link" href="basic_string_literal.html#idm45711342480080-bb"><span class="identifier">basic_string_literal</span></a><span class="special">(</span><span class="identifier">T</span><span class="special">(</span><span class="special">&</span><span class="special">)</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
33 <a class="link" href="basic_string_literal.html#idm45711342475104-bb"><span class="identifier">basic_string_literal</span></a><span class="special">(</span><a class="link" href="basic_string_literal.html" title="Class template basic_string_literal">basic_string_literal</a> <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
34 <span class="keyword">constexpr</span> this_type <span class="special">&</span> <a class="link" href="basic_string_literal.html#idm45711342471568-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
35 <span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="identifier">size_type</span> LenV<span class="special">></span>
36 <span class="keyword">constexpr</span> this_type <span class="special">&</span> <a class="link" href="basic_string_literal.html#idm45711342467296-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">T</span><span class="special">(</span><span class="special">&</span><span class="special">)</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
38 <span class="comment">// <a class="link" href="basic_string_literal.html#idm45711342659216-bb">public member functions</a></span>
39 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342658656-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
40 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342654080-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
41 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342649728-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
42 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342645440-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
43 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342640864-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
44 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342636512-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
45 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342632224-bb"><span class="keyword">operator</span><span class="special"><</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
46 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342627632-bb"><span class="keyword">operator</span><span class="special"><</span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
47 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342623264-bb"><span class="keyword">operator</span><span class="special"><</span></a><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
48 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342618960-bb"><span class="keyword">operator</span><span class="special"><=</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
49 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342614368-bb"><span class="keyword">operator</span><span class="special"><=</span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
50 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342610000-bb"><span class="keyword">operator</span><span class="special"><=</span></a><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
51 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342605696-bb"><span class="keyword">operator</span><span class="special">></span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
52 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342601104-bb"><span class="keyword">operator</span><span class="special">></span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
53 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342596736-bb"><span class="keyword">operator</span><span class="special">></span></a><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
54 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342592432-bb"><span class="keyword">operator</span><span class="special">>=</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
55 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342587840-bb"><span class="keyword">operator</span><span class="special">>=</span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
56 <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342583472-bb"><span class="keyword">operator</span><span class="special">>=</span></a><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
57 <span class="keyword">constexpr</span> <span class="identifier">const_reference</span> <a class="link" href="basic_string_literal.html#idm45711342579168-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
58 <span class="identifier">const_reference</span> <a class="link" href="basic_string_literal.html#idm45711342574736-bb"><span class="identifier">at</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
59 <span class="keyword">constexpr</span> <span class="identifier">const_pointer</span> <a class="link" href="basic_string_literal.html#idm45711342569536-bb"><span class="identifier">c_str</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
60 <span class="keyword">constexpr</span> <span class="identifier">const_pointer</span> <a class="link" href="basic_string_literal.html#idm45711342567392-bb"><span class="identifier">data</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
61 <span class="keyword">constexpr</span> <span class="identifier">size_type</span> <a class="link" href="basic_string_literal.html#idm45711342565248-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
62 <span class="keyword">constexpr</span> <span class="identifier">size_type</span> <a class="link" href="basic_string_literal.html#idm45711342563136-bb"><span class="identifier">length</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
63 <span class="keyword">constexpr</span> <span class="keyword">bool</span> <a class="link" href="basic_string_literal.html#idm45711342561024-bb"><span class="identifier">empty</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
64 <span class="keyword">constexpr</span> <span class="identifier">const_iterator</span> <a class="link" href="basic_string_literal.html#idm45711342558160-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
65 <span class="keyword">constexpr</span> <span class="identifier">const_iterator</span> <a class="link" href="basic_string_literal.html#idm45711342555984-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
66 <span class="identifier">const_reverse_iterator</span> <a class="link" href="basic_string_literal.html#idm45711342553808-bb"><span class="identifier">rbegin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
67 <span class="identifier">const_reverse_iterator</span> <a class="link" href="basic_string_literal.html#idm45711342551648-bb"><span class="identifier">rend</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
68 <span class="identifier">string_type</span> <a class="link" href="basic_string_literal.html#idm45711342549488-bb"><span class="identifier">str</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
69 <span class="keyword">constexpr</span> <span class="keyword">void</span> <a class="link" href="basic_string_literal.html#idm45711342547344-bb"><span class="identifier">clear</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
70 <span class="keyword">constexpr</span> <span class="keyword">void</span> <a class="link" href="basic_string_literal.html#idm45711342544640-bb"><span class="identifier">swap</span></a><span class="special">(</span>this_type <span class="special">&</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
71 <span class="keyword">constexpr</span> this_type <span class="special">&</span> <a class="link" href="basic_string_literal.html#idm45711342542112-bb"><span class="identifier">assign</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
72 <span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="identifier">size_type</span> LenV<span class="special">></span>
73 <span class="keyword">constexpr</span> this_type <span class="special">&</span> <a class="link" href="basic_string_literal.html#idm45711342537552-bb"><span class="identifier">assign</span></a><span class="special">(</span><span class="identifier">T</span><span class="special">(</span><span class="special">&</span><span class="special">)</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span>
74 <span class="identifier">size_type</span> <a class="link" href="basic_string_literal.html#idm45711342531568-bb"><span class="identifier">copy</span></a><span class="special">(</span><span class="identifier">value_type</span> <span class="special">*</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
75 <span class="keyword">int</span> <a class="link" href="basic_string_literal.html#idm45711342522848-bb"><span class="identifier">compare</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">const_pointer</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span>
76 <span class="keyword">int</span> <a class="link" href="basic_string_literal.html#idm45711342512752-bb"><span class="identifier">compare</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
77 <span class="keyword">int</span> <a class="link" href="basic_string_literal.html#idm45711342504208-bb"><span class="identifier">compare</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
78 <span class="keyword">int</span> <a class="link" href="basic_string_literal.html#idm45711342495424-bb"><span class="identifier">compare</span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
79 <span class="keyword">int</span> <a class="link" href="basic_string_literal.html#idm45711342490112-bb"><span class="identifier">compare</span></a><span class="special">(</span><span class="identifier">const_pointer</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
80 <span class="keyword">int</span> <a class="link" href="basic_string_literal.html#idm45711342486352-bb"><span class="identifier">compare</span></a><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span>
81 <span class="special">}</span><span class="special">;</span></pre></div>
82 <div class="refsect1">
83 <a name="idm45554719811456"></a><h2>Description</h2>
84 <p>The <code class="computeroutput"><a class="link" href="basic_string_literal.html" title="Class template basic_string_literal">basic_string_literal</a></code> is a thin wrapper around a constant string literal. It provides interface similar to STL strings, but because of read-only nature of string literals, lacks ability to modify string contents. However, <code class="computeroutput"><a class="link" href="basic_string_literal.html" title="Class template basic_string_literal">basic_string_literal</a></code> objects can be assigned to and cleared.</p>
85 <p>The main advantage of this class comparing to other string classes is that it doesn't dynamically allocate memory and therefore is fast, thin and exception safe. </p>
86 <div class="refsect2">
87 <a name="idm45554719807520"></a><h3>
88 <a name="boost.log.basic_string_literalconstruct-copy-destruct"></a><code class="computeroutput">basic_string_literal</code>
90 construct/copy/destruct</h3>
91 <div class="orderedlist"><ol class="orderedlist" type="1">
93 <pre class="literallayout"><a name="idm45711342482208-bb"></a><span class="identifier">basic_string_literal</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
97 <div class="variablelist"><table border="0" class="variablelist compact">
99 <col align="left" valign="top">
103 <td><p><span class="term">Postconditions:</span></p></td>
104 <td><p><code class="computeroutput">empty() == true</code> </p></td>
108 <li class="listitem">
109 <pre class="literallayout"><span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="identifier">size_type</span> LenV<span class="special">></span> <a name="idm45711342480080-bb"></a><span class="identifier">basic_string_literal</span><span class="special">(</span><span class="identifier">T</span><span class="special">(</span><span class="special">&</span><span class="special">)</span> p<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
110 <p>Constructor from a string literal</p>
114 <div class="variablelist"><table border="0" class="variablelist compact">
116 <col align="left" valign="top">
121 <td><p><span class="term">Parameters:</span></p></td>
122 <td><div class="variablelist"><table border="0" class="variablelist compact">
124 <col align="left" valign="top">
128 <td><p><span class="term"><code class="computeroutput">p</code></span></p></td>
129 <td><p>A zero-terminated constant sequence of characters </p></td>
134 <td><p><span class="term">Postconditions:</span></p></td>
135 <td><p><code class="computeroutput">*this == p</code> </p></td>
140 <li class="listitem">
141 <pre class="literallayout"><a name="idm45711342475104-bb"></a><span class="identifier">basic_string_literal</span><span class="special">(</span><a class="link" href="basic_string_literal.html" title="Class template basic_string_literal">basic_string_literal</a> <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
142 <p>Copy constructor</p>
146 <div class="variablelist"><table border="0" class="variablelist compact">
148 <col align="left" valign="top">
153 <td><p><span class="term">Parameters:</span></p></td>
154 <td><div class="variablelist"><table border="0" class="variablelist compact">
156 <col align="left" valign="top">
160 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
161 <td><p>Source literal to copy string from </p></td>
166 <td><p><span class="term">Postconditions:</span></p></td>
167 <td><p><code class="computeroutput">*this == that</code> </p></td>
172 <li class="listitem">
173 <pre class="literallayout"><span class="keyword">constexpr</span> this_type <span class="special">&</span> <a name="idm45711342471568-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
174 <p>Assignment operator</p>
178 <div class="variablelist"><table border="0" class="variablelist compact">
180 <col align="left" valign="top">
185 <td><p><span class="term">Parameters:</span></p></td>
186 <td><div class="variablelist"><table border="0" class="variablelist compact">
188 <col align="left" valign="top">
192 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
193 <td><p>Source literal to copy string from </p></td>
198 <td><p><span class="term">Postconditions:</span></p></td>
199 <td><p><code class="computeroutput">*this == that</code> </p></td>
204 <li class="listitem">
205 <pre class="literallayout"><span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="identifier">size_type</span> LenV<span class="special">></span>
206 <span class="keyword">constexpr</span> this_type <span class="special">&</span> <a name="idm45711342467296-bb"></a><span class="keyword">operator</span><span class="special">=</span><span class="special">(</span><span class="identifier">T</span><span class="special">(</span><span class="special">&</span><span class="special">)</span> p<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
207 <p>Assignment from a string literal</p>
211 <div class="variablelist"><table border="0" class="variablelist compact">
213 <col align="left" valign="top">
218 <td><p><span class="term">Parameters:</span></p></td>
219 <td><div class="variablelist"><table border="0" class="variablelist compact">
221 <col align="left" valign="top">
225 <td><p><span class="term"><code class="computeroutput">p</code></span></p></td>
226 <td><p>A zero-terminated constant sequence of characters </p></td>
231 <td><p><span class="term">Postconditions:</span></p></td>
232 <td><p><code class="computeroutput">*this == p</code> </p></td>
239 <div class="refsect2">
240 <a name="idm45554719741824"></a><h3>
241 <a name="idm45711342659216-bb"></a><code class="computeroutput">basic_string_literal</code> public member functions</h3>
242 <div class="orderedlist"><ol class="orderedlist" type="1">
243 <li class="listitem">
244 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342658656-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
245 <p>Lexicographical comparison (equality)</p>
249 <div class="variablelist"><table border="0" class="variablelist compact">
251 <col align="left" valign="top">
256 <td><p><span class="term">Parameters:</span></p></td>
257 <td><div class="variablelist"><table border="0" class="variablelist compact">
259 <col align="left" valign="top">
263 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
264 <td><p>Comparand </p></td>
269 <td><p><span class="term">Returns:</span></p></td>
270 <td><p><code class="computeroutput">true</code> if the comparand string equals to this string, <code class="computeroutput">false</code> otherwise </p></td>
275 <li class="listitem">
276 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342654080-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
277 <p>Lexicographical comparison (equality)</p>
281 <div class="variablelist"><table border="0" class="variablelist compact">
283 <col align="left" valign="top">
288 <td><p><span class="term">Parameters:</span></p></td>
289 <td><div class="variablelist"><table border="0" class="variablelist compact">
291 <col align="left" valign="top">
295 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
296 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
301 <td><p><span class="term">Returns:</span></p></td>
302 <td><p><code class="computeroutput">true</code> if the comparand string equals to this string, <code class="computeroutput">false</code> otherwise </p></td>
307 <li class="listitem">
308 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342649728-bb"></a><span class="keyword">operator</span><span class="special">==</span><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
309 <p>Lexicographical comparison (equality)</p>
313 <div class="variablelist"><table border="0" class="variablelist compact">
315 <col align="left" valign="top">
320 <td><p><span class="term">Parameters:</span></p></td>
321 <td><div class="variablelist"><table border="0" class="variablelist compact">
323 <col align="left" valign="top">
327 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
328 <td><p>Comparand </p></td>
333 <td><p><span class="term">Returns:</span></p></td>
334 <td><p><code class="computeroutput">true</code> if the comparand string equals to this string, <code class="computeroutput">false</code> otherwise </p></td>
339 <li class="listitem">
340 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342645440-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
341 <p>Lexicographical comparison (inequality)</p>
345 <div class="variablelist"><table border="0" class="variablelist compact">
347 <col align="left" valign="top">
352 <td><p><span class="term">Parameters:</span></p></td>
353 <td><div class="variablelist"><table border="0" class="variablelist compact">
355 <col align="left" valign="top">
359 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
360 <td><p>Comparand </p></td>
365 <td><p><span class="term">Returns:</span></p></td>
366 <td><p><code class="computeroutput">true</code> if the comparand string is not equal to this string, <code class="computeroutput">false</code> otherwise </p></td>
371 <li class="listitem">
372 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342640864-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
373 <p>Lexicographical comparison (inequality)</p>
377 <div class="variablelist"><table border="0" class="variablelist compact">
379 <col align="left" valign="top">
384 <td><p><span class="term">Parameters:</span></p></td>
385 <td><div class="variablelist"><table border="0" class="variablelist compact">
387 <col align="left" valign="top">
391 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
392 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
397 <td><p><span class="term">Returns:</span></p></td>
398 <td><p><code class="computeroutput">true</code> if the comparand string is not equal to this string, <code class="computeroutput">false</code> otherwise </p></td>
403 <li class="listitem">
404 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342636512-bb"></a><span class="keyword">operator</span><span class="special">!=</span><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
405 <p>Lexicographical comparison (inequality)</p>
409 <div class="variablelist"><table border="0" class="variablelist compact">
411 <col align="left" valign="top">
416 <td><p><span class="term">Parameters:</span></p></td>
417 <td><div class="variablelist"><table border="0" class="variablelist compact">
419 <col align="left" valign="top">
423 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
424 <td><p>Comparand </p></td>
429 <td><p><span class="term">Returns:</span></p></td>
430 <td><p><code class="computeroutput">true</code> if the comparand string is not equal to this string, <code class="computeroutput">false</code> otherwise </p></td>
435 <li class="listitem">
436 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342632224-bb"></a><span class="keyword">operator</span><span class="special"><</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
437 <p>Lexicographical comparison (less ordering)</p>
441 <div class="variablelist"><table border="0" class="variablelist compact">
443 <col align="left" valign="top">
448 <td><p><span class="term">Parameters:</span></p></td>
449 <td><div class="variablelist"><table border="0" class="variablelist compact">
451 <col align="left" valign="top">
455 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
456 <td><p>Comparand </p></td>
461 <td><p><span class="term">Returns:</span></p></td>
462 <td><p><code class="computeroutput">true</code> if this string is less than the comparand, <code class="computeroutput">false</code> otherwise </p></td>
467 <li class="listitem">
468 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342627632-bb"></a><span class="keyword">operator</span><span class="special"><</span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
469 <p>Lexicographical comparison (less ordering)</p>
473 <div class="variablelist"><table border="0" class="variablelist compact">
475 <col align="left" valign="top">
480 <td><p><span class="term">Parameters:</span></p></td>
481 <td><div class="variablelist"><table border="0" class="variablelist compact">
483 <col align="left" valign="top">
487 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
488 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
493 <td><p><span class="term">Returns:</span></p></td>
494 <td><p><code class="computeroutput">true</code> if this string is less than the comparand, <code class="computeroutput">false</code> otherwise </p></td>
499 <li class="listitem">
500 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342623264-bb"></a><span class="keyword">operator</span><span class="special"><</span><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
501 <p>Lexicographical comparison (less ordering)</p>
505 <div class="variablelist"><table border="0" class="variablelist compact">
507 <col align="left" valign="top">
512 <td><p><span class="term">Parameters:</span></p></td>
513 <td><div class="variablelist"><table border="0" class="variablelist compact">
515 <col align="left" valign="top">
519 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
520 <td><p>Comparand </p></td>
525 <td><p><span class="term">Returns:</span></p></td>
526 <td><p><code class="computeroutput">true</code> if this string is less than the comparand, <code class="computeroutput">false</code> otherwise </p></td>
531 <li class="listitem">
532 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342618960-bb"></a><span class="keyword">operator</span><span class="special"><=</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
533 <p>Lexicographical comparison (less or equal ordering)</p>
537 <div class="variablelist"><table border="0" class="variablelist compact">
539 <col align="left" valign="top">
544 <td><p><span class="term">Parameters:</span></p></td>
545 <td><div class="variablelist"><table border="0" class="variablelist compact">
547 <col align="left" valign="top">
551 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
552 <td><p>Comparand </p></td>
557 <td><p><span class="term">Returns:</span></p></td>
558 <td><p><code class="computeroutput">true</code> if this string is less or equal to the comparand, <code class="computeroutput">false</code> otherwise </p></td>
563 <li class="listitem">
564 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342614368-bb"></a><span class="keyword">operator</span><span class="special"><=</span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
565 <p>Lexicographical comparison (less or equal ordering)</p>
569 <div class="variablelist"><table border="0" class="variablelist compact">
571 <col align="left" valign="top">
576 <td><p><span class="term">Parameters:</span></p></td>
577 <td><div class="variablelist"><table border="0" class="variablelist compact">
579 <col align="left" valign="top">
583 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
584 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
589 <td><p><span class="term">Returns:</span></p></td>
590 <td><p><code class="computeroutput">true</code> if this string is less or equal to the comparand, <code class="computeroutput">false</code> otherwise </p></td>
595 <li class="listitem">
596 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342610000-bb"></a><span class="keyword">operator</span><span class="special"><=</span><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
597 <p>Lexicographical comparison (less or equal ordering)</p>
601 <div class="variablelist"><table border="0" class="variablelist compact">
603 <col align="left" valign="top">
608 <td><p><span class="term">Parameters:</span></p></td>
609 <td><div class="variablelist"><table border="0" class="variablelist compact">
611 <col align="left" valign="top">
615 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
616 <td><p>Comparand </p></td>
621 <td><p><span class="term">Returns:</span></p></td>
622 <td><p><code class="computeroutput">true</code> if this string is less or equal to the comparand, <code class="computeroutput">false</code> otherwise </p></td>
627 <li class="listitem">
628 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342605696-bb"></a><span class="keyword">operator</span><span class="special">></span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
629 <p>Lexicographical comparison (greater ordering)</p>
633 <div class="variablelist"><table border="0" class="variablelist compact">
635 <col align="left" valign="top">
640 <td><p><span class="term">Parameters:</span></p></td>
641 <td><div class="variablelist"><table border="0" class="variablelist compact">
643 <col align="left" valign="top">
647 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
648 <td><p>Comparand </p></td>
653 <td><p><span class="term">Returns:</span></p></td>
654 <td><p><code class="computeroutput">true</code> if this string is greater than the comparand, <code class="computeroutput">false</code> otherwise </p></td>
659 <li class="listitem">
660 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342601104-bb"></a><span class="keyword">operator</span><span class="special">></span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
661 <p>Lexicographical comparison (greater ordering)</p>
665 <div class="variablelist"><table border="0" class="variablelist compact">
667 <col align="left" valign="top">
672 <td><p><span class="term">Parameters:</span></p></td>
673 <td><div class="variablelist"><table border="0" class="variablelist compact">
675 <col align="left" valign="top">
679 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
680 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
685 <td><p><span class="term">Returns:</span></p></td>
686 <td><p><code class="computeroutput">true</code> if this string is greater than the comparand, <code class="computeroutput">false</code> otherwise </p></td>
691 <li class="listitem">
692 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342596736-bb"></a><span class="keyword">operator</span><span class="special">></span><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
693 <p>Lexicographical comparison (greater ordering)</p>
697 <div class="variablelist"><table border="0" class="variablelist compact">
699 <col align="left" valign="top">
704 <td><p><span class="term">Parameters:</span></p></td>
705 <td><div class="variablelist"><table border="0" class="variablelist compact">
707 <col align="left" valign="top">
711 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
712 <td><p>Comparand </p></td>
717 <td><p><span class="term">Returns:</span></p></td>
718 <td><p><code class="computeroutput">true</code> if this string is greater than the comparand, <code class="computeroutput">false</code> otherwise </p></td>
723 <li class="listitem">
724 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342592432-bb"></a><span class="keyword">operator</span><span class="special">>=</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
725 <p>Lexicographical comparison (greater or equal ordering)</p>
729 <div class="variablelist"><table border="0" class="variablelist compact">
731 <col align="left" valign="top">
736 <td><p><span class="term">Parameters:</span></p></td>
737 <td><div class="variablelist"><table border="0" class="variablelist compact">
739 <col align="left" valign="top">
743 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
744 <td><p>Comparand </p></td>
749 <td><p><span class="term">Returns:</span></p></td>
750 <td><p><code class="computeroutput">true</code> if this string is greater or equal to the comparand, <code class="computeroutput">false</code> otherwise </p></td>
755 <li class="listitem">
756 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342587840-bb"></a><span class="keyword">operator</span><span class="special">>=</span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
757 <p>Lexicographical comparison (greater or qual ordering)</p>
761 <div class="variablelist"><table border="0" class="variablelist compact">
763 <col align="left" valign="top">
768 <td><p><span class="term">Parameters:</span></p></td>
769 <td><div class="variablelist"><table border="0" class="variablelist compact">
771 <col align="left" valign="top">
775 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
776 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
781 <td><p><span class="term">Returns:</span></p></td>
782 <td><p><code class="computeroutput">true</code> if this string is greater or equal to the comparand, <code class="computeroutput">false</code> otherwise </p></td>
787 <li class="listitem">
788 <pre class="literallayout"><span class="keyword">bool</span> <a name="idm45711342583472-bb"></a><span class="keyword">operator</span><span class="special">>=</span><span class="special">(</span><span class="identifier">string_type</span> <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
789 <p>Lexicographical comparison (greater or equal ordering)</p>
793 <div class="variablelist"><table border="0" class="variablelist compact">
795 <col align="left" valign="top">
800 <td><p><span class="term">Parameters:</span></p></td>
801 <td><div class="variablelist"><table border="0" class="variablelist compact">
803 <col align="left" valign="top">
807 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
808 <td><p>Comparand </p></td>
813 <td><p><span class="term">Returns:</span></p></td>
814 <td><p><code class="computeroutput">true</code> if this string is greater or equal to the comparand, <code class="computeroutput">false</code> otherwise </p></td>
819 <li class="listitem">
820 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">const_reference</span> <a name="idm45711342579168-bb"></a><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span><span class="special">(</span><span class="identifier">size_type</span> i<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
821 <p>Subscript operator</p>
826 <div class="variablelist"><table border="0" class="variablelist compact">
828 <col align="left" valign="top">
833 <td><p><span class="term">Parameters:</span></p></td>
834 <td><div class="variablelist"><table border="0" class="variablelist compact">
836 <col align="left" valign="top">
840 <td><p><span class="term"><code class="computeroutput">i</code></span></p></td>
841 <td><p>Requested character index </p></td>
846 <td><p><span class="term">Requires:</span></p></td>
847 <td><p><code class="computeroutput">i < size()</code> </p></td>
850 <td><p><span class="term">Returns:</span></p></td>
851 <td><p>Constant reference to the requested character </p></td>
856 <li class="listitem">
857 <pre class="literallayout"><span class="identifier">const_reference</span> <a name="idm45711342574736-bb"></a><span class="identifier">at</span><span class="special">(</span><span class="identifier">size_type</span> i<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
858 <p>Checked subscript</p>
861 <span class="bold"><strong>Throws:</strong></span> An <code class="computeroutput">std::exception</code>-based exception if index <span class="emphasis"><em>i</em></span> is out of string boundaries </p>
862 <div class="variablelist"><table border="0" class="variablelist compact">
864 <col align="left" valign="top">
869 <td><p><span class="term">Parameters:</span></p></td>
870 <td><div class="variablelist"><table border="0" class="variablelist compact">
872 <col align="left" valign="top">
876 <td><p><span class="term"><code class="computeroutput">i</code></span></p></td>
877 <td><p>Requested character index </p></td>
882 <td><p><span class="term">Returns:</span></p></td>
883 <td><p>Constant reference to the requested character</p></td>
888 <li class="listitem">
889 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">const_pointer</span> <a name="idm45711342569536-bb"></a><span class="identifier">c_str</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
892 <div class="variablelist"><table border="0" class="variablelist compact">
894 <col align="left" valign="top">
898 <td><p><span class="term">Returns:</span></p></td>
899 <td><p>Pointer to the beginning of the literal </p></td>
903 <li class="listitem">
904 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">const_pointer</span> <a name="idm45711342567392-bb"></a><span class="identifier">data</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
907 <div class="variablelist"><table border="0" class="variablelist compact">
909 <col align="left" valign="top">
913 <td><p><span class="term">Returns:</span></p></td>
914 <td><p>Pointer to the beginning of the literal </p></td>
918 <li class="listitem">
919 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">size_type</span> <a name="idm45711342565248-bb"></a><span class="identifier">size</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
922 <div class="variablelist"><table border="0" class="variablelist compact">
924 <col align="left" valign="top">
928 <td><p><span class="term">Returns:</span></p></td>
929 <td><p>Length of the literal </p></td>
933 <li class="listitem">
934 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">size_type</span> <a name="idm45711342563136-bb"></a><span class="identifier">length</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
937 <div class="variablelist"><table border="0" class="variablelist compact">
939 <col align="left" valign="top">
943 <td><p><span class="term">Returns:</span></p></td>
944 <td><p>Length of the literal </p></td>
948 <li class="listitem">
949 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="keyword">bool</span> <a name="idm45711342561024-bb"></a><span class="identifier">empty</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
952 <div class="variablelist"><table border="0" class="variablelist compact">
954 <col align="left" valign="top">
958 <td><p><span class="term">Returns:</span></p></td>
959 <td><p><code class="computeroutput">true</code> if the literal is an empty string, <code class="computeroutput">false</code> otherwise </p></td>
963 <li class="listitem">
964 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">const_iterator</span> <a name="idm45711342558160-bb"></a><span class="identifier">begin</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
967 <div class="variablelist"><table border="0" class="variablelist compact">
969 <col align="left" valign="top">
973 <td><p><span class="term">Returns:</span></p></td>
974 <td><p>Iterator that points to the first character of the literal </p></td>
978 <li class="listitem">
979 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="identifier">const_iterator</span> <a name="idm45711342555984-bb"></a><span class="identifier">end</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
982 <div class="variablelist"><table border="0" class="variablelist compact">
984 <col align="left" valign="top">
988 <td><p><span class="term">Returns:</span></p></td>
989 <td><p>Iterator that points after the last character of the literal </p></td>
993 <li class="listitem">
994 <pre class="literallayout"><span class="identifier">const_reverse_iterator</span> <a name="idm45711342553808-bb"></a><span class="identifier">rbegin</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
997 <div class="variablelist"><table border="0" class="variablelist compact">
999 <col align="left" valign="top">
1003 <td><p><span class="term">Returns:</span></p></td>
1004 <td><p>Reverse iterator that points to the last character of the literal </p></td>
1008 <li class="listitem">
1009 <pre class="literallayout"><span class="identifier">const_reverse_iterator</span> <a name="idm45711342551648-bb"></a><span class="identifier">rend</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1012 <div class="variablelist"><table border="0" class="variablelist compact">
1014 <col align="left" valign="top">
1018 <td><p><span class="term">Returns:</span></p></td>
1019 <td><p>Reverse iterator that points before the first character of the literal </p></td>
1023 <li class="listitem">
1024 <pre class="literallayout"><span class="identifier">string_type</span> <a name="idm45711342549488-bb"></a><span class="identifier">str</span><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
1027 <div class="variablelist"><table border="0" class="variablelist compact">
1029 <col align="left" valign="top">
1033 <td><p><span class="term">Returns:</span></p></td>
1034 <td><p>STL string constructed from the literal </p></td>
1038 <li class="listitem">
1039 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="keyword">void</span> <a name="idm45711342547344-bb"></a><span class="identifier">clear</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1040 <p>The method clears the literal</p>
1043 <div class="variablelist"><table border="0" class="variablelist compact">
1045 <col align="left" valign="top">
1049 <td><p><span class="term">Postconditions:</span></p></td>
1050 <td><p><code class="computeroutput">empty() == true</code> </p></td>
1054 <li class="listitem">
1055 <pre class="literallayout"><span class="keyword">constexpr</span> <span class="keyword">void</span> <a name="idm45711342544640-bb"></a><span class="identifier">swap</span><span class="special">(</span>this_type <span class="special">&</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1056 <p>The method swaps two literals </p>
1058 <li class="listitem">
1059 <pre class="literallayout"><span class="keyword">constexpr</span> this_type <span class="special">&</span> <a name="idm45711342542112-bb"></a><span class="identifier">assign</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1060 <p>Assignment from another literal</p>
1064 <div class="variablelist"><table border="0" class="variablelist compact">
1066 <col align="left" valign="top">
1071 <td><p><span class="term">Parameters:</span></p></td>
1072 <td><div class="variablelist"><table border="0" class="variablelist compact">
1074 <col align="left" valign="top">
1078 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
1079 <td><p>Source literal to copy string from </p></td>
1084 <td><p><span class="term">Postconditions:</span></p></td>
1085 <td><p><code class="computeroutput">*this == that</code> </p></td>
1090 <li class="listitem">
1091 <pre class="literallayout"><span class="keyword">template</span><span class="special"><</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="identifier">size_type</span> LenV<span class="special">></span>
1092 <span class="keyword">constexpr</span> this_type <span class="special">&</span> <a name="idm45711342537552-bb"></a><span class="identifier">assign</span><span class="special">(</span><span class="identifier">T</span><span class="special">(</span><span class="special">&</span><span class="special">)</span> p<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1093 <p>Assignment from another literal</p>
1097 <div class="variablelist"><table border="0" class="variablelist compact">
1099 <col align="left" valign="top">
1104 <td><p><span class="term">Parameters:</span></p></td>
1105 <td><div class="variablelist"><table border="0" class="variablelist compact">
1107 <col align="left" valign="top">
1111 <td><p><span class="term"><code class="computeroutput">p</code></span></p></td>
1112 <td><p>A zero-terminated constant sequence of characters </p></td>
1117 <td><p><span class="term">Postconditions:</span></p></td>
1118 <td><p><code class="computeroutput">*this == p</code> </p></td>
1123 <li class="listitem">
1124 <pre class="literallayout"><span class="identifier">size_type</span> <a name="idm45711342531568-bb"></a><span class="identifier">copy</span><span class="special">(</span><span class="identifier">value_type</span> <span class="special">*</span> str<span class="special">,</span> <span class="identifier">size_type</span> n<span class="special">,</span> <span class="identifier">size_type</span> pos <span class="special">=</span> <span class="number">0</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
1125 <p>The method copies the literal or its portion to an external buffer</p>
1129 <span class="bold"><strong>Throws:</strong></span> An <code class="computeroutput">std::exception</code>-based exception if <span class="emphasis"><em>pos</em></span> is out of range. </p>
1130 <div class="variablelist"><table border="0" class="variablelist compact">
1132 <col align="left" valign="top">
1137 <td><p><span class="term">Parameters:</span></p></td>
1138 <td><div class="variablelist"><table border="0" class="variablelist compact">
1140 <col align="left" valign="top">
1145 <td><p><span class="term"><code class="computeroutput">n</code></span></p></td>
1146 <td><p>Maximum number of characters to copy </p></td>
1149 <td><p><span class="term"><code class="computeroutput">pos</code></span></p></td>
1150 <td><p>Starting position to start copying from </p></td>
1153 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
1154 <td><p>Pointer to the external buffer beginning. Must not be NULL. The buffer must have enough capacity to accommodate the requested number of characters. </p></td>
1160 <td><p><span class="term">Requires:</span></p></td>
1161 <td><p><code class="computeroutput">pos <= size()</code> </p></td>
1164 <td><p><span class="term">Returns:</span></p></td>
1165 <td><p>Number of characters copied</p></td>
1170 <li class="listitem">
1171 <pre class="literallayout"><span class="keyword">int</span> <a name="idm45711342522848-bb"></a><span class="identifier">compare</span><span class="special">(</span><span class="identifier">size_type</span> pos<span class="special">,</span> <span class="identifier">size_type</span> n<span class="special">,</span> <span class="identifier">const_pointer</span> str<span class="special">,</span> <span class="identifier">size_type</span> len<span class="special">)</span> <span class="keyword">const</span><span class="special">;</span></pre>
1172 <p>Lexicographically compares the argument string to a part of this string</p>
1176 <span class="bold"><strong>Throws:</strong></span> An <code class="computeroutput">std::exception</code>-based exception if <span class="emphasis"><em>pos</em></span> is out of range. </p>
1177 <div class="variablelist"><table border="0" class="variablelist compact">
1179 <col align="left" valign="top">
1184 <td><p><span class="term">Parameters:</span></p></td>
1185 <td><div class="variablelist"><table border="0" class="variablelist compact">
1187 <col align="left" valign="top">
1192 <td><p><span class="term"><code class="computeroutput">len</code></span></p></td>
1193 <td><p>Number of characters in the sequence <span class="emphasis"><em>str</em></span>. </p></td>
1196 <td><p><span class="term"><code class="computeroutput">n</code></span></p></td>
1197 <td><p>Length of the substring of this string to perform comparison to </p></td>
1200 <td><p><span class="term"><code class="computeroutput">pos</code></span></p></td>
1201 <td><p>Starting position within this string to perform comparison to </p></td>
1204 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
1205 <td><p>Comparand. Must point to a sequence of characters, must not be NULL. </p></td>
1211 <td><p><span class="term">Requires:</span></p></td>
1212 <td><p><code class="computeroutput">pos <= size()</code> </p></td>
1215 <td><p><span class="term">Returns:</span></p></td>
1216 <td><p>Zero if the comparand equals this string, a negative value if this string is less than the comparand, a positive value if this string is greater than the comparand.</p></td>
1221 <li class="listitem">
1222 <pre class="literallayout"><span class="keyword">int</span> <a name="idm45711342512752-bb"></a><span class="identifier">compare</span><span class="special">(</span><span class="identifier">size_type</span> pos<span class="special">,</span> <span class="identifier">size_type</span> n<span class="special">,</span> <span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1223 <p>Lexicographically compares the argument string to a part of this string</p>
1227 <span class="bold"><strong>Throws:</strong></span> An <code class="computeroutput">std::exception</code>-based exception if <span class="emphasis"><em>pos</em></span> is out of range. </p>
1228 <div class="variablelist"><table border="0" class="variablelist compact">
1230 <col align="left" valign="top">
1235 <td><p><span class="term">Parameters:</span></p></td>
1236 <td><div class="variablelist"><table border="0" class="variablelist compact">
1238 <col align="left" valign="top">
1243 <td><p><span class="term"><code class="computeroutput">n</code></span></p></td>
1244 <td><p>Length of the substring of this string to perform comparison to </p></td>
1247 <td><p><span class="term"><code class="computeroutput">pos</code></span></p></td>
1248 <td><p>Starting position within this string to perform comparison to </p></td>
1251 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
1252 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
1258 <td><p><span class="term">Requires:</span></p></td>
1259 <td><p><code class="computeroutput">pos <= size()</code> </p></td>
1262 <td><p><span class="term">Returns:</span></p></td>
1263 <td><p>Zero if the comparand equals this string, a negative value if this string is less than the comparand, a positive value if this string is greater than the comparand.</p></td>
1268 <li class="listitem">
1269 <pre class="literallayout"><span class="keyword">int</span> <a name="idm45711342504208-bb"></a><span class="identifier">compare</span><span class="special">(</span><span class="identifier">size_type</span> pos<span class="special">,</span> <span class="identifier">size_type</span> n<span class="special">,</span> this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1270 <p>Lexicographically compares the argument string literal to a part of this string</p>
1274 <span class="bold"><strong>Throws:</strong></span> An <code class="computeroutput">std::exception</code>-based exception if <span class="emphasis"><em>pos</em></span> is out of range. </p>
1275 <div class="variablelist"><table border="0" class="variablelist compact">
1277 <col align="left" valign="top">
1282 <td><p><span class="term">Parameters:</span></p></td>
1283 <td><div class="variablelist"><table border="0" class="variablelist compact">
1285 <col align="left" valign="top">
1290 <td><p><span class="term"><code class="computeroutput">n</code></span></p></td>
1291 <td><p>Length of the substring of this string to perform comparison to </p></td>
1294 <td><p><span class="term"><code class="computeroutput">pos</code></span></p></td>
1295 <td><p>Starting position within this string to perform comparison to </p></td>
1298 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
1299 <td><p>Comparand </p></td>
1305 <td><p><span class="term">Requires:</span></p></td>
1306 <td><p><code class="computeroutput">pos <= size()</code> </p></td>
1309 <td><p><span class="term">Returns:</span></p></td>
1310 <td><p>Zero if the comparand equals this string, a negative value if this string is less than the comparand, a positive value if this string is greater than the comparand.</p></td>
1315 <li class="listitem">
1316 <pre class="literallayout"><span class="keyword">int</span> <a name="idm45711342495424-bb"></a><span class="identifier">compare</span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">,</span> <span class="identifier">size_type</span> len<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1317 <p>Lexicographically compares the argument string to this string</p>
1321 <div class="variablelist"><table border="0" class="variablelist compact">
1323 <col align="left" valign="top">
1328 <td><p><span class="term">Parameters:</span></p></td>
1329 <td><div class="variablelist"><table border="0" class="variablelist compact">
1331 <col align="left" valign="top">
1336 <td><p><span class="term"><code class="computeroutput">len</code></span></p></td>
1337 <td><p>Number of characters in the sequence <span class="emphasis"><em>str</em></span>. </p></td>
1340 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
1341 <td><p>Comparand. Must point to a sequence of characters, must not be NULL. </p></td>
1347 <td><p><span class="term">Returns:</span></p></td>
1348 <td><p>Zero if the comparand equals this string, a negative value if this string is less than the comparand, a positive value if this string is greater than the comparand. </p></td>
1353 <li class="listitem">
1354 <pre class="literallayout"><span class="keyword">int</span> <a name="idm45711342490112-bb"></a><span class="identifier">compare</span><span class="special">(</span><span class="identifier">const_pointer</span> str<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1355 <p>Lexicographically compares the argument string to this string</p>
1359 <div class="variablelist"><table border="0" class="variablelist compact">
1361 <col align="left" valign="top">
1366 <td><p><span class="term">Parameters:</span></p></td>
1367 <td><div class="variablelist"><table border="0" class="variablelist compact">
1369 <col align="left" valign="top">
1373 <td><p><span class="term"><code class="computeroutput">str</code></span></p></td>
1374 <td><p>Comparand. Must point to a zero-terminated sequence of characters, must not be NULL. </p></td>
1379 <td><p><span class="term">Returns:</span></p></td>
1380 <td><p>Zero if the comparand equals this string, a negative value if this string is less than the comparand, a positive value if this string is greater than the comparand. </p></td>
1385 <li class="listitem">
1386 <pre class="literallayout"><span class="keyword">int</span> <a name="idm45711342486352-bb"></a><span class="identifier">compare</span><span class="special">(</span>this_type <span class="keyword">const</span> <span class="special">&</span> that<span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span></pre>
1387 <p>Lexicographically compares the argument string to this string</p>
1391 <div class="variablelist"><table border="0" class="variablelist compact">
1393 <col align="left" valign="top">
1398 <td><p><span class="term">Parameters:</span></p></td>
1399 <td><div class="variablelist"><table border="0" class="variablelist compact">
1401 <col align="left" valign="top">
1405 <td><p><span class="term"><code class="computeroutput">that</code></span></p></td>
1406 <td><p>Comparand </p></td>
1411 <td><p><span class="term">Returns:</span></p></td>
1412 <td><p>Zero if the comparand equals this string, a negative value if this string is less than the comparand, a positive value if this string is greater than the comparand. </p></td>
1421 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
1422 <td align="left"></td>
1423 <td align="right"><div class="copyright-footer">Copyright © 2007-2016 Andrey Semashev<p>
1424 Distributed under the Boost Software License, Version 1.0. (See accompanying
1425 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>).
1430 <div class="spirit-nav">
1431 <a accesskey="p" href="str_literal.html"><img src="../../../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../utilities.html#header.boost.log.utility.string_literal_fwd_hpp"><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="native_date_time_types.html"><img src="../../../../../../doc/src/images/next.png" alt="Next"></a>