pub trait EncodeField {
// Required method
fn encode_field(&self) -> Result<Value>;
// Provided method
fn encode_optional_field(&self) -> Result<Option<Value>> { ... }
}Expand description
Internal/public field encoder used by generated implementations.
Required Methods§
Sourcefn encode_field(&self) -> Result<Value>
fn encode_field(&self) -> Result<Value>
Encodes one struct field into an MMDB value.
§Examples
use libmaxminddb_rs::{EncodeField, Value};
assert_eq!(64512_u32.encode_field()?, Value::Uint32(64512));Provided Methods§
Sourcefn encode_optional_field(&self) -> Result<Option<Value>>
fn encode_optional_field(&self) -> Result<Option<Value>>
Encodes a field for insertion into a struct map.
Most field types return Some(value). Option<T> overrides this hook so None
omits the field entirely, matching MMDB’s lack of a null data type.
§Examples
use libmaxminddb_rs::EncodeField;
assert!(Option::<u32>::None.encode_optional_field()?.is_none());Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".