diff options
Diffstat (limited to 'src/glibext/generator-int.h')
| -rw-r--r-- | src/glibext/generator-int.h | 51 | 
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 */ | 
