diff --git a/interfaces/innerkits/rust/src/ipc/macros.rs b/interfaces/innerkits/rust/src/ipc/macros.rs index f26133fcd5f3c02b9fb3c824774f34d7dca6763c..6d342c20176206b77f9b69af2e2e86d947b51c0d 100644 --- a/interfaces/innerkits/rust/src/ipc/macros.rs +++ b/interfaces/innerkits/rust/src/ipc/macros.rs @@ -100,7 +100,7 @@ macro_rules! define_remote_object { impl $crate::FromRemoteObj for dyn $remote_broker { /// For example, convert RemoteObj to RemoteObjRef - fn from(object: $crate::RemoteObj) + fn try_from(object: $crate::RemoteObj) -> $crate::Result<$crate::RemoteObjRef> { Ok($crate::RemoteObjRef::new(Box::new($proxy::from_remote_object(&object)?))) } diff --git a/interfaces/innerkits/rust/src/ipc/mod.rs b/interfaces/innerkits/rust/src/ipc/mod.rs index d56396f0b076d8b0c3e3706c647ae208da7eff83..1a8abf6d3e05bc9db5018d1fbe8917c8a6ff003a 100644 --- a/interfaces/innerkits/rust/src/ipc/mod.rs +++ b/interfaces/innerkits/rust/src/ipc/mod.rs @@ -70,7 +70,7 @@ pub trait IRemoteBroker: Send + Sync { /// dynamic trait object: IRemoteObject. For example, "dyn ITest" should implements this trait pub trait FromRemoteObj: IRemoteBroker { /// Convert a RemoteObj to RemoteObjeRef - fn from(object: RemoteObj) -> Result>; + fn try_from(object: RemoteObj) -> Result>; } /// Strong reference for "dyn IRemoteBroker" object, for example T is "dyn ITest" @@ -94,7 +94,7 @@ impl Deref for RemoteObjRef { impl Clone for RemoteObjRef { fn clone(&self) -> Self { // non None - FromRemoteObj::from(self.0.as_object().unwrap()).unwrap() + FromRemoteObj::try_from(self.0.as_object().unwrap()).unwrap() } } diff --git a/ipc/native/test/unittest/rust/client/src/main.rs b/ipc/native/test/unittest/rust/client/src/main.rs index 29e14337f2f9071e58a3705e6242adea22fcf334..98e8f9ce7e5fde88936e3d46135e19238df9c0ab 100644 --- a/ipc/native/test/unittest/rust/client/src/main.rs +++ b/ipc/native/test/unittest/rust/client/src/main.rs @@ -37,7 +37,7 @@ use std::fs::File; fn get_test_service() -> RemoteObjRef { let object = get_service(IPC_TEST_SERVICE_ID).expect("get itest service failed"); - let remote = ::from(object); + let remote = ::try_from(object); let remote = match remote { Ok(x) => x, Err(error) => { @@ -208,7 +208,7 @@ fn test_loop_request() { fn test_remote_obj() { let remote = get_test_service(); let remote = remote.test_get_foo_service().expect("get FooService proxy failed"); - ::from(remote).expect( + ::try_from(remote).expect( "convert foo service should success"); }