ohos-hilog-binding 0.1.2

hilog binding for rust
# ohos-hilog-binding

## Install

```shell
cargo add ohos-hilog-binding
```

## Usage

```rust
use hilog_binding::hilog_debug;
use napi_derive_ohos::napi;

#[napi]
pub fn add(left: u32, right: u32) -> u32 {
    hilog_debug!("hello world");
    hilog_debug!(
        "test",
        LogOptions {
          tag: Some("testTag"),
          domain: None
      }
    );
    left + right
}
```

## Feature

### redirect

Allow us redirect stdout/stderr to hilog.

```toml
# Cargo.toml

[dependencies]
ohos-hilog-binding = {version = "*", features = ["redirect"]}
```

```rust
use napi_derive_ohos::napi;

#[napi]
pub fn add(left: u32, right: u32) -> u32 {
  // setup at first
  let _handle = ohos_hilog_binding::forward_stdio_to_hilog();
  // can be redirected to hilog with info level
  println!("hello");

  left + right
}


```

### log

Allow us use `log` as log library.

**For `log` trace level, we will convert to debug level which is not supported in OHOS.**

```toml
# Cargo.toml

[dependencies]
ohos-hilog-binding = {version = "*", features = ["log"]}
log                = { version = "*" }
```

```rust
use napi_derive_ohos::napi;

use log::{debug, error, LevelFilter};
use ohos_hilog_binding::log::Config;

#[napi]
pub fn info() {
    ohos_hilog_binding::log::init_once(Config::default().with_max_level(LevelFilter::Info));

    debug!("this is a debug {}", "message");
    error!("this is printed by default");
}
```