+ """
+ """
+ nature = "MCFACT"
+
+ def __init__(self, val, definition, nom, parent,dicoPyxbDeConstruction):
+ """
+ Attributs :
+ - val : valeur du mot clé simple
+ - definition
+ - nom
+ - parent
+ """
+ #print ('MCFACT', self, val, definition, nom, parent, dicoPyxbDeConstruction)
+ #import traceback
+ #traceback.print_stack()
+ self.dicoPyxbDeConstruction=dicoPyxbDeConstruction
+ if self.dicoPyxbDeConstruction :
+ self.objPyxbDeConstruction=self.dicoPyxbDeConstruction['objEnPyxb']
+ del self.dicoPyxbDeConstruction['objEnPyxb']
+ else :
+ self.objPyxbDeConstruction=None
+ self.definition = definition
+ self.nom = nom
+ self.val = val
+ self.parent = parent
+ self.estIdentifiePar=None
+ self.valeur = self.getValeurEffective(self.val)
+ if parent:
+ self.jdc = self.parent.jdc
+ self.niveau = self.parent.niveau
+ self.etape = self.parent.etape
+ else:
+ # Le mot cle a été créé sans parent
+ self.jdc = None
+ self.niveau = None
+ self.etape = None
+ self.mcListe = self.buildMc()
+
+ def getValeurEffective(self, val):
+ """
+ Retourne la valeur effective du mot-clé en fonction
+ de la valeur donnée. Defaut si val == None
+ """
+ if (val is None and hasattr(self.definition, 'defaut')):
+ return self.definition.defaut
+ else:
+ return val
+
+ def getValeur(self):
+ """
+ Retourne la "valeur" d'un mot-clé facteur qui est l'objet lui-meme.
+ Cette valeur est utilisée lors de la création d'un contexte
+ d'évaluation d'expressions à l'aide d'un interpréteur Python
+ """
+ return self