Trait icu_provider::prelude::DataProvider [−][src]
pub trait DataProvider<'d, T: ?Sized> where
T: ToOwned,
<T as ToOwned>::Owned: Debug, { fn load_payload(
&self,
req: &DataRequest
) -> Result<DataResponse<'d, T>, Error>; }
A generic data provider that loads a payload of a specific type.
See examples on some of the concrete implementations:
Required methods
fn load_payload(&self, req: &DataRequest) -> Result<DataResponse<'d, T>, Error>
[src]
Query the provider for data, returning the result.
Returns Ok
if the request successfully loaded data. If data failed to load, returns an
Error with more information.
Implementors
impl<'d, 's> DataProvider<'d, HelloWorldV1<'s>> for HelloWorldProvider<'s> where
's: 'd,
[src]
impl<'d, 's> DataProvider<'d, HelloWorldV1<'s>> for HelloWorldProvider<'s> where
's: 'd,
[src]fn load_payload(
&self,
req: &DataRequest
) -> Result<DataResponse<'d, HelloWorldV1<'s>>, DataError>
[src]
&self,
req: &DataRequest
) -> Result<DataResponse<'d, HelloWorldV1<'s>>, DataError>
impl<'d, 's> DataProvider<'d, dyn ErasedDataStruct + 's> for HelloWorldProvider<'static> where
's: 'd,
[src]
impl<'d, 's> DataProvider<'d, dyn ErasedDataStruct + 's> for HelloWorldProvider<'static> where
's: 'd,
[src]fn load_payload(
&self,
req: &DataRequest
) -> Result<DataResponse<'d, dyn ErasedDataStruct + 's>, DataError>
[src]
&self,
req: &DataRequest
) -> Result<DataResponse<'d, dyn ErasedDataStruct + 's>, DataError>
impl<'d, T> DataProvider<'d, T> for InvariantDataProvider where
T: Clone + Debug + Default + 'd,
[src]
impl<'d, T> DataProvider<'d, T> for InvariantDataProvider where
T: Clone + Debug + Default + 'd,
[src]fn load_payload(&self, _req: &DataRequest) -> Result<DataResponse<'d, T>, Error>
[src]
impl<'d, T> DataProvider<'d, T> for StructProvider<'d, T> where
T: Clone + Debug + Sized + 'd,
[src]
impl<'d, T> DataProvider<'d, T> for StructProvider<'d, T> where
T: Clone + Debug + Sized + 'd,
[src]fn load_payload(&self, req: &DataRequest) -> Result<DataResponse<'d, T>, Error>
[src]
impl<'d, T> DataProvider<'d, T> for dyn ErasedDataProvider<'d> + 'd where
T: Clone + Debug + Any,
[src]
impl<'d, T> DataProvider<'d, T> for dyn ErasedDataProvider<'d> + 'd where
T: Clone + Debug + Any,
[src]fn load_payload(&self, req: &DataRequest) -> Result<DataResponse<'d, T>, Error>
[src]
Serve Sized
objects from an ErasedDataProvider
via downcasting.