Logger

Trait Logger 

Source
pub trait Logger: Sync + Send {
    // Required method
    fn log(&self, level: LogLevel, message: String);
}
Expand description

Trait representing a logger that can log messages at various levels.

This trait should be implemented by any logger that wants to receive log messages. It is exported via UniFFI for use in foreign languages.

§Examples

Implementing the Logger trait:

use walletkit_core::logger::{Logger, LogLevel};

struct MyLogger;

impl Logger for MyLogger {
    fn log(&self, level: LogLevel, message: String) {
        println!("[{:?}] {}", level, message);
    }
}

§Swift

class WalletKitLoggerBridge: WalletKit.Logger {
    static let shared = WalletKitLoggerBridge()

    func log(level: WalletKit.LogLevel, message: String) {
        Log.log(level.toCoreLevel(), message)
    }
}

public func setupWalletKitLogger() {
    WalletKit.setLogger(logger: WalletKitLoggerBridge.shared)
}

§In app delegate

setupWalletKitLogger() // Call this only once!!!

Required Methods§

Source

fn log(&self, level: LogLevel, message: String)

Logs a message at the specified log level.

§Arguments
  • level - The severity level of the log message.
  • message - The log message to be recorded.

Implementors§