diff options
Diffstat (limited to 'src/mangling/context-int.h')
-rw-r--r-- | src/mangling/context-int.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/mangling/context-int.h b/src/mangling/context-int.h index d361ff7..e34842c 100644 --- a/src/mangling/context-int.h +++ b/src/mangling/context-int.h @@ -21,23 +21,34 @@ */ -#ifndef _FORMAT_MANGLING_CONTEXT_INT_H -#define _FORMAT_MANGLING_CONTEXT_INT_H +#ifndef _MANGLING_CONTEXT_INT_H +#define _MANGLING_CONTEXT_INT_H #include "context.h" +#include "../common/ibuf.h" + + /* Procède au décodage d'une chaîne de caractères. */ typedef bool (* demangle_fc) (GDemanglingContext *, const char *); +/* Décode une définition de routine. */ +typedef GBinRoutine * (* decode_routine_fc) (GDemanglingContext *); + +/* Décode une définition de type. */ +typedef GDataType * (* decode_type_fc) (GDemanglingContext *); + /* Contexte de décodage (instance) */ struct _GDemanglingContext { GObject parent; /* A laisser en premier */ + input_buffer buffer; /* Tampon de lecture */ + union { GObject *gobj; /* Utile pour le nettoyage ! */ @@ -55,8 +66,11 @@ struct _GDemanglingContextClass demangle_fc demangle_type; /* Décodage de type */ demangle_fc demangle_routine; /* Décodage de routine */ + decode_type_fc decode_type; /* Décodage de type */ + decode_routine_fc decode_routine; /* Décodage de routine */ + }; -#endif /* _FORMAT_MANGLING_CONTEXT_INT_H */ +#endif /* _MANGLING_CONTEXT_INT_H */ |