diff options
Diffstat (limited to 'src/analysis/type.c')
-rw-r--r-- | src/analysis/type.c | 33 |
1 files changed, 30 insertions, 3 deletions
diff --git a/src/analysis/type.c b/src/analysis/type.c index 5bcb0e2..f19d846 100644 --- a/src/analysis/type.c +++ b/src/analysis/type.c @@ -72,8 +72,6 @@ static void g_data_type_class_init(GDataTypeClass *klass) object->dispose = (GObjectFinalizeFunc/* ! */)g_data_type_dispose; object->finalize = (GObjectFinalizeFunc)g_data_type_finalize; - klass->handle_ns = true; - } @@ -200,7 +198,7 @@ char *g_data_type_to_string(const GDataType *type, bool include) result = class->to_string(type, include); - if (include && type->namespace != NULL && class->handle_ns) + if (include && type->namespace != NULL && g_data_type_handle_namespaces(type)) { namespace = g_data_type_to_string(type->namespace, true); @@ -369,6 +367,35 @@ TypeQualifier g_data_type_get_qualifiers(const GDataType *type) * * * Paramètres : type = type à consulter. * * * +* Description : Indique si le type assure une gestion des espaces de noms. * +* * +* Retour : Bilan de la consultation. * +* * +* Remarques : - * +* * +******************************************************************************/ + +bool g_data_type_handle_namespaces(const GDataType *type) +{ + bool result; /* Bilan à retourner */ + GDataTypeClass *class; /* Classe du type */ + + class = G_DATA_TYPE_GET_CLASS(type); + + if (class->handle_ns != NULL) + result = class->handle_ns(type); + else + result = true; + + return result; + +} + + +/****************************************************************************** +* * +* Paramètres : type = type à consulter. * +* * * Description : Indique si le type est un pointeur. * * * * Retour : Bilan de la consultation. * |