<!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 `error` mod in crate `encode_unicode`.">
    <meta name="keywords" content="rust, rustlang, rust-lang, error">

    <title>encode_unicode::error - 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">
    

    
    
</head>
<body class="rustdoc mod">
    <!--[if lte IE 8]>
    <div class="warning">
        This old browser is unsupported and will most likely display funky
        things.
    </div>
    <![endif]-->

    

    <nav class="sidebar">
        
        <p class='location'>Module error</p><div class="block items"><ul><li><a href="#enums">Enums</a></li></ul></div><p class='location'><a href='../index.html'>encode_unicode</a></p><script>window.sidebarCurrent = {name: 'error', ty: 'mod', 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'>Module <a href='../index.html'>encode_unicode</a>::<wbr><a class="mod" href=''>error</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/encode_unicode/lib.rs.html#39-46' title='goto source code'>[src]</a></span></h1>
<div class='docblock'><p>Errors returned by various conversion methods in this crate.</p>
</div><h2 id='enums' class='section-header'><a href="#enums">Enums</a></h2>
<table>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.FromStrError.html"
                                  title='enum encode_unicode::error::FromStrError'>FromStrError</a></td>
                           <td class='docblock-short'>
                                <p>Reason why Utf8Char::from_str() failed.</p>
                           </td>
                       </tr>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.InvalidCodePoint.html"
                                  title='enum encode_unicode::error::InvalidCodePoint'>InvalidCodePoint</a></td>
                           <td class='docblock-short'>
                                <p>Reasons why an u32 is not a valid utf codepoint.</p>
                           </td>
                       </tr>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.InvalidUtf8.html"
                                  title='enum encode_unicode::error::InvalidUtf8'>InvalidUtf8</a></td>
                           <td class='docblock-short'>
                                <p>Reasons why a byte sequence is not valid UTF-8, excluding invalid codepoint.
In sinking precedence.</p>
                           </td>
                       </tr>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.InvalidUtf16Slice.html"
                                  title='enum encode_unicode::error::InvalidUtf16Slice'>InvalidUtf16Slice</a></td>
                           <td class='docblock-short'>
                                <p>Reasons why a slice of <code>u16</code>s doesn&#39;t start with valid UTF-16.</p>
                           </td>
                       </tr>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.InvalidUtf16Tuple.html"
                                  title='enum encode_unicode::error::InvalidUtf16Tuple'>InvalidUtf16Tuple</a></td>
                           <td class='docblock-short'>
                                <p>Reasons why one or two <code>u16</code>s are not valid UTF-16, in sinking precedence.</p>
                           </td>
                       </tr>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.InvalidUtf8Array.html"
                                  title='enum encode_unicode::error::InvalidUtf8Array'>InvalidUtf8Array</a></td>
                           <td class='docblock-short'>
                                <p>Reasons why a byte array is not valid UTF-8, in sinking precedence.</p>
                           </td>
                       </tr>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.InvalidUtf8FirstByte.html"
                                  title='enum encode_unicode::error::InvalidUtf8FirstByte'>InvalidUtf8FirstByte</a></td>
                           <td class='docblock-short'>
                                <p>Reasons why a byte is not the start of a UTF-8 codepoint.</p>
                           </td>
                       </tr>
                       <tr class=' module-item'>
                           <td><a class="enum" href="enum.InvalidUtf8Slice.html"
                                  title='enum encode_unicode::error::InvalidUtf8Slice'>InvalidUtf8Slice</a></td>
                           <td class='docblock-short'>
                                <p>Reasons why a byte slice is not valid UTF-8, in sinking precedence.</p>
                           </td>
                       </tr></table></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 = "encode_unicode";
    </script>
    <script src="../../main.js"></script>
    <script defer src="../../search-index.js"></script>
</body>
</html>