From 9f56fcf0cbe484539630c91a85a257666b321440 Mon Sep 17 00:00:00 2001 From: LongYinan Date: Sat, 9 May 2020 15:41:50 +0800 Subject: [PATCH] chore: upgrade napi-rs to 0.3 --- packages/crc32/Cargo.toml | 4 ++-- packages/crc32/src/lib.rs | 7 ++----- packages/jieba/Cargo.toml | 4 ++-- packages/jieba/src/lib.rs | 21 +++++++++------------ 4 files changed, 15 insertions(+), 21 deletions(-) diff --git a/packages/crc32/Cargo.toml b/packages/crc32/Cargo.toml index c68ebb12..bb502ae5 100644 --- a/packages/crc32/Cargo.toml +++ b/packages/crc32/Cargo.toml @@ -8,8 +8,8 @@ edition = "2018" crate-type = ["cdylib"] [dependencies] -napi-rs = { version = "0.2" } -napi-rs-derive = { version = "0.1" } +napi-rs = { version = "0.3" } +napi-rs-derive = { version = "0.2" } crc32fast = "1.2" [target.'cfg(unix)'.dependencies] diff --git a/packages/crc32/src/lib.rs b/packages/crc32/src/lib.rs index 1684ecf2..98d40d1a 100644 --- a/packages/crc32/src/lib.rs +++ b/packages/crc32/src/lib.rs @@ -18,13 +18,10 @@ mod crc32_table; register_module!(test_module, init); -fn init<'env>( - env: &'env Env, - exports: &'env mut Value<'env, Object>, -) -> Result>> { +fn init(env: &Env, exports: &mut Value) -> Result<()> { exports.set_named_property("crc32c", env.create_function("crc32c", crc32c)?)?; exports.set_named_property("crc32", env.create_function("crc32", crc32)?)?; - Ok(None) + Ok(()) } #[js_function(2)] diff --git a/packages/jieba/Cargo.toml b/packages/jieba/Cargo.toml index c7c577c8..2bb795d4 100644 --- a/packages/jieba/Cargo.toml +++ b/packages/jieba/Cargo.toml @@ -9,8 +9,8 @@ crate-type = ["cdylib"] [dependencies] jieba-rs = { version = "0.4", features = ["default-dict", "tfidf", "textrank"] } -napi-rs = { version = "0.2" } -napi-rs-derive = { version = "0.1" } +napi-rs = { version = "0.3" } +napi-rs-derive = { version = "0.2" } once_cell = "1.3" [target.'cfg(unix)'.dependencies] diff --git a/packages/jieba/src/lib.rs b/packages/jieba/src/lib.rs index 37e49c55..3223774b 100644 --- a/packages/jieba/src/lib.rs +++ b/packages/jieba/src/lib.rs @@ -20,10 +20,7 @@ register_module!(test_module, init); static JIEBA: OnceCell = OnceCell::new(); -fn init<'env>( - env: &'env Env, - exports: &'env mut Value<'env, Object>, -) -> Result>> { +fn init(env: &Env, exports: &mut Value) -> Result<()> { exports.set_property( env.create_string("load")?, env.create_function("load", load)?, @@ -53,19 +50,19 @@ fn init<'env>( env.create_function("extract", extract)?, )?; - Ok(None) + Ok(()) } #[js_function] fn load(ctx: CallContext) -> Result> { - assert_not_init(ctx.env)?; + assert_not_init(&ctx.env)?; let _ = JIEBA.get_or_init(|| Jieba::new()); ctx.env.get_undefined() } #[js_function(1)] fn load_dict(ctx: CallContext) -> Result> { - assert_not_init(ctx.env)?; + assert_not_init(&ctx.env)?; let dict = ctx.get::(0)?; let mut readable_dict: &[u8] = &dict; JIEBA.get_or_init(|| { @@ -98,7 +95,7 @@ fn cut(ctx: CallContext) -> Result> { .or_else(|_| ctx.env.get_boolean(false))?; let jieba = JIEBA.get_or_init(|| Jieba::new()); let cutted = jieba.cut( - str::from_utf8(&sentence).map_err(|_| Error::new(Status::InvalidArg))?, + str::from_utf8(&sentence).map_err(|_| Error::from_status(Status::InvalidArg))?, hmm.get_value(), ); @@ -112,7 +109,7 @@ fn cut_all(ctx: CallContext) -> Result> { let sentence = ctx.get::(0)?; let jieba = JIEBA.get_or_init(|| Jieba::new()); let cutted = - jieba.cut_all(str::from_utf8(&sentence).map_err(|_| Error::new(Status::InvalidArg))?); + jieba.cut_all(str::from_utf8(&sentence).map_err(|_| Error::from_status(Status::InvalidArg))?); let output = cutted.join(","); @@ -127,7 +124,7 @@ fn cut_for_search(ctx: CallContext) -> Result> { .or_else(|_| ctx.env.get_boolean(false))?; let jieba = JIEBA.get_or_init(|| Jieba::new()); let cutted = jieba.cut_for_search( - str::from_utf8(&sentence).map_err(|_| Error::new(Status::InvalidArg))?, + str::from_utf8(&sentence).map_err(|_| Error::from_status(Status::InvalidArg))?, hmm.get_value(), ); @@ -144,7 +141,7 @@ fn tag(ctx: CallContext) -> Result> { .or_else(|_| ctx.env.get_boolean(false))?; let jieba = JIEBA.get_or_init(|| Jieba::new()); let tagged = jieba.tag( - str::from_utf8(&sentence).map_err(|_| Error::new(Status::InvalidArg))?, + str::from_utf8(&sentence).map_err(|_| Error::from_status(Status::InvalidArg))?, hmm.get_value(), ); @@ -180,7 +177,7 @@ fn extract(ctx: CallContext) -> Result> { let topn: usize = topn.try_into()?; let tags = keyword_extractor.extract_tags( - str::from_utf8(&sentence).map_err(|_| Error::new(Status::InvalidArg))?, + str::from_utf8(&sentence).map_err(|_| Error::from_status(Status::InvalidArg))?, topn, allowed_pos, );