Skip to content

Commit 7edfd55

Browse files
committed
Moved the Sized bound from Message to INSObject.
1 parent 9e147ac commit 7edfd55

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

object.rs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,13 @@ use objc::{EncodePtr, Id, Message, ShareId};
33

44
use NSString;
55

6-
pub trait INSObject : 'static + Message + EncodePtr {
6+
/*
7+
The Sized bound is unfortunate; ideally, objc objects would not be
8+
treated as Sized. However, rust won't allow casting a dynamically-sized type
9+
pointer to an Object pointer, because dynamically-sized types can have fat
10+
pointers (two words) instead of real pointers.
11+
*/
12+
pub trait INSObject : 'static + Sized + Message + EncodePtr {
713
fn class() -> &'static Class;
814

915
fn hash_code(&self) -> usize {

0 commit comments

Comments
 (0)