summaryrefslogtreecommitdiff
path: root/src/glibext/generator-int.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/glibext/generator-int.h')
-rw-r--r--src/glibext/generator-int.h51
1 files changed, 28 insertions, 23 deletions
diff --git a/src/glibext/generator-int.h b/src/glibext/generator-int.h
index 6952f69..8b7e28d 100644
--- a/src/glibext/generator-int.h
+++ b/src/glibext/generator-int.h
@@ -1,8 +1,8 @@
/* Chrysalide - Outil d'analyse de fichiers binaires
- * linegen-int.h - définitions internes propres aux intermédiaires de génération de lignes
+ * generator-int.h - définitions internes propres aux intermédiaires de génération de lignes à partir de bribres de texte
*
- * Copyright (C) 2016-2018 Cyrille Bagard
+ * Copyright (C) 2016-2024 Cyrille Bagard
*
* This file is part of Chrysalide.
*
@@ -21,47 +21,52 @@
*/
-#ifndef _GLIBEXT_LINEGEN_INT_H
-#define _GLIBEXT_LINEGEN_INT_H
+#ifndef _GLIBEXT_GENERATOR_INT_H
+#define _GLIBEXT_GENERATOR_INT_H
-#include "linegen.h"
+#include "generator.h"
/* Indique le nombre de ligne prêtes à être générées. */
-typedef size_t (* linegen_count_lines_fc) (const GLineGenerator *);
+typedef size_t (* count_tokgen_lines_fc) (const GTokenGenerator *);
+
+/* Renseigne sur les propriétés liées à un générateur. */
+typedef BufferLineFlags (* get_tokgen_flags_fc) (const GTokenGenerator *, size_t, size_t);
+
+/* Imprime dans une ligne de rendu le contenu représenté. */
+typedef void (* populate_tokgen_line_fc) (const GTokenGenerator *, size_t, size_t, GBufferLine *, void *);
+
+#if 0
/* Retrouve l'emplacement correspondant à une position donnée. */
-typedef void (* linegen_compute_fc) (const GLineGenerator *, gint, size_t, size_t, GLineCursor **);
+typedef void (* compute_tokgen_fc) (const GTokenGenerator *, gint, size_t, size_t, GLineCursor **);
/* Détermine si le conteneur s'inscrit dans une plage donnée. */
-typedef int (* linegen_contain_fc) (const GLineGenerator *, size_t, size_t, const GLineCursor *);
+typedef int (* contain_tokgen_fc) (const GTokenGenerator *, size_t, size_t, const GLineCursor *);
-/* Renseigne sur les propriétés liées à un générateur. */
-typedef BufferLineFlags (* linegen_get_flags_fc) (const GLineGenerator *, size_t, size_t);
-
-/* Imprime dans une ligne de rendu le contenu représenté. */
-typedef void (* linegen_print_fc) (GLineGenerator *, GBufferLine *, size_t, size_t, const GBinContent *);
+#endif
/* Intermédiaire pour la génération de lignes (interface) */
-struct _GLineGeneratorIface
+struct _GTokenGeneratorInterface
{
GTypeInterface base_iface; /* A laisser en premier */
- linegen_count_lines_fc count; /* Décompte des lignes */
- linegen_compute_fc compute; /* Calcul d'emplacement */
- linegen_contain_fc contain; /* Inclusion de positions */
- linegen_get_flags_fc get_flags; /* Récupération des drapeaux */
- linegen_print_fc print; /* Impression d'une ligne */
+ count_tokgen_lines_fc count; /* Décompte des lignes */
+ get_tokgen_flags_fc get_flags; /* Récupération des drapeaux */
+ populate_tokgen_line_fc populate; /* Impression d'une ligne */
-};
+#if 0
+ compute_tokgen_fc compute; /* Calcul d'emplacement */
+ contain_tokgen_fc contain; /* Inclusion de positions */
-/* Redéfinition */
-typedef GLineGeneratorIface GLineGeneratorInterface;
+#endif
+
+};
-#endif /* _GLIBEXT_LINEGEN_INT_H */
+#endif /* _GLIBEXT_GENERATOR_INT_H */