Struct tackler_api::filters::FilterDefinition
source · pub struct FilterDefinition { /* private fields */ }Expand description
The main filter definition
This is the main handle for Txn Filter definition, and this can be used to serialize and deserialize filters from JSON.
Examples
let filter_json_str = r#"{"txnFilter":{"NullaryTRUE":{}}}"#;
let tf = serde_json::from_str::<FilterDefinition>(filter_json_str)?;
match tf.txn_filter {
TxnFilter::NullaryTRUE(_) => (),
_ => panic!(),
}
assert_eq!(serde_json::to_string(&tf)?, filter_json_str);Implementations§
source§impl FilterDefinition
impl FilterDefinition
sourcepub fn from_json_str(filt_str: &str) -> Result<FilterDefinition, Box<dyn Error>>
pub fn from_json_str(filt_str: &str) -> Result<FilterDefinition, Box<dyn Error>>
Generate filter from JSON String
Examples
let filter_json_str = r#"{"txnFilter":{"NullaryTRUE":{}}}"#;
let tf = FilterDefinition::from_json_str(filter_json_str)?;
match tf.txn_filter {
TxnFilter::NullaryTRUE(_) => (),
_ => panic!(),
}
sourcepub fn is_armored(filt: &str) -> bool
pub fn is_armored(filt: &str) -> bool
Test if filter string is ascii armored
sourcepub fn from_armor(
filt_armor_str: &str
) -> Result<FilterDefinition, Box<dyn Error>>
pub fn from_armor( filt_armor_str: &str ) -> Result<FilterDefinition, Box<dyn Error>>
Generate filter from ascii armor JSON String
Examples
let filter_ascii_armor = "base64:eyJ0eG5GaWx0ZXIiOnsiTnVsbGFyeVRSVUUiOnt9fX0K";
let tf = FilterDefinition::from_armor(filter_ascii_armor)?;
match tf.txn_filter {
TxnFilter::NullaryTRUE(_) => (),
_ => panic!(),
}
Trait Implementations§
source§impl Clone for FilterDefinition
impl Clone for FilterDefinition
source§fn clone(&self) -> FilterDefinition
fn clone(&self) -> FilterDefinition
Returns a copy 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 FilterDefinition
impl Debug for FilterDefinition
source§impl<'de> Deserialize<'de> for FilterDefinition
impl<'de> Deserialize<'de> for FilterDefinition
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