xref: /openbsd/gnu/usr.bin/gcc/gcc/java/xref.h (revision c87b03e5)
1 /* Definitions for the cross reference backend xref.c
2    Copyright (C) 1999, 2000 Free Software Foundation, Inc.
3    Contributed by Alexandre Petit-Bianco (apbianco@cygnus.com)
4 
5 This file is part of GNU CC.
6 
7 GNU CC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 2, or (at your option)
10 any later version.
11 
12 GNU CC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 GNU General Public License for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with GNU CC; see the file COPYING.  If not, write to
19 the Free Software Foundation, 59 Temple Place - Suite 330,
20 Boston, MA 02111-1307, USA.
21 
22 Java and all Java-based marks are trademarks or registered trademarks
23 of Sun Microsystems, Inc. in the United States and other countries.
24 The Free Software Foundation is independent of Sun Microsystems, Inc.  */
25 
26 /* Exported functions. */
27 int xref_flag_value PARAMS ((const char *));
28 void expand_xref PARAMS ((tree));
29 void xref_set_data PARAMS ((int, void *));
30 void *xref_get_data PARAMS ((int));
31 void xref_set_current_fp PARAMS ((FILE *));
32 
33 /* flag_emit_xref range of possible values. */
34 
35 enum {
36   XREF_NONE = 0
37 };
38 
39 /* Lookup table to be used with the value of flag_emit_xref */
40 
41 typedef struct {
42   char *key;			         /* Activator in -fxref=<key>  */
43   void (*expand) PARAMS ((FILE *, tree)); /* Function to write xrefs out */
44   FILE *fp;			         /* fp to use during the call.  */
45   void *data;			         /* Placeholder for additional data */
46 } xref_flag_table;
47 
48 #define XREF_GET_DATA(FLAG, T) ((T)xref_get_data (FLAG))
49