Skip to main content

sol_parser_sdk/grpc/
filter.rs

1pub use crate::grpc::types::{
2    AccountFilter, AccountFilterData, AccountFilterMemcmp, EventTypeFilter, TransactionFilter,
3};
4
5use crate::grpc::program_ids::get_program_ids_for_protocols;
6use crate::grpc::types::Protocol;
7
8impl TransactionFilter {
9    pub fn for_protocols(protocols: &[Protocol]) -> Self {
10        let program_ids = get_program_ids_for_protocols(protocols);
11        Self {
12            account_include: program_ids,
13            account_exclude: Vec::new(),
14            account_required: Vec::new(),
15        }
16    }
17}
18
19impl AccountFilter {
20    pub fn for_protocols(protocols: &[Protocol]) -> Self {
21        let program_ids = get_program_ids_for_protocols(protocols);
22        Self { account: Vec::new(), owner: program_ids, filters: Vec::new() }
23    }
24}