diff options
author | Cyrille Bagard <nocbos@gmail.com> | 2021-02-23 23:34:25 (GMT) |
---|---|---|
committer | Cyrille Bagard <nocbos@gmail.com> | 2021-02-23 23:36:46 (GMT) |
commit | a79d209385fca4e74a6a85b2386be71ec23057bb (patch) | |
tree | a2f302fde6560c8e220abd738e50a455be936c88 /src/analysis/type-int.h | |
parent | dc3be188b42a90404d0655c250e6697f5a55b862 (diff) |
Prepare mechanisms to load and store data types.
Diffstat (limited to 'src/analysis/type-int.h')
-rw-r--r-- | src/analysis/type-int.h | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/src/analysis/type-int.h b/src/analysis/type-int.h index 2c70c7b..e14d209 100644 --- a/src/analysis/type-int.h +++ b/src/analysis/type-int.h @@ -28,6 +28,15 @@ #include "type.h" +#include "storage/serialize-int.h" + + + +/* Charge un objet depuis une mémoire tampon. */ +typedef bool (* type_load_fc) (GDataType *, GObjectStorage *, packed_buffer *); + +/* Sauvegarde un objet dans une mémoire tampon. */ +typedef bool (* type_store_fc) (const GDataType *, GObjectStorage *, packed_buffer *); /* Calcule une empreinte pour un type de données. */ typedef guint (* type_hash_fc) (const GDataType *); @@ -54,11 +63,11 @@ struct _GDataType { GObject parent; /* A laisser en premier */ + TypeQualifier qualifiers; /* Eventuels qualificatifs */ + GDataType *namespace; /* Espace de noms / classe */ char *ns_sep; /* Séparateur d'éléments */ - TypeQualifier qualifiers; /* Eventuels qualificatifs */ - }; /* Description de type quelconque (classe) */ @@ -66,6 +75,9 @@ struct _GDataTypeClass { GObjectClass parent; /* A laisser en premier */ + type_load_fc load; /* Chargement */ + type_store_fc store; /* Enregistrement */ + type_hash_fc hash; /* Prise d'empreinte */ type_dup_fc dup; /* Copie d'instance existante */ type_to_string_fc to_string; /* Conversion au format texte */ |