pub struct Filter {
pub ids: Option<BTreeSet<EventId>>,
pub authors: Option<BTreeSet<PublicKey>>,
pub kinds: Option<BTreeSet<Kind>>,
pub search: Option<String>,
pub since: Option<Timestamp>,
pub until: Option<Timestamp>,
pub limit: Option<usize>,
pub generic_tags: BTreeMap<SingleLetterTag, BTreeSet<String>>,
}Expand description
Subscription filters
Fields§
§ids: Option<BTreeSet<EventId>>List of EventId
List of PublicKey
kinds: Option<BTreeSet<Kind>>List of a kind numbers
search: Option<String>It’s a string describing a query in a human-readable form, i.e. “best nostr apps”
since: Option<Timestamp>An integer unix timestamp, events must be newer than this to pass
until: Option<Timestamp>An integer unix timestamp, events must be older than this to pass
limit: Option<usize>Maximum number of events to be returned in the initial query
Generic tag queries
Implementations§
Source§impl Filter
impl Filter
Sourcepub fn ids<I>(self, ids: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
pub fn ids<I>(self, ids: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
Add event ids or prefixes
Sourcepub fn remove_ids<I>(self, ids: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
pub fn remove_ids<I>(self, ids: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
Remove event ids
Add author
Add authors
Remove authors
Sourcepub fn kinds<I>(self, kinds: I) -> Selfwhere
I: IntoIterator<Item = Kind>,
pub fn kinds<I>(self, kinds: I) -> Selfwhere
I: IntoIterator<Item = Kind>,
Add kinds
Sourcepub fn remove_kinds<I>(self, kinds: I) -> Selfwhere
I: IntoIterator<Item = Kind>,
pub fn remove_kinds<I>(self, kinds: I) -> Selfwhere
I: IntoIterator<Item = Kind>,
Remove kinds
Sourcepub fn events<I>(self, events: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
pub fn events<I>(self, events: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
Add events
Sourcepub fn remove_events<I>(self, events: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
pub fn remove_events<I>(self, events: I) -> Selfwhere
I: IntoIterator<Item = EventId>,
Remove events
Sourcepub fn pubkeys<I>(self, pubkeys: I) -> Selfwhere
I: IntoIterator<Item = PublicKey>,
pub fn pubkeys<I>(self, pubkeys: I) -> Selfwhere
I: IntoIterator<Item = PublicKey>,
Add pubkeys
Sourcepub fn remove_pubkeys<I>(self, pubkeys: I) -> Selfwhere
I: IntoIterator<Item = PublicKey>,
pub fn remove_pubkeys<I>(self, pubkeys: I) -> Selfwhere
I: IntoIterator<Item = PublicKey>,
Remove pubkeys
Remove hashtags
Sourcepub fn references<I, S>(self, references: I) -> Self
pub fn references<I, S>(self, references: I) -> Self
Add references
Sourcepub fn remove_references<I, S>(self, references: I) -> Self
pub fn remove_references<I, S>(self, references: I) -> Self
Remove references
Sourcepub fn identifier<S>(self, identifier: S) -> Self
pub fn identifier<S>(self, identifier: S) -> Self
Add identifier
Sourcepub fn identifiers<I, S>(self, identifiers: I) -> Self
pub fn identifiers<I, S>(self, identifiers: I) -> Self
Add identifiers
Sourcepub fn remove_identifiers<I, S>(self, identifiers: I) -> Self
pub fn remove_identifiers<I, S>(self, identifiers: I) -> Self
Remove identifiers
Sourcepub fn coordinate(self, coordinate: &Coordinate) -> Self
pub fn coordinate(self, coordinate: &Coordinate) -> Self
Sourcepub fn coordinates<'a, I>(self, coordinates: I) -> Selfwhere
I: IntoIterator<Item = &'a Coordinate>,
pub fn coordinates<'a, I>(self, coordinates: I) -> Selfwhere
I: IntoIterator<Item = &'a Coordinate>,
Sourcepub fn remove_coordinates<'a, I>(self, coordinates: I) -> Selfwhere
I: IntoIterator<Item = &'a Coordinate>,
pub fn remove_coordinates<'a, I>(self, coordinates: I) -> Selfwhere
I: IntoIterator<Item = &'a Coordinate>,
Sourcepub fn remove_search(self) -> Self
pub fn remove_search(self) -> Self
Remove search
Sourcepub fn remove_since(self) -> Self
pub fn remove_since(self) -> Self
Remove since
Sourcepub fn remove_until(self) -> Self
pub fn remove_until(self) -> Self
Remove until
Sourcepub fn limit(self, limit: usize) -> Self
pub fn limit(self, limit: usize) -> Self
Add limit
Maximum number of events to be returned in the initial query
Sourcepub fn remove_limit(self) -> Self
pub fn remove_limit(self) -> Self
Remove limit
Sourcepub fn custom_tag<S>(self, tag: SingleLetterTag, value: S) -> Self
pub fn custom_tag<S>(self, tag: SingleLetterTag, value: S) -> Self
Add custom tag
Add custom tags
Remove custom tag
Sourcepub fn extract_public_keys(&self) -> BTreeSet<PublicKey>
pub fn extract_public_keys(&self) -> BTreeSet<PublicKey>
Extract all public keys (both from authors and #p)