use std::error::Error;
use libmaxminddb_rs::{MetadataBuilder, MmdbEncode, Writer};
#[derive(MmdbEncode)]
struct SampleRecord<'a> {
asn: u32,
country: &'a str,
}
pub fn sample_bytes() -> Result<Vec<u8>, Box<dyn Error>> {
let metadata = MetadataBuilder::new()
.database_type("Lookup-Examples")
.ip_version(6)
.build()?;
let mut writer = Writer::with_metadata(metadata);
writer.insert_encoded(
"198.51.100.0/24".parse()?,
&SampleRecord {
asn: 64513,
country: "US",
},
)?;
writer.insert_encoded(
"2001:db8:1::/48".parse()?,
&SampleRecord {
asn: 64512,
country: "FR",
},
)?;
Ok(writer.finish()?)
}