Object Constraint Language: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 65:
 
Nelle espressioni per le postcondizioni si possono usare alcuni simboli speciali dedicati. La parola chiave <code>result</code> indica il valore tornato dall'operazione. Il simbolo <code>@pre</code>, applicato al nome di un attributo, si riferisce al valore che l'attributo aveva ''prima'' che fosse eseguita l'operazione.
 
<!-- 16 -->
===Regole di derivazione===
Un'espressione OCL può essere usata anche per descrivere il valore di un attributo derivato di una classe. Per esempio, le seguenti regole specificano chi sono rispettivamente i ''suoceri'' e i ''consuoceri'' di una persona:
 
:<code><b>context</b> Persona::suoceri:Set(Persona) <b>derive:</b><br></code>
:<code>coniuge.genitori</code>
 
:<code><b>context</b> Persona::consuoceri:Set(Persona) <b>derive:</b><br></code>
:<code>figli.coniuge->asSet().genitori->asSet()</code>
 
===Valori iniziali di attributi===
Un'espressione OCL può essere usata anche per descrivere il valore di un attributo derivato di una classe, o il valore ritornato da una operazione:
 
:<code><b>context</b> Persona::età:Integer <b>init:</b><br></code>
:<code>0</code>
 
:<code><b>context</b> Persona::nome():String <b>init:</b><br></code>
:<code>if sesso="m"
 
 
:Integer<b>init:</b><br></code>
:<code>0</code>
 
===Informazioni aggiuntive===