Exemplo n.º 1
0
 def esegui(self, wm, simboli, agenda):
     '''
     Esegue la modifica di un attributo di un fatto
     '''
     '''chiamo il metodo base per il controllo dei parametri'''
     Azione.esegui(self, wm, simboli, agenda)
     
     '''risolvo idfatto'''
     vidfatto = self._idfatto
     if isinstance(vidfatto, Operando):
         vidfatto = vidfatto.valuta(simboli)
         
     '''risolvo template'''
     vtemplate = self._template
     if isinstance(vtemplate, Operando):
         vtemplate = vtemplate.valuta(simboli)
         
     '''risolvo attributi'''
     vattributi = self._attributi
     if isinstance(vattributi, Operando):
         vattributi = vattributi.valuta(simboli)
         
     '''tutto e' pronto per l'esecuzione'''
     assert isinstance(vattributi, dict), \
         "Atteso attributi di tipo dict dopo la valutazione, ottenuto: "+str(type(vattributi))
          
     wm.assert_fact( Fact(vidfatto, vattributi, vtemplate))
Exemplo n.º 2
0
 def esegui(self, wm, simboli, agenda):
     '''
     Esegue la modifica di un attributo di un fatto
     '''
     '''chiamo il metodo base per il controllo dei parametri'''
     Azione.esegui(self, wm, simboli, agenda)
     
     '''risolvo il reale valore del fatto se operando (simbolo quasi sicuramente)'''
     vfatto = self._fatto
     if isinstance(vfatto, Operando):
         vfatto = vfatto.valuta(simboli)
     
     '''risolvo il reale valore del attributo se operando'''
     vattributo = self._attributo
     if isinstance(vattributo, Operando):
         vattributo = vattributo.valuta(simboli)
         
     '''risolvo il reale valore del valore se operando'''
     vvalore = self._valore
     if isinstance(vvalore, Operando):
         vvalore = vvalore.valuta(simboli)
         
     '''tutto e' pronto per l'esecuzione'''
     assert isinstance(vfatto, Fact), \
         "Atteso Fatto dopo la valutazione, ottenuto: "+str(type(vfatto))
          
     vfatto[vattributo] = vvalore
Exemplo n.º 3
0
    def esegui(self, wm, simboli, agenda):
        '''
        Esegue la modifica di un attributo di un fatto
        '''
        '''chiamo il metodo base per il controllo dei parametri'''
        Azione.esegui(self, wm, simboli, agenda)
        
        '''risolvo messaggio'''
        vmessaggio = self._messaggio
        if isinstance(vmessaggio, Operando):
            vmessaggio = vmessaggio.valuta(simboli)
            
        assert isinstance(vmessaggio, "".__class__), \
            "Atteso messaggio di tipo string dopo la valutazione, ottenuto: "+str(type(vmessaggio))

        print vmessaggio
Exemplo n.º 4
0
 def esegui(self, wm, simboli, agenda):
     '''
     Esegue la modifica di un attributo di un fatto
     '''
     '''chiamo il metodo base per il controllo dei parametri'''
     Azione.esegui(self, wm, simboli, agenda)
     
     '''risolvo fatto'''
     vfatto = self._fatto
     if isinstance(vfatto, Operando):
         vfatto = vfatto.valuta(simboli)
         
     '''tutto e' pronto per l'esecuzione'''
     assert isinstance(vfatto, Fact), \
         "Atteso fatto di tipo Fact dopo la valutazione, ottenuto: "+str(type(vfatto))
          
     wm.retract_fact(vfatto)
Exemplo n.º 5
0
    def esegui(self, wm, simboli, agenda):
        '''
        Esegue la modifica di un attributo di un fatto
        '''
        '''chiamo il metodo base per il controllo dei parametri'''
        Azione.esegui(self, wm, simboli, agenda)
        
        '''risolvo regola'''
        vregola = self._regola
        if isinstance(vregola, Operando):
            vregola = vregola.valuta(simboli)

        '''risolvo turni'''
        vturni = self._turni
        if isinstance(vturni, Operando):
            vturni = vturni.valuta(simboli)
            
        assert isinstance(vregola, "".__class__), \
            "Atteso regola di tipo string dopo la valutazione, ottenuto: "+str(type(vregola))

        assert isinstance(vturni, int), \
            "Atteso turni di tipo int dopo la valutazione, ottenuto: "+str(type(vturni))

        '''tutto e' pronto per l'esecuzione'''