Annotation of GNUtools/cc/objc/Protocol.h, revision 1.1.1.1

1.1       root        1: /* Declare the class Protocol for Objective C programs.
                      2:    Copyright (C) 1993 Free Software Foundation, Inc.
                      3: 
                      4: This file is part of GNU CC.
                      5: 
                      6: GNU CC is free software; you can redistribute it and/or modify
                      7: it under the terms of the GNU General Public License as published by
                      8: the Free Software Foundation; either version 2, or (at your option)
                      9: any later version.
                     10: 
                     11: GNU CC is distributed in the hope that it will be useful,
                     12: but WITHOUT ANY WARRANTY; without even the implied warranty of
                     13: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     14: GNU General Public License for more details.
                     15: 
                     16: You should have received a copy of the GNU General Public License
                     17: along with GNU CC; see the file COPYING.  If not, write to
                     18: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
                     19: 
                     20: /* As a special exception, if you link this library with files
                     21:    compiled with GCC to produce an executable, this does not cause
                     22:    the resulting executable to be covered by the GNU General Public License.
                     23:    This exception does not however invalidate any other reasons why
                     24:    the executable file might be covered by the GNU General Public License.  */
                     25: 
                     26: #ifndef __Protocol_INCLUDE_GNU
                     27: #define __Protocol_INCLUDE_GNU
                     28: 
                     29: #include "objc/Object.h"
                     30: 
                     31: @interface Protocol : Object
                     32: {
                     33: @private
                     34:         char *protocol_name;
                     35:         struct objc_protocol_list *protocol_list;
                     36:         struct objc_method_description_list *instance_methods, *class_methods; 
                     37: }
                     38: 
                     39: /* Obtaining attributes intrinsic to the protocol */
                     40: 
                     41: - (const char *)name;
                     42: 
                     43: /* Testing protocol conformance */
                     44: 
                     45: - (BOOL) conformsTo: (Protocol *)aProtocolObject;
                     46: 
                     47: /* Looking up information specific to a protocol */
                     48: 
                     49: - (struct objc_method_description *) descriptionForInstanceMethod:(SEL)aSel;
                     50: - (struct objc_method_description *) descriptionForClassMethod:(SEL)aSel;
                     51: 
                     52: @end
                     53: 
                     54: 
                     55: 
                     56: 
                     57: #endif __Protocol_INCLUDE_GNU

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.