#ifndef __GCC_GENINDEX_H
#define __GCC_GENINDEX_H
#ifdef HAVE_SYS_TIMES_H
# include <sys/times.h>
#endif
extern int flag_dump_symbols;
extern int flag_gen_index;
extern int flag_debug_gen_index;
extern int flag_gen_index_original;
extern int flag_gen_index_header;
extern int flag_suppress_builtin_indexing;
extern int flag_check_indexed_header_list;
extern char *index_header_list_filename;
extern int index_buffer_count;
int connect_to_socket PARAMS ((char *, unsigned));
int read_indexed_header_list PARAMS ((void));
void write_indexed_header_list PARAMS ((void));
struct indexed_header * add_index_header_name PARAMS ((char *));
struct indexed_header * add_index_header PARAMS ((char *, time_t));
void push_cur_index_filename PARAMS ((const char *));
void pop_cur_index_filename PARAMS ((void));
void add_dup_header_name PARAMS ((const char *, const char *));
void free_indexed_header_list PARAMS ((void));
int process_header_indexing PARAMS ((char *, int));
void update_header_status PARAMS ((struct indexed_header *, int, int));
void flush_index_buffer PARAMS ((void));
void print_indexed_header_list PARAMS ((void));
void gen_indexing_info PARAMS ((int, const char *, int));
void gen_indexing_header PARAMS ((char *));
void gen_indexing_footer PARAMS ((void));
void init_gen_indexing PARAMS ((void));
void finish_gen_indexing PARAMS ((void));
void set_index_lang PARAMS ((int));
void disable_gen_index PARAMS ((void));
typedef enum index_language_kind {
PB_INDEX_LANG_C,
PB_INDEX_LANG_CP,
PB_INDEX_LANG_OBJC,
PB_INDEX_LANG_OBJCP,
PB_INDEX_LANGUAGE_INVALID = 99
} index_language_kind;
enum {
PB_INDEX_UNKNOWN,
PB_INDEX_SEEN,
PB_INDEX_RECURSIVE,
PB_INDEX_DONE
};
enum {
PB_INDEX_BEGIN,
PB_INDEX_END
};
enum index_info {
INDEX_ERROR,
INDEX_ENUM,
INDEX_FILE_BEGIN,
INDEX_FILE_END,
INDEX_FILE_INCLUDE,
INDEX_FUNCTION_BEGIN,
INDEX_FUNCTION_END,
INDEX_FUNCTION_DECL,
INDEX_CONST_DECL,
INDEX_VAR_DECL,
INDEX_TYPE_DECL,
INDEX_PROTOCOL_BEGIN,
INDEX_PROTOCOL_END,
INDEX_PROTOCOL_INHERITANCE,
INDEX_CATEGORY_BEGIN,
INDEX_CATEGORY_END,
INDEX_CATEGORY_DECL,
INDEX_CATEGORY_DECL_END,
INDEX_CLASS_METHOD_BEGIN,
INDEX_CLASS_OPERATOR_BEGIN,
INDEX_CLASS_METHOD_END,
INDEX_CLASS_METHOD_DECL,
INDEX_CLASS_OPERATOR_DECL,
INDEX_INSTANCE_METHOD_BEGIN,
INDEX_INSTANCE_OPERATOR_BEGIN,
INDEX_INSTANCE_METHOD_END,
INDEX_INSTANCE_METHOD_DECL,
INDEX_INSTANCE_OPERATOR_DECL,
INDEX_MACRO,
INDEX_DATA_DECL,
INDEX_DATA_INHERITANCE,
INDEX_NAMESPACE_DECL,
INDEX_CONSTRUCTOR_BEGIN,
INDEX_CONSTRUCTOR_DECL,
INDEX_DESTRUCTOR_BEGIN,
INDEX_DESTRUCTOR_DECL,
INDEX_CLASS_DECL,
INDEX_CLASS_DECL_END,
INDEX_CLASS_BEGIN,
INDEX_CLASS_END,
INDEX_CLASS_INHERITANCE,
INDEX_UNION_BEGIN,
INDEX_UNION_END,
INDEX_RECORD_BEGIN,
INDEX_RECORD_END
};
#endif