Skip to main content

DecodeField

Trait DecodeField 

Source
pub trait DecodeField<'a>: Sized {
    // Required method
    fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>;
}
Expand description

Internal/public field decoder used by generated implementations.

Required Methods§

Source

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Decodes an optional map field into this field type. Returns an error when a required field is absent or has the wrong type.

§Examples
use libmaxminddb_rs::{DecodeField, ValueRef};
let value = ValueRef::Utf8("example");
let category = <&str>::decode_field(Some(&value))?;
assert_eq!(category, "example");

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'a, T: DecodeField<'a>> DecodeField<'a> for BTreeMap<String, T>

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a, T: DecodeField<'a>> DecodeField<'a> for Option<T>

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a, T: DecodeField<'a>> DecodeField<'a> for Vec<T>

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for &'a [u8]

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for &'a str

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for String

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for bool

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for f32

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for f64

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for i32

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for u16

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for u32

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for u64

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Source§

impl<'a> DecodeField<'a> for u128

Source§

fn decode_field(value: Option<&ValueRef<'a>>) -> Result<Self>

Implementors§