use objc2::runtime::{AnyClass, NSObject};
use objc2::{class, define_class, msg_send, sel};
define_class!(
#[ unsafe (super (NSObject))]
pub struct MyObject;
);
#[ test]
fn use_class_and_msg_send() {
unsafe {
let cls = class!(NSObject);
let obj: *mut NSObject = msg_send![cls, new];
let _hash: usize = msg_send![obj, hash];
let _: () = msg_send![obj, release];
}
}
#[ test]
fn use_sel() {
let _sel = sel!(description);
let _sel = sel!(setObject:forKey:);
}
pub fn test_msg_send_comma_handling(obj: &MyObject, superclass: &AnyClass) {
unsafe {
let _: () = msg_send![obj, a];
let _: () = msg_send![obj, a,];
let _: () = msg_send![obj, a: 32 i32];
let _: () = msg_send![obj, a: 32 i32,];
#[ allow(deprecated)]
let _: () = msg_send![obj, a: 32 i32 b: 32 i32];
let _: () = msg_send![obj, a: 32 i32, b: 32 i32];
let _: () = msg_send![obj, a: 32 i32, b: 32 i32,];
}
unsafe {
let _: () = msg_send![super (obj, superclass), a];
let _: () = msg_send![super (obj, superclass), a,];
let _: () = msg_send![super (obj, superclass), a: 32 i32];
let _: () = msg_send![super (obj, superclass), a: 32 i32,];
#[ allow(deprecated)]
let _: () = msg_send![super (obj, superclass), a: 32 i32 b: 32 i32];
let _: () = msg_send![super (obj, superclass), a: 32 i32, b: 32 i32];
let _: () = msg_send![super (obj, superclass), a: 32 i32, b: 32 i32,];
}
unsafe {
let _: () = msg_send![super (obj), a];
let _: () = msg_send![super (obj), a,];
let _: () = msg_send![super (obj), a: 32 i32];
let _: () = msg_send![super (obj), a: 32 i32,];
let _: () = msg_send![super (obj), a: 32 i32, b: 32 i32];
let _: () = msg_send![super (obj), a: 32 i32, b: 32 i32,];
}
}
Messung V0.5 in Prozent C=100 H=82 G=91
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet am 2026-08-25)
¤
*© Formatika GbR, Deutschland