tvscreener/core/
crypto.rs1use super::Screener;
9use crate::field::{crypto_volume_24h_in_usd, default_crypto_fields};
10use serde_json::json;
11
12#[derive(Debug, Clone)]
14pub struct CryptoScreener {
15 inner: Screener,
16}
17
18impl CryptoScreener {
19 pub fn new() -> Self {
21 let mut inner = Screener::new("crypto");
22 inner.set_url(crate::util::get_url("crypto"));
23 inner.set_all_fields_fn(default_crypto_fields);
24 inner.select(default_crypto_fields());
25 inner.sort_by(crypto_volume_24h_in_usd().field_name, false);
26 inner.add_misc("price_conversion", json!({ "to_symbol": false }));
27 Self { inner }
28 }
29}
30
31impl_typed_screener_common!(CryptoScreener);