pub struct WhitelistSubscriptionFilter(pub HashSet<TopicHash>);Expand description
Allows only whitelisted subscriptions
Tuple Fields§
§0: HashSet<TopicHash>Trait Implementations§
Source§impl Clone for WhitelistSubscriptionFilter
 
impl Clone for WhitelistSubscriptionFilter
Source§fn clone(&self) -> WhitelistSubscriptionFilter
 
fn clone(&self) -> WhitelistSubscriptionFilter
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 Default for WhitelistSubscriptionFilter
 
impl Default for WhitelistSubscriptionFilter
Source§fn default() -> WhitelistSubscriptionFilter
 
fn default() -> WhitelistSubscriptionFilter
Returns the “default value” for a type. Read more
Source§impl TopicSubscriptionFilter for WhitelistSubscriptionFilter
 
impl TopicSubscriptionFilter for WhitelistSubscriptionFilter
Source§fn can_subscribe(&mut self, topic_hash: &TopicHash) -> bool
 
fn can_subscribe(&mut self, topic_hash: &TopicHash) -> bool
Returns true iff the topic is of interest and we can subscribe to it.
Source§fn filter_incoming_subscriptions<'a>(
    &mut self,
    subscriptions: &'a [Subscription],
    currently_subscribed_topics: &BTreeSet<TopicHash>,
) -> Result<HashSet<&'a Subscription>, String>
 
fn filter_incoming_subscriptions<'a>( &mut self, subscriptions: &'a [Subscription], currently_subscribed_topics: &BTreeSet<TopicHash>, ) -> Result<HashSet<&'a Subscription>, String>
Filters a list of incoming subscriptions and returns a filtered set
By default this deduplicates the subscriptions and calls
Self::filter_incoming_subscription_set on the filtered set.Source§fn filter_incoming_subscription_set<'a>(
    &mut self,
    subscriptions: HashSet<&'a Subscription>,
    _currently_subscribed_topics: &BTreeSet<TopicHash>,
) -> Result<HashSet<&'a Subscription>, String>
 
fn filter_incoming_subscription_set<'a>( &mut self, subscriptions: HashSet<&'a Subscription>, _currently_subscribed_topics: &BTreeSet<TopicHash>, ) -> Result<HashSet<&'a Subscription>, String>
Filters a set of deduplicated subscriptions
By default this filters the elements based on 
Self::allow_incoming_subscription.Source§fn allow_incoming_subscription(&mut self, subscription: &Subscription) -> bool
 
fn allow_incoming_subscription(&mut self, subscription: &Subscription) -> bool
Returns true iff we allow an incoming subscription.
This is used by the default implementation of filter_incoming_subscription_set to decide
whether to filter out a subscription or not.
By default this uses can_subscribe to decide the same for incoming subscriptions as for
outgoing ones.
Auto Trait Implementations§
impl Freeze for WhitelistSubscriptionFilter
impl RefUnwindSafe for WhitelistSubscriptionFilter
impl Send for WhitelistSubscriptionFilter
impl Sync for WhitelistSubscriptionFilter
impl Unpin for WhitelistSubscriptionFilter
impl UnwindSafe for WhitelistSubscriptionFilter
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
Source§impl<T> CloneToUninit for Twhere
    T: Clone,
 
impl<T> CloneToUninit for Twhere
    T: Clone,
§impl<T> Instrument for T
 
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
 
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
 
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
 
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
 
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
 
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts 
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more