| |
Angenommene Spezifikation UML Ocl 2,0 57 Kontextbetrieb def: hasMatchingSignature(paramTypes: Sequence(Classifier)): Boolesch = -- prüfen Sie, ob der OPBetrieb eine Unterzeichnung hat, die die gegebenen Parameterlisten zusammenbringt = lassen Sie sigParamTypes: Sequence(Classifier) = self.allAttributes.type innen ( (sigParamTypes->size() = paramTypes->size()) und (Set{1..paramTypes->size()}->forAll (i| paramTypes->at (i).conformsTo (sigParamTypes->at (i)) ) ) ) Parameter Die BetriebsasAttributeresultate in einem Attribut, das den gleichen Namen, Art, etc. als der Parameter hat. Kontext Parameter::asAttribute(): Attribut vor: -- keine Pfosten: result.name = self.name Pfosten: result.type = self.type Pfosten: result.multiplicity = 1 Pfosten: result.targetscope = ScopeKind::instance Pfosten: result.ownerscope = ScopeKind::instance Pfosten: result.ordering = OrderingKind::unordered Pfosten: result.visibility = VisibilityKind::private Pfosten: result.stereotype.name = ' OclHelper ' Ein zusätzlicher Kategorienbetrieb wird Parameter hinzugefügt, um einen Parameter zurückzubringen. Kontext Parameter::make(n: Zeichenkette, c: Klassifikator, k: ParameterDirectionKind):Parameter Pfosten: result.name = n Pfosten: result.kind = k Pfosten: result.type = c Pfosten: result.stereotype.name = ' OclHelper ' Signal Ein zusätzlicher Betrieb wird Signal hinzugefügt, das überprüft, ob seine Unterschrift mit einer Reihenfolge von Clasifiers zusammenpaßt. Merken Sie, daß, wenn sie das Gleiche die Parameter des Signals bilden, seine Attribute sind. Kontextsignal def: hasMatchingSignature(paramTypes: Sequence(Classifier)): Boolesch = -- prüfen Sie, ob Signal eine Unterzeichnung hat, die die gegebenen Parameterlisten zusammenbringt = lassen Sie opParamTypes: Sequence(Classifier) = self.parameter->select (p|p.kind < > ParameterDirectionKind::return).type innen ( (opParamTypes->size() = paramTypes->size()) und (Set{1..paramTypes->size()}->forAll (i| paramTypes->at (i).conformsTo (opParamTypes->at (i)) ) ) ) Zustand Das BetriebsgetStateMachine() bringt das statemachine zurück, dem ein Zustand gehört. |  |
|
| |
|
|