X-Git-Url: https://git.saurik.com/apple/objc4.git/blobdiff_plain/41c8faa53824a4e6dd6cf2de319a92a0e535adc2..7c0e6487d7b67b6bf6c632300ee4b74e8950b051:/runtime/Protocol.h diff --git a/runtime/Protocol.h b/runtime/Protocol.h index 2c66904..5b1c56e 100644 --- a/runtime/Protocol.h +++ b/runtime/Protocol.h @@ -1,23 +1,22 @@ /* - * Copyright (c) 1999 Apple Computer, Inc. All rights reserved. - * + * Copyright (c) 1999-2003, 2006-2007 Apple Inc. All Rights Reserved. + * * @APPLE_LICENSE_HEADER_START@ * - * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights - * Reserved. This file contains Original Code and/or Modifications of - * Original Code as defined in and that are subject to the Apple Public - * Source License Version 1.1 (the "License"). You may not use this file - * except in compliance with the License. Please obtain a copy of the - * License at http://www.apple.com/publicsource and read it before using - * this file. + * This file contains Original Code and/or Modifications of Original Code + * as defined in and that are subject to the Apple Public Source License + * Version 2.0 (the 'License'). You may not use this file except in + * compliance with the License. Please obtain a copy of the License at + * http://www.opensource.apple.com/apsl/ and read it before using this + * file. * * The Original Code and all software distributed under the License are - * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER + * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE OR NON- INFRINGEMENT. Please see the - * License for the specific language governing rights and limitations - * under the License. + * FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. + * Please see the License for the specific language governing rights and + * limitations under the License. * * @APPLE_LICENSE_HEADER_END@ */ @@ -31,35 +30,29 @@ #import -struct objc_method_description { - SEL name; - char *types; -}; -struct objc_method_description_list { - int count; - struct objc_method_description list[1]; -}; +/* Warning: All of these methods will disappear in 64-bit. */ @interface Protocol : Object { @private - char *protocol_name; - struct objc_protocol_list *protocol_list; - struct objc_method_description_list *instance_methods, *class_methods; + char *protocol_name OBJC2_UNAVAILABLE; + struct objc_protocol_list *protocol_list OBJC2_UNAVAILABLE; + struct objc_method_description_list *instance_methods OBJC2_UNAVAILABLE; + struct objc_method_description_list *class_methods OBJC2_UNAVAILABLE; } /* Obtaining attributes intrinsic to the protocol */ -- (const char *)name; +- (const char *)name OBJC2_UNAVAILABLE; /* Testing protocol conformance */ -- (BOOL) conformsTo: (Protocol *)aProtocolObject; +- (BOOL) conformsTo: (Protocol *)aProtocolObject OBJC2_UNAVAILABLE; /* Looking up information specific to a protocol */ -- (struct objc_method_description *) descriptionForInstanceMethod:(SEL)aSel; -- (struct objc_method_description *) descriptionForClassMethod:(SEL)aSel; +- (struct objc_method_description *) descriptionForInstanceMethod:(SEL)aSel DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER; +- (struct objc_method_description *) descriptionForClassMethod:(SEL)aSel DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER; @end