Software Disclaimer

Class UML 2.5::RedefinableTemplateSignature

Description:

A RedefinableTemplateSignature supports the addition of formal template parameters in a specialization of a template classifier.

Direct Superclasses: RedefinableElement, TemplateSignature

Direct Subclasses:

Class Precedence List: RedefinableTemplateSignature, RedefinableElement, NamedElement, TemplateSignature, Element

Properties:

classifier : Classifier (1 1); -- source RedefinableTemplateSignature
extendedSignature : RedefinableTemplateSignature (0 *); -- source RedefinableTemplateSignature
inheritedParameter : TemplateParameter (0 *); -- source RedefinableTemplateSignature
isLeaf : Boolean (1 1); -- source RedefinableElement
redefinedElement : RedefinableElement (0 *); -- source RedefinableElement
redefinitionContext : Classifier (0 *); -- source RedefinableElement
clientDependency : Dependency (0 *); -- source NamedElement
name : String (0 1); -- source NamedElement
nameExpression : StringExpression (0 1); -- source NamedElement
namespace : Namespace (0 1); -- source NamedElement
qualifiedName : String (0 1); -- source NamedElement
visibility : VisibilityKind (0 1); -- source NamedElement
ownedParameter : TemplateParameter (0 *); -- source TemplateSignature
parameter : TemplateParameter (1 *); -- source TemplateSignature
ownedComment : Comment (0 *); -- source Element
ownedElement : Element (0 *); -- source Element
owner : Element (0 1); -- source Element

Constraints:

No additional constraints.

Operations:

Signature: isConsistentWith(redefiningElement : RedefinableElement; ) : Boolean;
Description: The query isConsistentWith() specifies, for any two RedefinableTemplateSignatures in a context in which redefinition is possible, whether redefinition would be logically consistent. A redefining template signature is always consistent with a redefined template signature, as redefinition only adds new formal parameters.
Expression: result = (redefiningElement.oclIsKindOf(RedefinableTemplateSignature))

Signature: inheritedParameter.1() : TemplateParameter;
Description: Derivation for RedefinableTemplateSignature::/inheritedParameter
Expression: result = (if extendedSignature->isEmpty() then Set{} else extendedSignature.parameter->asSet() endif)



Send questions or comments to [email protected].