pub struct QueryRequest {
pub vec: Vec<f32>,
}Fields§
§vec: Vec<f32>Implementations§
Source§impl QueryRequest
impl QueryRequest
Sourcepub fn from_vec(v: &[f32]) -> Self
pub fn from_vec(v: &[f32]) -> Self
Examples found in repository?
examples/topk_verify.rs (line 30)
13fn main() {
14 let dim: u16 = 3;
15 let sk = SigningKey::from_bytes(&[1u8; 32]);
16 let v1 = vec![1.0, 0.0, 0.0]; // a
17 let v2 = vec![0.0, 1.0, 0.0]; // b
18 let v3 = vec![0.0, 0.0, 1.0]; // c
19
20 let cap_a = Capsule::create(dim, &f32_to_bytes(&v1), CapsuleFlags::NONE, &sk).unwrap();
21 let cap_b = Capsule::create(dim, &f32_to_bytes(&v2), CapsuleFlags::NONE, &sk).unwrap();
22 let cap_c = Capsule::create(dim, &f32_to_bytes(&v3), CapsuleFlags::NONE, &sk).unwrap();
23
24 let mut b = IndexPackBuilder::new(dim);
25 b.add_capsule("a".into(), cap_a).unwrap();
26 b.add_capsule("b".into(), cap_b).unwrap();
27 b.add_capsule("c".into(), cap_c).unwrap();
28
29 let pack = b.build(None).unwrap();
30 let ev = pack.query(&QueryRequest::from_vec(&v1), 3).unwrap();
31 pack.verify(&ev).unwrap();
32
33 println!("Pack CID : {}", ev.index_pack_cid);
34 for (i, r) in ev.results.iter().enumerate() {
35 println!(
36 "#{i} id={} score={:.4} leaf={} path_len={}",
37 r.id,
38 r.score,
39 r.leaf_hex,
40 r.path.len()
41 );
42 }
43}Trait Implementations§
Source§impl Clone for QueryRequest
impl Clone for QueryRequest
Source§fn clone(&self) -> QueryRequest
fn clone(&self) -> QueryRequest
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for QueryRequest
impl Debug for QueryRequest
Source§impl<'de> Deserialize<'de> for QueryRequest
impl<'de> Deserialize<'de> for QueryRequest
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for QueryRequest
impl RefUnwindSafe for QueryRequest
impl Send for QueryRequest
impl Sync for QueryRequest
impl Unpin for QueryRequest
impl UnwindSafe for QueryRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more