OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-dev/] [or1k-gcc/] [gcc/] [objc/] [objc-encoding.h] - Blame information for rev 768

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 717 jeremybenn
/* Routines dealing with ObjC encoding of types
2
   Copyright (C) 1992, 1993, 1994, 1995, 1997, 1998, 1999, 2000, 2001,
3
   2002, 2003, 2004, 2005, 2007, 2008, 2009, 2010, 2011
4
   Free Software Foundation, Inc.
5
 
6
This file is part of GCC.
7
 
8
GCC 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 3, or (at your option)
11
any later version.
12
 
13
GCC 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 GCC; see the file COPYING3.  If not see
20
<http://www.gnu.org/licenses/>.  */
21
 
22
#ifndef GCC_OBJC_ENCODING_H
23
#define GCC_OBJC_ENCODING_H
24
 
25
/* This is used to initialize the obstacks used by encoding.  It
26
   should be called before any encoding function is used.  It is
27
   usually done in objc_init().  */
28
extern void objc_encoding_init (void);
29
 
30
/* Encode a method prototype.  The format is described in
31
   gcc/doc/objc.texi, section 'Method signatures'.  */
32
extern tree encode_method_prototype (tree method_decl);
33
 
34
/* This is used to implement @encode().  See gcc/doc/objc.texi,
35
   section '@encode'.  */
36
extern tree objc_build_encode_expr (tree type);
37
 
38
/* (Decide if these can ever be validly changed.)  */
39
#define OBJC_ENCODE_INLINE_DEFS         0
40
#define OBJC_ENCODE_DONT_INLINE_DEFS    1
41
 
42
/* Encode the attributes of a property.  */
43
extern tree objc_v2_encode_prop_attr (tree property);
44
 
45
/* Encode the type of a field.  Return an identifier with the type
46
   encoding for the field.  The type encoding is a null-terminated
47
   string.  */
48
extern tree encode_field_decl (tree field_decl);
49
 
50
/* Tells "encode_pointer/encode_aggregate" whether we are generating
51
   type descriptors for instance variables (as opposed to methods).
52
   Type descriptors for instance variables contain more information
53
   than methods (for static typing and embedded structures).
54
 
55
   TODO: Replace this global variable with an argument that is passed
56
   to the various encode() functions.
57
 
58
   TODO: Change it to a 'bool'.  */
59
extern int generating_instance_variables;
60
 
61
#endif /* GCC_OBJC_ENCODING_H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.