diff options
Diffstat (limited to 'giscanner/sourcescanner.h')
-rw-r--r-- | giscanner/sourcescanner.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/giscanner/sourcescanner.h b/giscanner/sourcescanner.h index df16cf6a..9e371312 100644 --- a/giscanner/sourcescanner.h +++ b/giscanner/sourcescanner.h @@ -25,6 +25,7 @@ #include <glib.h> #include <stdio.h> +#include <gio/gio.h> G_BEGIN_DECLS @@ -105,30 +106,33 @@ struct _GISourceComment struct _GISourceScanner { - char *current_filename; + GFile *current_file; gboolean macro_scan; gboolean private; /* set by gtk-doc comment <private>/<public> */ gboolean flags; /* set by gtk-doc comment <flags> */ GSList *symbols; - GList *filenames; + GHashTable *files; GSList *comments; /* _GIComment */ GHashTable *typedef_table; - GHashTable *struct_or_union_or_enum_table; + gboolean skipping; + GQueue conditionals; }; struct _GISourceSymbol { int ref_count; GISourceSymbolType type; - int id; char *ident; GISourceType *base_type; gboolean const_int_set; gboolean private; gint64 const_int; /* 64-bit we can handle signed and unsigned 32-bit values */ + gboolean const_int_is_unsigned; char *const_string; gboolean const_double_set; double const_double; + gboolean const_boolean_set; + int const_boolean; char *source_filename; int line; }; @@ -158,14 +162,17 @@ GSList * gi_source_scanner_get_symbols (GISourceScanner *scanne GSList * gi_source_scanner_get_comments (GISourceScanner *scanner); void gi_source_scanner_free (GISourceScanner *scanner); -GISourceSymbol * gi_source_symbol_new (GISourceSymbolType type, const gchar *filename, int line); +GISourceSymbol * gi_source_symbol_new (GISourceSymbolType type, GFile *file, int line); gboolean gi_source_symbol_get_const_boolean (GISourceSymbol *symbol); GISourceSymbol * gi_source_symbol_ref (GISourceSymbol *symbol); void gi_source_symbol_unref (GISourceSymbol *symbol); +GISourceSymbol * gi_source_symbol_copy (GISourceSymbol *symbol); /* Private */ void gi_source_scanner_add_symbol (GISourceScanner *scanner, GISourceSymbol *symbol); +void gi_source_scanner_take_comment (GISourceScanner *scanner, + GISourceComment *comment); gboolean gi_source_scanner_is_typedef (GISourceScanner *scanner, const char *name); void gi_source_symbol_merge_type (GISourceSymbol *symbol, |