field_lib

Cross-platform Rust runtime for Radroots iOS and Android apps
git clone https://radroots.dev/git/field_lib.git
Log | Files | Refs | README | LICENSE

logging.rs (1478B)


      1 use std::path::PathBuf;
      2 
      3 #[cfg_attr(not(coverage_nightly), uniffi::export)]
      4 pub fn init_logging(
      5     dir: Option<String>,
      6     file_name: Option<String>,
      7     is_stdout: Option<bool>,
      8 ) -> Result<(), crate::RadrootsAppError> {
      9     let opts = radroots_log::LoggingOptions {
     10         dir: dir.map(PathBuf::from),
     11         file_name: file_name.unwrap_or_else(|| "radroots.log".to_string()),
     12         file_layout: radroots_log::LogFileLayout::PrefixedDate,
     13         stdout: is_stdout.unwrap_or(true),
     14         default_level: None,
     15     };
     16     match radroots_log::init_logging(opts) {
     17         Ok(()) => Ok(()),
     18         Err(err) => Err(crate::RadrootsAppError::initialization(format!("{err}"))),
     19     }
     20 }
     21 
     22 #[cfg_attr(not(coverage_nightly), uniffi::export)]
     23 pub fn init_logging_stdout() -> Result<(), crate::RadrootsAppError> {
     24     match radroots_log::init_stdout() {
     25         Ok(()) => Ok(()),
     26         Err(err) => Err(crate::RadrootsAppError::initialization(format!("{err}"))),
     27     }
     28 }
     29 
     30 #[cfg_attr(not(coverage_nightly), uniffi::export)]
     31 pub fn log_info(msg: String) -> Result<(), crate::RadrootsAppError> {
     32     radroots_log::log_info(msg);
     33     Ok(())
     34 }
     35 
     36 #[cfg_attr(not(coverage_nightly), uniffi::export)]
     37 pub fn log_error(msg: String) -> Result<(), crate::RadrootsAppError> {
     38     radroots_log::log_error(msg);
     39     Ok(())
     40 }
     41 
     42 #[cfg_attr(not(coverage_nightly), uniffi::export)]
     43 pub fn log_debug(msg: String) -> Result<(), crate::RadrootsAppError> {
     44     radroots_log::log_debug(msg);
     45     Ok(())
     46 }