use crate::client::AkShareClient;
use crate::error::Result;
use crate::types::MacroDataPoint;
use super::shared::fetch_em_indicator;
const REPORT: &str = "RPT_ECONOMICVALUE_CH";
impl AkShareClient {
pub async fn swiss_svme(&self) -> Result<Vec<MacroDataPoint>> {
fetch_em_indicator(self, REPORT, "EMG00341602", "Swiss SVME PMI").await
}
pub async fn swiss_trade(&self) -> Result<Vec<MacroDataPoint>> {
fetch_em_indicator(self, REPORT, "EMG00341603", "Swiss Trade").await
}
pub async fn swiss_cpi_yearly(&self) -> Result<Vec<MacroDataPoint>> {
fetch_em_indicator(self, REPORT, "EMG00341604", "Swiss CPI Yearly").await
}
pub async fn swiss_gdp_quarterly(&self) -> Result<Vec<MacroDataPoint>> {
fetch_em_indicator(self, REPORT, "EMG00341600", "Swiss GDP Quarterly").await
}
pub async fn swiss_gdp_yearly(&self) -> Result<Vec<MacroDataPoint>> {
fetch_em_indicator(self, REPORT, "EMG00341601", "Swiss GDP Yearly").await
}
pub async fn swiss_bank_rate(&self) -> Result<Vec<MacroDataPoint>> {
fetch_em_indicator(self, REPORT, "EMG00341606", "Swiss Bank Rate").await
}
}
impl AkShareClient {
pub async fn macro_swiss_cpi_yearly(&self) -> Result<Vec<MacroDataPoint>> {
self.swiss_cpi_yearly().await
}
pub async fn macro_swiss_gdp_quarterly(&self) -> Result<Vec<MacroDataPoint>> {
self.swiss_gdp_quarterly().await
}
pub async fn macro_swiss_svme(&self) -> Result<Vec<MacroDataPoint>> {
self.swiss_svme().await
}
pub async fn macro_swiss_trade(&self) -> Result<Vec<MacroDataPoint>> {
self.swiss_trade().await
}
pub async fn macro_swiss_gbd_yearly(&self) -> Result<Vec<MacroDataPoint>> {
self.swiss_gdp_yearly().await
}
pub async fn macro_swiss_gbd_bank_rate(&self) -> Result<Vec<MacroDataPoint>> {
self.swiss_bank_rate().await
}
}