diff options
Diffstat (limited to 'src/decomp/instruction.h')
| -rw-r--r-- | src/decomp/instruction.h | 10 | 
1 files changed, 6 insertions, 4 deletions
diff --git a/src/decomp/instruction.h b/src/decomp/instruction.h index ed8090d..3c8657b 100644 --- a/src/decomp/instruction.h +++ b/src/decomp/instruction.h @@ -50,20 +50,22 @@ typedef struct _GDecInstructionClass GDecInstructionClass;  /* Position au cours d'une visite */  typedef enum _DecInstrVisitFlags  { -    DVF_ENTER,                              /* Entrée dans une instruction */ -    DVF_EXIT                                /* Sortie d'une instruction    */ +    DVF_ENTER   = (1 << 0),                 /* Entrée dans une instruction */ +    DVF_EXIT    = (1 << 1)                  /* Sortie d'une instruction    */  } DecInstrVisitFlags;  /* Rappel à chaque instruction décompilée visitée */ -typedef bool (* dec_instr_visitor_cb) (GDecInstruction *, DecInstrVisitFlags, void *); +typedef bool (* dec_instr_visitor_cb) (GDecInstruction *, GDecInstruction *, DecInstrVisitFlags, void *);  /* Indique le type défini pour une instruction décompilée. */  GType g_dec_instruction_get_type(void);  /* Visite un ensemble hiérarchique d'instructions décompilées. */ -bool g_dec_instruction_visit(GDecInstruction *, dec_instr_visitor_cb, DecInstrVisitFlags, void *); +bool _g_dec_instruction_visit(GDecInstruction *, GDecInstruction *, dec_instr_visitor_cb, DecInstrVisitFlags, void *); + +#define g_dec_instruction_visit(instr, callback, flags, data) _g_dec_instruction_visit(instr, NULL, callback, flags, data)  /* Remplace une instruction décompilée par une autre. */  bool g_dec_instruction_replace(GDecInstruction *, GDecInstruction *, GDecInstruction *);  | 
