Files
GopherGate/target/doc/icu_provider/trait.BoundDataProvider.html
2026-02-26 12:00:21 -05:00

25 lines
11 KiB
HTML

<!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="A data provider that loads data for a specific data type."><title>BoundDataProvider in icu_provider - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="icu_provider" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.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]--><rustdoc-topbar><h2><a href="#">BoundDataProvider</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../icu_provider/index.html">icu_<wbr>provider</a><span class="version">2.1.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Bound<wbr>Data<wbr>Provider</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.bound_marker" title="bound_marker">bound_marker</a></li><li><a href="#tymethod.load_bound" title="load_bound">load_bound</a></li></ul><h3><a href="#foreign-impls">Implementations on Foreign Types</a></h3><ul class="block"><li><a href="#impl-BoundDataProvider%3CM%3E-for-%26P" title="&#38;P">&#38;P</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate icu_<wbr>provider</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="index.html">icu_provider</a></div><h1>Trait <span class="trait">Bound<wbr>Data<wbr>Provider</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/icu_provider/data_provider.rs.html#343-354">Source</a> </span></div><pre class="rust item-decl"><code>pub trait BoundDataProvider&lt;M&gt;<div class="where">where
M: <a class="trait" href="trait.DynamicDataMarker.html" title="trait icu_provider::DynamicDataMarker">DynamicDataMarker</a>,</div>{
// Required methods
fn <a href="#tymethod.load_bound" class="fn">load_bound</a>(
&amp;self,
req: <a class="struct" href="struct.DataRequest.html" title="struct icu_provider::DataRequest">DataRequest</a>&lt;'_&gt;,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.DataResponse.html" title="struct icu_provider::DataResponse">DataResponse</a>&lt;M&gt;, <a class="struct" href="struct.DataError.html" title="struct icu_provider::DataError">DataError</a>&gt;;
<span class="item-spacer"></span> fn <a href="#tymethod.bound_marker" class="fn">bound_marker</a>(&amp;self) -&gt; <a class="struct" href="struct.DataMarkerInfo.html" title="struct icu_provider::DataMarkerInfo">DataMarkerInfo</a>;
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A data provider that loads data for a specific data type.</p>
<p>Unlike <a href="trait.DataProvider.html" title="trait icu_provider::DataProvider"><code>DataProvider</code></a>, the provider is bound to a specific marker ahead of time.</p>
<p>This crate provides <a href="struct.DataProviderWithMarker.html" title="struct icu_provider::DataProviderWithMarker"><code>DataProviderWithMarker</code></a> which implements this trait on a single provider
with a single marker. However, this trait can also be implemented on providers that fork between
multiple markers that all return the same data type. For example, it can abstract over many
calendar systems in the datetime formatter.</p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.load_bound" class="method"><a class="src rightside" href="../src/icu_provider/data_provider.rs.html#351">Source</a><h4 class="code-header">fn <a href="#tymethod.load_bound" class="fn">load_bound</a>(&amp;self, req: <a class="struct" href="struct.DataRequest.html" title="struct icu_provider::DataRequest">DataRequest</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.DataResponse.html" title="struct icu_provider::DataResponse">DataResponse</a>&lt;M&gt;, <a class="struct" href="struct.DataError.html" title="struct icu_provider::DataError">DataError</a>&gt;</h4></section></summary><div class="docblock"><p>Query the provider for data, returning the result.</p>
<p>Returns <a href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html#variant.Ok" title="variant core::result::Result::Ok"><code>Ok</code></a> if the request successfully loaded data. If data failed to load, returns an
Error with more information.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="tymethod.bound_marker" class="method"><a class="src rightside" href="../src/icu_provider/data_provider.rs.html#353">Source</a><h4 class="code-header">fn <a href="#tymethod.bound_marker" class="fn">bound_marker</a>(&amp;self) -&gt; <a class="struct" href="struct.DataMarkerInfo.html" title="struct icu_provider::DataMarkerInfo">DataMarkerInfo</a></h4></section></summary><div class="docblock"><p>Returns the <a href="struct.DataMarkerInfo.html" title="struct icu_provider::DataMarkerInfo"><code>DataMarkerInfo</code></a> that this provider uses for loading data.</p>
</div></details></div><h2 id="foreign-impls" class="section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor">§</a></h2><details class="toggle implementors-toggle"><summary><section id="impl-BoundDataProvider%3CM%3E-for-%26P" class="impl"><a class="src rightside" href="../src/icu_provider/data_provider.rs.html#356-369">Source</a><a href="#impl-BoundDataProvider%3CM%3E-for-%26P" class="anchor">§</a><h3 class="code-header">impl&lt;M, P&gt; <a class="trait" href="trait.BoundDataProvider.html" title="trait icu_provider::BoundDataProvider">BoundDataProvider</a>&lt;M&gt; for <a class="primitive" href="https://doc.rust-lang.org/1.93.1/core/primitive.reference.html">&amp;P</a><div class="where">where
M: <a class="trait" href="trait.DynamicDataMarker.html" title="trait icu_provider::DynamicDataMarker">DynamicDataMarker</a>,
P: <a class="trait" href="trait.BoundDataProvider.html" title="trait icu_provider::BoundDataProvider">BoundDataProvider</a>&lt;M&gt; + ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><section id="method.load_bound" class="method trait-impl"><a class="src rightside" href="../src/icu_provider/data_provider.rs.html#362-364">Source</a><a href="#method.load_bound" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.load_bound" class="fn">load_bound</a>(&amp;self, req: <a class="struct" href="struct.DataRequest.html" title="struct icu_provider::DataRequest">DataRequest</a>&lt;'_&gt;) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="struct.DataResponse.html" title="struct icu_provider::DataResponse">DataResponse</a>&lt;M&gt;, <a class="struct" href="struct.DataError.html" title="struct icu_provider::DataError">DataError</a>&gt;</h4></section><section id="method.bound_marker" class="method trait-impl"><a class="src rightside" href="../src/icu_provider/data_provider.rs.html#366-368">Source</a><a href="#method.bound_marker" class="anchor">§</a><h4 class="code-header">fn <a href="#tymethod.bound_marker" class="fn">bound_marker</a>(&amp;self) -&gt; <a class="struct" href="struct.DataMarkerInfo.html" title="struct icu_provider::DataMarkerInfo">DataMarkerInfo</a></h4></section></div></details><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-BoundDataProvider%3CM0%3E-for-DataProviderWithMarker%3CM,+P%3E" class="impl"><a class="src rightside" href="../src/icu_provider/data_provider.rs.html#443-458">Source</a><a href="#impl-BoundDataProvider%3CM0%3E-for-DataProviderWithMarker%3CM,+P%3E" class="anchor">§</a><h3 class="code-header">impl&lt;M, M0, Y, P&gt; <a class="trait" href="trait.BoundDataProvider.html" title="trait icu_provider::BoundDataProvider">BoundDataProvider</a>&lt;M0&gt; for <a class="struct" href="struct.DataProviderWithMarker.html" title="struct icu_provider::DataProviderWithMarker">DataProviderWithMarker</a>&lt;M, P&gt;<div class="where">where
M: <a class="trait" href="trait.DataMarker.html" title="trait icu_provider::DataMarker">DataMarker</a>&lt;DataStruct = Y&gt;,
M0: <a class="trait" href="trait.DynamicDataMarker.html" title="trait icu_provider::DynamicDataMarker">DynamicDataMarker</a>&lt;DataStruct = Y&gt;,
Y: for&lt;'a&gt; <a class="trait" href="../yoke/yokeable/trait.Yokeable.html" title="trait yoke::yokeable::Yokeable">Yokeable</a>&lt;'a&gt;,
P: <a class="trait" href="trait.DataProvider.html" title="trait icu_provider::DataProvider">DataProvider</a>&lt;M&gt;,</div></h3></section></div><script src="../trait.impl/icu_provider/data_provider/trait.BoundDataProvider.js" async></script></section></div></main></body></html>