<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="generator" content="rustdoc">
    <meta name="description" content="API documentation for the Rust `UnicodeWidthStr` trait in crate `unicode_width`.">
    <meta name="keywords" content="rust, rustlang, rust-lang, UnicodeWidthStr">

    <title>unicode_width::UnicodeWidthStr - Rust</title>

    <link rel="stylesheet" type="text/css" href="../normalize.css">
    <link rel="stylesheet" type="text/css" href="../rustdoc.css">
    <link rel="stylesheet" type="text/css" href="../main.css">
    

    <link rel="shortcut icon" href="https://unicode-rs.github.io/unicode-rs_sm.png">
    
</head>
<body class="rustdoc trait">
    <!--[if lte IE 8]>
    <div class="warning">
        This old browser is unsupported and will most likely display funky
        things.
    </div>
    <![endif]-->

    

    <nav class="sidebar">
        <a href='../unicode_width/index.html'><img src='https://unicode-rs.github.io/unicode-rs_sm.png' alt='logo' width='100'></a>
        <p class='location'>Trait UnicodeWidthStr</p><div class="block items"><ul><li><a href="#required-methods">Required Methods</a></li><li><a href="#implementors">Implementors</a></li></ul></div><p class='location'><a href='index.html'>unicode_width</a></p><script>window.sidebarCurrent = {name: 'UnicodeWidthStr', ty: 'trait', relpath: ''};</script><script defer src="sidebar-items.js"></script>
    </nav>

    <nav class="sub">
        <form class="search-form js-only">
            <div class="search-container">
                <input class="search-input" name="search"
                       autocomplete="off"
                       placeholder="Click or press ‘S’ to search, ‘?’ for more options…"
                       type="search">
            </div>
        </form>
    </nav>

    <section id='main' class="content">
<h1 class='fqn'><span class='in-band'>Trait <a href='index.html'>unicode_width</a>::<wbr><a class="trait" href=''>UnicodeWidthStr</a></span><span class='out-of-band'><span id='render-detail'>
                   <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">
                       [<span class='inner'>&#x2212;</span>]
                   </a>
               </span><a class='srclink' href='../src/unicode_width/lib.rs.html#99-119' title='goto source code'>[src]</a></span></h1>
<pre class='rust trait'>pub trait UnicodeWidthStr {
    fn <a href='#tymethod.width' class='fnname'>width</a>&lt;'a&gt;(&amp;'a self) -&gt; usize;
<div class='item-spacer'></div>    fn <a href='#tymethod.width_cjk' class='fnname'>width_cjk</a>&lt;'a&gt;(&amp;'a self) -&gt; usize;
}</pre><div class='docblock'><p>Methods for determining displayed width of Unicode strings.</p>
</div>
            <h2 id='required-methods' class='small-section-header'>
              Required Methods<a href='#required-methods' class='anchor'></a>
            </h2>
            <div class='methods'>
        <h3 id='tymethod.width' class='method'><span id='width.v' class='invisible'><code>fn <a href='#tymethod.width' class='fnname'>width</a>&lt;'a&gt;(&amp;'a self) -&gt; usize</code></span></h3><div class='docblock'><p>Returns the string&#39;s displayed width in columns.</p>

<p>Control characters are treated as having zero width.</p>

<p>This function treats characters in the Ambiguous category according
to <a href="http://www.unicode.org/reports/tr11/">Unicode Standard Annex #11</a>
as 1 column wide. This is consistent with the recommendations for
non-CJK contexts, or when the context cannot be reliably determined.</p>
</div><h3 id='tymethod.width_cjk' class='method'><span id='width_cjk.v' class='invisible'><code>fn <a href='#tymethod.width_cjk' class='fnname'>width_cjk</a>&lt;'a&gt;(&amp;'a self) -&gt; usize</code></span></h3><div class='docblock'><p>Returns the string&#39;s displayed width in columns.</p>

<p>Control characters are treated as having zero width.</p>

<p>This function treats characters in the Ambiguous category according
to <a href="http://www.unicode.org/reports/tr11/">Unicode Standard Annex #11</a>
as 2 column wide. This is consistent with the recommendations for
CJK contexts.</p>
</div></div>
        <h2 id='implementors' class='small-section-header'>
          Implementors<a href='#implementors' class='anchor'></a>
        </h2>
        <ul class='item-list' id='implementors-list'>
    <li><code>impl UnicodeWidthStr for str</code></li>
</ul><script type="text/javascript" async
                         src="../implementors/unicode_width/trait.UnicodeWidthStr.js">
                 </script></section>
    <section id='search' class="content hidden"></section>

    <section class="footer"></section>

    <aside id="help" class="hidden">
        <div>
            <h1 class="hidden">Help</h1>

            <div class="shortcuts">
                <h2>Keyboard Shortcuts</h2>

                <dl>
                    <dt>?</dt>
                    <dd>Show this help dialog</dd>
                    <dt>S</dt>
                    <dd>Focus the search field</dd>
                    <dt>&larrb;</dt>
                    <dd>Move up in search results</dd>
                    <dt>&rarrb;</dt>
                    <dd>Move down in search results</dd>
                    <dt>&#9166;</dt>
                    <dd>Go to active search result</dd>
                    <dt>+</dt>
                    <dd>Collapse/expand all sections</dd>
                </dl>
            </div>

            <div class="infos">
                <h2>Search Tricks</h2>

                <p>
                    Prefix searches with a type followed by a colon (e.g.
                    <code>fn:</code>) to restrict the search to a given type.
                </p>

                <p>
                    Accepted types are: <code>fn</code>, <code>mod</code>,
                    <code>struct</code>, <code>enum</code>,
                    <code>trait</code>, <code>type</code>, <code>macro</code>,
                    and <code>const</code>.
                </p>

                <p>
                    Search functions by type signature (e.g.
                    <code>vec -> usize</code> or <code>* -> vec</code>)
                </p>
            </div>
        </div>
    </aside>

    

    <script>
        window.rootPath = "../";
        window.currentCrate = "unicode_width";
    </script>
    <script src="../main.js"></script>
    <script defer src="../search-index.js"></script>
</body>
</html>