]> SALOME platform Git repositories - tools/eficas.git/commitdiff
Salome HOME
Integrated Noyau from Aster V6_main_20110421
authorRenaud Barate <renaud.barate@edf.fr>
Thu, 21 Apr 2011 08:11:16 +0000 (08:11 +0000)
committerRenaud Barate <renaud.barate@edf.fr>
Thu, 21 Apr 2011 08:11:16 +0000 (08:11 +0000)
Noyau/N_FACT.py
Noyau/N_types.py

index a7cb87088e9b113a0887e92b6782281c195f3d23..ef431a752133ce0b366462a96587f02ec18c64a6 100644 (file)
@@ -1,9 +1,9 @@
-#@ 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   
@@ -32,6 +32,7 @@ import N_ENTITE
 import N_MCFACT
 import N_MCLIST
 from N__F import _F
+from N_types import is_enum
 
 import N_OBJECT 
 
@@ -105,7 +106,7 @@ class FACT(N_ENTITE.ENTITE):
             - 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:
@@ -117,6 +118,11 @@ class FACT(N_ENTITE.ENTITE):
           # 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()
index be4e97266c8e68897a5eb5f3f8a3db390d83693f..8fd7305f1921c847a71ba0283d262588dd2a3e3e 100644 (file)
@@ -1,8 +1,8 @@
-#@ 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     
@@ -59,3 +59,11 @@ def is_assd(obj):
     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)
+