nostrdb-rs

nostrdb in rust!
git clone git://jb55.com/nostrdb-rs
Log | Files | Refs | Submodules | README | LICENSE

commit e70f9b96efabb3448d182202a23156334c46f801
parent dd0d18e637388ae1ef344a9544801acbb3a41bfe
Author: William Casarin <jb55@jb55.com>
Date:   Wed,  9 Apr 2025 21:15:50 -0700

fix filter elem crash

Signed-off-by: William Casarin <jb55@jb55.com>

Diffstat:
Msrc/filter.rs | 12++++++++++++
1 file changed, 12 insertions(+), 0 deletions(-)

diff --git a/src/filter.rs b/src/filter.rs @@ -191,6 +191,9 @@ impl Filter { FilterElement::Id(id) => builder.add_id_element(id).unwrap(), FilterElement::Str(str_) => builder.add_str_element(str_).unwrap(), FilterElement::Int(int) => builder.add_int_element(int).unwrap(), + FilterElement::Custom => { + todo!("copy filters with custom filters"); + } } } builder.end_field(); @@ -972,6 +975,11 @@ impl<'a> FilterElements<'a> { let num = unsafe { bindings::ndb_filter_get_int_element(self.elements, index) }; Some(FilterElement::Int(num)) } + + FieldElemType::Custom => { + //let custom = unsafe { bindings::ndb_filter_get_custom_filter_element() } + Some(FilterElement::Custom) + } } } @@ -1020,6 +1028,7 @@ pub enum FieldElemType { Str, Id, Int, + Custom, } impl FieldElemType { @@ -1032,6 +1041,8 @@ impl FieldElemType { Some(FieldElemType::Id) } else if val == bindings::ndb_generic_element_type_NDB_ELEMENT_INT { Some(FieldElemType::Int) + } else if val == bindings::ndb_generic_element_type_NDB_ELEMENT_CUSTOM { + Some(FieldElemType::Custom) } else { None } @@ -1085,6 +1096,7 @@ pub enum FilterElement<'a> { Str(&'a str), Id(&'a [u8; 32]), Int(u64), + Custom, } impl<'a> Iterator for FilterIter<'a> {