Skip to content

Commit a94fd59

Browse files
committed
Make MessageArguments a subtrait of EncodeArguments, and remove Sized
1 parent 663f32f commit a94fd59

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

objc2/src/message/mod.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ pub unsafe trait MessageReceiver: private::Sealed {
114114
#[cfg_attr(feature = "verify_message", inline(always))]
115115
unsafe fn send_message<A, R>(&self, sel: Sel, args: A) -> Result<R, MessageError>
116116
where
117-
A: MessageArguments + EncodeArguments,
117+
A: MessageArguments,
118118
R: Encode,
119119
{
120120
let this = self.as_raw_receiver();
@@ -150,7 +150,7 @@ pub unsafe trait MessageReceiver: private::Sealed {
150150
args: A,
151151
) -> Result<R, MessageError>
152152
where
153-
A: MessageArguments + EncodeArguments,
153+
A: MessageArguments,
154154
R: Encode,
155155
{
156156
let this = self.as_raw_receiver();
@@ -280,7 +280,7 @@ unsafe impl<T: Message, O: Ownership> MessageReceiver for Option<Id<T, O>> {
280280
}
281281

282282
/// Types that may be used as the arguments of an Objective-C message.
283-
pub trait MessageArguments: Sized {
283+
pub trait MessageArguments: EncodeArguments {
284284
/// Invoke an [`Imp`] with the given object, selector, and arguments.
285285
///
286286
/// This method is the primitive used when sending messages and should not
@@ -291,7 +291,7 @@ pub trait MessageArguments: Sized {
291291

292292
macro_rules! message_args_impl {
293293
($($a:ident : $t:ident),*) => (
294-
impl<$($t),*> MessageArguments for ($($t,)*) {
294+
impl<$($t: Encode),*> MessageArguments for ($($t,)*) {
295295
unsafe fn invoke<R>(imp: Imp, obj: *mut Object, sel: Sel, ($($a,)*): Self) -> R {
296296
let imp: unsafe extern fn(*mut Object, Sel $(, $t)*) -> R =
297297
mem::transmute(imp);

0 commit comments

Comments
 (0)