@@ -22,29 +22,25 @@ mod verify_task;
22
22
pub const DEFAULT_COST : u32 = 12 ;
23
23
24
24
#[ napi]
25
- pub fn gen_salt_sync ( round : u32 , version : String ) -> Result < String > {
25
+ pub fn gen_salt_sync ( round : u32 , version : Option < String > ) -> Result < String > {
26
26
let salt = gen_salt ( ) . map_err ( |err| {
27
27
Error :: new (
28
28
Status :: GenericFailure ,
29
29
format ! ( "Generate salt failed {err}" ) ,
30
30
)
31
31
} ) ?;
32
- Ok ( format_salt (
33
- round,
34
- & version_from_str ( version. as_str ( ) ) ?,
35
- & salt,
36
- ) )
32
+ Ok ( format_salt ( round, & version_from_str ( version) ?, & salt) )
37
33
}
38
34
39
35
#[ napi( js_name = "genSalt" ) ]
40
36
pub fn gen_salt_js (
41
37
round : u32 ,
42
- version : String ,
38
+ version : Option < String > ,
43
39
signal : Option < AbortSignal > ,
44
40
) -> Result < AsyncTask < salt_task:: SaltTask > > {
45
41
let task = salt_task:: SaltTask {
46
42
round,
47
- version : version_from_str ( version. as_str ( ) ) ?,
43
+ version : version_from_str ( version) ?,
48
44
} ;
49
45
Ok ( AsyncTask :: with_optional_signal ( task, signal) )
50
46
}
@@ -119,13 +115,13 @@ pub fn verify(
119
115
}
120
116
121
117
#[ inline]
122
- fn version_from_str ( version : & str ) -> Result < Version > {
123
- match version {
124
- "2a" => Ok ( Version :: TwoA ) ,
125
- "2b" => Ok ( Version :: TwoB ) ,
126
- "2y" => Ok ( Version :: TwoX ) ,
127
- "2x" => Ok ( Version :: TwoY ) ,
128
- _ => Err ( Error :: new (
118
+ fn version_from_str ( version : Option < String > ) -> Result < Version > {
119
+ match version. as_deref ( ) {
120
+ Some ( "2a" ) => Ok ( Version :: TwoA ) ,
121
+ Some ( "2b" ) | None => Ok ( Version :: TwoB ) ,
122
+ Some ( "2y" ) => Ok ( Version :: TwoX ) ,
123
+ Some ( "2x" ) => Ok ( Version :: TwoY ) ,
124
+ Some ( version ) => Err ( Error :: new (
129
125
Status :: InvalidArg ,
130
126
format ! ( "{version} is not a valid version" ) ,
131
127
) ) ,
0 commit comments