summaryrefslogtreecommitdiff
path: root/src/arch/operand-int.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/operand-int.h')
-rw-r--r--src/arch/operand-int.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/arch/operand-int.h b/src/arch/operand-int.h
index a50ec73..ca5204c 100644
--- a/src/arch/operand-int.h
+++ b/src/arch/operand-int.h
@@ -44,6 +44,15 @@ typedef void (* operand_print_fc) (const GArchOperand *, GBufferLine *);
/* Construit un petit résumé concis de l'opérande. */
typedef char * (* operand_build_tooltip_fc) (const GArchOperand *, const GLoadedBinary *);
+/* Fournit une liste de candidats embarqués par un candidat. */
+typedef GArchOperand ** (* operand_list_inners_fc) (const GArchOperand *, size_t *);
+
+/* Met à jour une liste de candidats embarqués par un candidat. */
+typedef void (* operand_update_inners_fc) (GArchOperand *, GArchOperand **, size_t);
+
+/* Fournit l'empreinte d'un candidat à une centralisation. */
+typedef guint (* operand_hash_fc) (const GArchOperand *);
+
/* Charge un opérande depuis une mémoire tampon. */
typedef bool (* unserialize_operand_fc) (GArchOperand *, GAsmStorage *, GBinFormat *, packed_buffer_t *);
@@ -56,6 +65,8 @@ struct _GArchOperand
{
GObject parent; /* A laisser en premier */
+ bool read_only; /* Verrouillage du contenu */
+
};
@@ -71,6 +82,10 @@ struct _GArchOperandClass
operand_print_fc print; /* Texte humain équivalent */
operand_build_tooltip_fc build_tooltip; /* Construction de description */
+ operand_list_inners_fc list_inner; /* Récupération d'internes */
+ operand_update_inners_fc update_inner; /* Mise à jour des éléments */
+ operand_hash_fc hash; /* Prise d'empreinte */
+
unserialize_operand_fc unserialize; /* Chargement depuis un tampon */
serialize_operand_fc serialize; /* Conservation dans un tampon */