From 0e69993d39e367a67911f361fde0ad2b58f6d4ea Mon Sep 17 00:00:00 2001 From: gingerBill Date: Wed, 16 Feb 2022 00:17:07 +0000 Subject: [PATCH] Add `init` and `copy` to all `Object`s --- vendor/darwin/Foundation/NSObject.odin | 2 ++ 1 file changed, 2 insertions(+) diff --git a/vendor/darwin/Foundation/NSObject.odin b/vendor/darwin/Foundation/NSObject.odin index 66cd5d617..33ef26a23 100644 --- a/vendor/darwin/Foundation/NSObject.odin +++ b/vendor/darwin/Foundation/NSObject.odin @@ -25,9 +25,11 @@ Copying :: struct($T: typeid) {using _: Object} alloc :: proc($T: typeid) -> ^T where intrinsics.type_is_subtype_of(T, Object) { return msgSend(^T, T, "alloc") } +@(objc_type=Object, objc_name="init") init :: proc(self: ^$T) -> ^T where intrinsics.type_is_subtype_of(T, Object) { return msgSend(^T, self, "init") } +@(objc_type=Object, objc_name="copy") copy :: proc(self: ^Copying($T)) -> ^T where intrinsics.type_is_subtype_of(T, Object) { return msgSend(^T, self, "copy") }