edlang/unicode_bidi/data_source/trait.BidiDataSource.html
2024-03-27 11:12:16 +00:00

26 lines
8.5 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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="This trait abstracts over a data source that is able to produce the Unicode Bidi class for a given character"><title>BidiDataSource in unicode_bidi::data_source - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Regular-018c141bf0843ffd.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/FiraSans-Medium-8f9a781e4970d388.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2"><link rel="stylesheet" href="../../static.files/normalize-76eba96aa4d2e634.css"><link rel="stylesheet" href="../../static.files/rustdoc-5bc39a1768837dd0.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="unicode_bidi" data-themes="" data-resource-suffix="" data-rustdoc-version="1.77.0 (aedd173a2 2024-03-17)" data-channel="1.77.0" data-search-js="search-dd67cee4cfa65049.js" data-settings-js="settings-4313503d2e1961c2.js" ><script src="../../static.files/storage-4c98445ec4002617.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-48f368f3872407c8.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-04d5337699b92874.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-16x16-8b506e7a72182f1c.png"><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-422f7d1d52889060.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-2c020d218678b618.svg"></head><body class="rustdoc trait"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../unicode_bidi/index.html">unicode_bidi</a><span class="version">0.3.15</span></h2></div><h2 class="location"><a href="#">BidiDataSource</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.bidi_class">bidi_class</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.bidi_matched_opening_bracket">bidi_matched_opening_bracket</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In unicode_bidi::data_source</a></h2></div></nav><div class="sidebar-resizer"></div>
<main><div class="width-limiter"><nav class="sub"><form class="search-form"><span></span><div id="sidebar-button" tabindex="-1"><a href="../../unicode_bidi/all.html" title="show sidebar"></a></div><input class="search-input" name="search" aria-label="Run search in the documentation" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"><div id="help-button" tabindex="-1"><a href="../../help.html" title="help">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../static.files/wheel-7b819b6101059cd0.svg"></a></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1>Trait <a href="../index.html">unicode_bidi</a>::<wbr><a href="index.html">data_source</a>::<wbr><a class="trait" href="#">BidiDataSource</a><button id="copy-path" title="Copy item path to clipboard"><img src="../../static.files/clipboard-7571035ce49a181d.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="src" href="../../src/unicode_bidi/data_source.rs.html#29-46">source</a> · <button id="toggle-all-docs" title="collapse all docs">[<span>&#x2212;</span>]</button></span></div><pre class="rust item-decl"><code>pub trait BidiDataSource {
// Required method
fn <a href="#tymethod.bidi_class" class="fn">bidi_class</a>(&amp;self, c: <a class="primitive" href="https://doc.rust-lang.org/1.77.0/std/primitive.char.html">char</a>) -&gt; <a class="enum" href="../enum.BidiClass.html" title="enum unicode_bidi::BidiClass">BidiClass</a>;
// Provided method
fn <a href="#method.bidi_matched_opening_bracket" class="fn">bidi_matched_opening_bracket</a>(
&amp;self,
c: <a class="primitive" href="https://doc.rust-lang.org/1.77.0/std/primitive.char.html">char</a>
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.77.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.BidiMatchedOpeningBracket.html" title="struct unicode_bidi::data_source::BidiMatchedOpeningBracket">BidiMatchedOpeningBracket</a>&gt; { ... }
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This trait abstracts over a data source that is able to produce the Unicode Bidi class for a given
character</p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><section id="tymethod.bidi_class" class="method"><a class="src rightside" href="../../src/unicode_bidi/data_source.rs.html#30">source</a><h4 class="code-header">fn <a href="#tymethod.bidi_class" class="fn">bidi_class</a>(&amp;self, c: <a class="primitive" href="https://doc.rust-lang.org/1.77.0/std/primitive.char.html">char</a>) -&gt; <a class="enum" href="../enum.BidiClass.html" title="enum unicode_bidi::BidiClass">BidiClass</a></h4></section></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.bidi_matched_opening_bracket" class="method"><a class="src rightside" href="../../src/unicode_bidi/data_source.rs.html#43-45">source</a><h4 class="code-header">fn <a href="#method.bidi_matched_opening_bracket" class="fn">bidi_matched_opening_bracket</a>(
&amp;self,
c: <a class="primitive" href="https://doc.rust-lang.org/1.77.0/std/primitive.char.html">char</a>
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.77.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.BidiMatchedOpeningBracket.html" title="struct unicode_bidi::data_source::BidiMatchedOpeningBracket">BidiMatchedOpeningBracket</a>&gt;</h4></section></summary><div class="docblock"><p>If this character is a bracket according to BidiBrackets.txt,
return the corresponding <em>normalized</em> <em>opening bracket</em> of the pair,
and whether or not it itself is an opening bracket.</p>
<p>This effectively buckets brackets into equivalence classes keyed on the
normalized opening bracket.</p>
<p>The default implementation will pull in a small amount of hardcoded data,
regardless of the <code>hardcoded-data</code> feature. This is in part for convenience
(since this data is small and changes less often), and in part so that this method can be
added without needing a breaking version bump.
Override this method in your custom data source to prevent the use of hardcoded data.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-BidiDataSource-for-HardcodedBidiData" class="impl"><a class="src rightside" href="../../src/unicode_bidi/char_data/mod.rs.html#33-37">source</a><a href="#impl-BidiDataSource-for-HardcodedBidiData" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.BidiDataSource.html" title="trait unicode_bidi::data_source::BidiDataSource">BidiDataSource</a> for <a class="struct" href="../struct.HardcodedBidiData.html" title="struct unicode_bidi::HardcodedBidiData">HardcodedBidiData</a></h3></section></div><script src="../../trait.impl/unicode_bidi/data_source/trait.BidiDataSource.js" async></script></section></div></main></body></html>