|
|
1.1 ! root 1: /* Encoding of types for Objective C. ! 2: Copyright (C) 1993 Free Software Foundation, Inc. ! 3: ! 4: Author: Kresten Krab Thorup ! 5: ! 6: This file is part of GNU CC. ! 7: ! 8: GNU CC is free software; you can redistribute it and/or modify ! 9: it under the terms of the GNU General Public License as published by ! 10: the Free Software Foundation; either version 2, or (at your option) ! 11: any later version. ! 12: ! 13: GNU CC is distributed in the hope that it will be useful, ! 14: but WITHOUT ANY WARRANTY; without even the implied warranty of ! 15: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ! 16: GNU General Public License for more details. ! 17: ! 18: You should have received a copy of the GNU General Public License ! 19: along with GNU CC; see the file COPYING. If not, write to ! 20: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ ! 21: ! 22: /* As a special exception, if you link this library with files ! 23: compiled with GCC to produce an executable, this does not cause ! 24: the resulting executable to be covered by the GNU General Public License. ! 25: This exception does not however invalidate any other reasons why ! 26: the executable file might be covered by the GNU General Public License. */ ! 27: ! 28: #ifndef __encoding_INCLUDE_GNU ! 29: #define __encoding_INCLUDE_GNU ! 30: ! 31: #include <ctype.h> ! 32: #include "objc/objc-api.h" ! 33: ! 34: #define _C_CONST 'r' ! 35: #define _C_IN 'n' ! 36: #define _C_INOUT 'N' ! 37: #define _C_OUT 'o' ! 38: #define _C_BYCOPY 'O' ! 39: #define _C_ONEWAY 'V' ! 40: ! 41: #define _F_CONST 0x01 ! 42: #define _F_IN 0x01 ! 43: #define _F_OUT 0x02 ! 44: #define _F_INOUT 0x03 ! 45: #define _F_BYCOPY 0x04 ! 46: #define _F_ONEWAY 0x08 ! 47: ! 48: ! 49: int objc_aligned_size (const char* type); ! 50: int objc_sizeof_type (const char* type); ! 51: int objc_alignof_type (const char* type); ! 52: int objc_aligned_size (const char* type); ! 53: int objc_promoted_size (const char* type); ! 54: const char* objc_skip_type_qualifiers (const char* type); ! 55: const char* objc_skip_typespec (const char* type); ! 56: const char* objc_skip_offset (const char* type); ! 57: const char* objc_skip_argspec (const char* type); ! 58: int method_get_number_of_arguments (struct objc_method*); ! 59: int method_get_size_of_arguments (struct objc_method*); ! 60: ! 61: char* method_get_first_argument (struct objc_method*, ! 62: arglist_t argframe, ! 63: const char** type); ! 64: char* method_get_next_argument (arglist_t argframe, ! 65: const char **type); ! 66: char* method_get_nth_argument (struct objc_method* m, ! 67: arglist_t argframe, ! 68: int arg, ! 69: const char **type); ! 70: ! 71: unsigned objc_get_type_qualifiers (const char* type); ! 72: ! 73: ! 74: #endif /* __encoding_INCLUDE_GNU */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.