diff options
Diffstat (limited to 'src/analysis/variable.h')
-rw-r--r-- | src/analysis/variable.h | 47 |
1 files changed, 46 insertions, 1 deletions
diff --git a/src/analysis/variable.h b/src/analysis/variable.h index f2bbb87..ab5a037 100644 --- a/src/analysis/variable.h +++ b/src/analysis/variable.h @@ -29,6 +29,46 @@ #include <glib-object.h> +#include "type.h" + + + +/* ------------------- ASSOCIATION D'UN TYPE ET D'UNE DESIGNATION ------------------- */ + + +#define G_TYPE_BIN_VARIABLE g_binary_variable_get_type() +#define G_BINARY_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), g_binary_variable_get_type(), GBinVariable)) +#define G_IS_BIN_VARIABLE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), g_binary_variable_get_type())) +#define G_BINARY_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), G_TYPE_BIN_VARIABLE, GBinVariableClass)) +#define G_IS_BIN_VARIABLE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), G_TYPE_BIN_VARIABLE)) +#define G_BINARY_VARIABLE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), G_TYPE_BIN_VARIABLE, GBinVariableClass)) + + +/* Base de variable (instance) */ +typedef struct _GBinVariable GBinVariable; + +/* Base de variable (classe) */ +typedef struct _GBinVariableClass GBinVariableClass; + + +/* Indique le type défini pour une base de variable. */ +GType g_binary_variable_get_type(void); + +/* Crée une représentation de variable de type donné. */ +GBinVariable *g_binary_variable_new(GOpenidaType *); + + + + +/* Décrit la variable donnée sous forme de caractères. */ +char *g_binary_variable_to_string(const GBinVariable *); + + + + + + + /* -------------------- BASE DE VARIABLES OU VARIABLES INCONNUES -------------------- */ @@ -79,6 +119,7 @@ typedef struct _variable variable; /* Liste des types de base existants */ +#if 0 typedef enum _BaseType { BTP_VOID, /* void */ @@ -111,7 +152,7 @@ typedef enum _BaseType BTP_OTHER /* Extension utilisateur */ } BaseType; - +#endif /* Variable repésentant un argument ou un type de retour */ @@ -144,6 +185,7 @@ typedef struct _complex_variable complex_variable; /* Type de ces variables */ +#if 0 typedef enum _ClassEnumType { CET_UNKNOWN, /* Statut inconnu */ @@ -152,6 +194,7 @@ typedef enum _ClassEnumType CET_CLASS /* Classe */ } ClassEnumType; +#endif /* Représentation des classes et des énumérations */ @@ -167,6 +210,7 @@ complex_variable *create_class_enum_var(char *); /* Cas d'encapsulation possibles */ +#if 0 typedef enum _EncapsulationType { ECT_POINTER, /* Pointeur */ @@ -176,6 +220,7 @@ typedef enum _EncapsulationType ECT_IMAGINARY /* Imaginaire (C 2000) */ } EncapsulationType; +#endif /* Représentation des variables dérivées */ |