-#@ MODIF N_FACT Noyau DATE 07/09/2009 AUTEUR COURTOIS M.COURTOIS
+#@ MODIF N_FACT Noyau DATE 22/03/2011 AUTEUR COURTOIS M.COURTOIS
# -*- coding: iso-8859-1 -*-
# RESPONSABLE COURTOIS M.COURTOIS
# CONFIGURATION MANAGEMENT OF EDF VERSION
# ======================================================================
-# COPYRIGHT (C) 1991 - 2002 EDF R&D WWW.CODE-ASTER.ORG
+# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG
# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
import N_MCFACT
import N_MCLIST
from N__F import _F
+from N_types import is_enum
import N_OBJECT
- Si defaut != None, on utilise cette valeur pour calculer la valeur
par defaut du mot cle facteur
"""
- if val == None:
+ if val is None:
if self.defaut == None:
val={}
elif type(self.defaut) == types.TupleType:
# On ne devrait jamais passer par la
print "On ne devrait jamais passer par la"
return None
+ elif is_enum(val) and len(val) == 0 and self.statut == 'o':
+ # On est dans le cas où le mcfact est présent mais est une liste/tuple
+ # vide. Il est obligatoire donc on l'initialise. Les règles, mots-clés
+ # obligatoires diront si un mcfact vide est accepté.
+ val = {}
# On cree toujours une liste de mcfact
l=self.list_instance()
-#@ MODIF N_types Noyau DATE 11/05/2010 AUTEUR COURTOIS M.COURTOIS
+#@ MODIF N_types Noyau DATE 14/03/2011 AUTEUR COURTOIS M.COURTOIS
# -*- coding: iso-8859-1 -*-
# CONFIGURATION MANAGEMENT OF EDF VERSION
# ======================================================================
-# COPYRIGHT (C) 1991 - 2010 EDF R&D WWW.CODE-ASTER.ORG
+# COPYRIGHT (C) 1991 - 2011 EDF R&D WWW.CODE-ASTER.ORG
# THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
# IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
# THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
return isinstance(obj, ASSD)
+def force_list(obj):
+ """Retourne `obj` si c'est une liste ou un tuple,
+ sinon retourne [obj,] (en tant que list).
+ """
+ if not is_enum(obj):
+ obj = [obj,]
+ return list(obj)
+