|
Packit |
4a5d52 |
/**************************************************************************
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
util.h
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
Copyright (C) 1998, 1999 Andrew T. Veliath
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
This library is free software; you can redistribute it and/or
|
|
Packit |
4a5d52 |
modify it under the terms of the GNU Library General Public
|
|
Packit |
4a5d52 |
License as published by the Free Software Foundation; either
|
|
Packit |
4a5d52 |
version 2 of the License, or (at your option) any later version.
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
This library is distributed in the hope that it will be useful,
|
|
Packit |
4a5d52 |
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
4a5d52 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit |
4a5d52 |
Library General Public License for more details.
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
You should have received a copy of the GNU Library General Public
|
|
Packit |
4a5d52 |
License along with this library; if not, write to the Free
|
|
Packit |
4a5d52 |
Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
$Id$
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
***************************************************************************/
|
|
Packit |
4a5d52 |
#ifndef __UTIL_H
|
|
Packit |
4a5d52 |
#define __UTIL_H
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
#if defined(HAVE_STDDEF_H)
|
|
Packit |
4a5d52 |
# include <stddef.h>
|
|
Packit |
4a5d52 |
#endif
|
|
Packit |
4a5d52 |
#if defined(HAVE_WCHAR_H)
|
|
Packit |
4a5d52 |
# include <wchar.h>
|
|
Packit |
4a5d52 |
#elif defined(HAVE_WCSTR_H)
|
|
Packit |
4a5d52 |
# include <wcstr.h>
|
|
Packit |
4a5d52 |
#endif
|
|
Packit |
4a5d52 |
#include <glib.h>
|
|
Packit |
4a5d52 |
#include <libIDL/IDL.h>
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
/* Internal parse flags */
|
|
Packit |
4a5d52 |
#define IDLFP_PROPERTIES (1UL << 0)
|
|
Packit |
4a5d52 |
#define IDLFP_NATIVE (1UL << 1)
|
|
Packit |
4a5d52 |
#define IDLFP_IN_INCLUDES (1UL << 2)
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
typedef struct {
|
|
Packit |
4a5d52 |
unsigned long flags;
|
|
Packit |
4a5d52 |
char* name;
|
|
Packit |
4a5d52 |
int seenCnt;
|
|
Packit |
4a5d52 |
} IDL_fileinfo;
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
extern void yyerror (const char *s);
|
|
Packit |
4a5d52 |
extern void yyerrorl (const char *s, int ofs);
|
|
Packit |
4a5d52 |
extern void yywarning (int level, const char *s);
|
|
Packit |
4a5d52 |
extern void yywarningl (int level, const char *s, int ofs);
|
|
Packit |
4a5d52 |
extern void yyerrorv (const char *fmt, ...)
|
|
Packit |
4a5d52 |
G_GNUC_PRINTF (1, 2);
|
|
Packit |
4a5d52 |
extern void yyerrorlv (const char *fmt, int ofs, ...)
|
|
Packit |
4a5d52 |
G_GNUC_PRINTF (1, 3);
|
|
Packit |
4a5d52 |
extern void yywarningv (int level, const char *fmt, ...)
|
|
Packit |
4a5d52 |
G_GNUC_PRINTF (2, 3);
|
|
Packit |
4a5d52 |
extern void yywarninglv (int level, const char *fmt, int ofs, ...)
|
|
Packit |
4a5d52 |
G_GNUC_PRINTF (2, 4);
|
|
Packit |
4a5d52 |
extern void yyerrornv (IDL_tree p, const char *fmt, ...)
|
|
Packit |
4a5d52 |
G_GNUC_PRINTF (2, 3);
|
|
Packit |
4a5d52 |
extern void yywarningnv (IDL_tree p, int level, const char *fmt, ...)
|
|
Packit |
4a5d52 |
G_GNUC_PRINTF (3, 4);
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
extern guint IDL_strcase_hash (gconstpointer v);
|
|
Packit |
4a5d52 |
extern gint IDL_strcase_equal (gconstpointer a, gconstpointer b);
|
|
Packit |
4a5d52 |
extern gint IDL_strcase_cmp (gconstpointer a, gconstpointer b);
|
|
Packit |
4a5d52 |
extern guint IDL_ident_hash (gconstpointer v);
|
|
Packit |
4a5d52 |
extern gint IDL_ident_equal (gconstpointer a, gconstpointer b);
|
|
Packit |
4a5d52 |
extern gint IDL_ident_cmp (gconstpointer a, gconstpointer b);
|
|
Packit |
4a5d52 |
extern int IDL_ns_check_for_ambiguous_inheritance
|
|
Packit |
4a5d52 |
(IDL_tree interface_ident,
|
|
Packit |
4a5d52 |
IDL_tree p);
|
|
Packit |
4a5d52 |
extern void IDL_tree_process_forward_dcls (IDL_tree *p, IDL_ns ns);
|
|
Packit |
4a5d52 |
extern void IDL_tree_remove_empty_modules (IDL_tree *p, IDL_ns ns);
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
extern void __IDL_free_properties (GHashTable *table);
|
|
Packit |
4a5d52 |
extern void __IDL_assign_up_node (IDL_tree up, IDL_tree node);
|
|
Packit |
4a5d52 |
extern void __IDL_assign_location (IDL_tree node, IDL_tree from_node);
|
|
Packit |
4a5d52 |
extern void __IDL_assign_this_location (IDL_tree node, char *filename, int line);
|
|
Packit |
4a5d52 |
extern void __IDL_parser_reset (void);
|
|
Packit |
4a5d52 |
extern void __IDL_do_pragma (const char *s);
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
extern void __IDL_lex_init (void);
|
|
Packit |
4a5d52 |
extern void __IDL_lex_cleanup (void);
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
#ifndef HAVE_CPP_PIPE_STDIN
|
|
Packit |
4a5d52 |
extern const char * __IDL_tmp_filename;
|
|
Packit |
4a5d52 |
#endif
|
|
Packit |
4a5d52 |
extern const char * __IDL_real_filename;
|
|
Packit |
4a5d52 |
extern char * __IDL_cur_filename;
|
|
Packit |
4a5d52 |
extern int __IDL_cur_line;
|
|
Packit |
4a5d52 |
extern GHashTable * __IDL_filename_hash;
|
|
Packit |
4a5d52 |
extern IDL_fileinfo * __IDL_cur_fileinfo;
|
|
Packit |
4a5d52 |
extern int __IDL_prev_token_line;
|
|
Packit |
4a5d52 |
extern int __IDL_cur_token_line;
|
|
Packit |
4a5d52 |
extern GHashTable * __IDL_structunion_ht;
|
|
Packit |
4a5d52 |
extern int __IDL_inhibits;
|
|
Packit |
4a5d52 |
extern int __IDL_typecodes_as_tok;
|
|
Packit |
4a5d52 |
extern int __IDL_pidl;
|
|
Packit |
4a5d52 |
extern IDL_tree __IDL_root;
|
|
Packit |
4a5d52 |
extern IDL_ns __IDL_root_ns;
|
|
Packit |
4a5d52 |
extern int __IDL_is_okay;
|
|
Packit |
4a5d52 |
extern int __IDL_is_parsing;
|
|
Packit |
4a5d52 |
extern unsigned long __IDL_flags;
|
|
Packit |
4a5d52 |
extern unsigned long __IDL_flagsi;
|
|
Packit |
4a5d52 |
extern gpointer __IDL_inputcb_user_data;
|
|
Packit |
4a5d52 |
extern IDL_input_callback __IDL_inputcb;
|
|
Packit |
4a5d52 |
extern GSList * __IDL_new_ident_comments;
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
|
|
Packit |
4a5d52 |
#endif /* __UTIL_H */
|