Interface StructuralFeatureAction

    • Method Detail

      • setObject

        void setObject​(InputPin value)
        Sets the value of the 'Object' containment reference.
        Parameters:
        value - the new value of the 'Object' containment reference.
        See Also:
        getObject()
      • createObject

        InputPin createObject​(String name,
                              Type type,
                              org.eclipse.emf.ecore.EClass eClass)
        Creates a new InputPin, with the specified 'Name', and 'Type', and sets the 'Object' containment reference.
        Parameters:
        name - The 'Name' for the new InputPin, or null.
        type - The 'Type' for the new InputPin, or null.
        eClass - The Ecore class of the InputPin to create.
        Returns:
        The new InputPin.
        See Also:
        getObject()
      • createObject

        InputPin createObject​(String name,
                              Type type)
        Creates a new InputPin,with the specified 'Name', and 'Type', and sets the 'Object' containment reference.
        Parameters:
        name - The 'Name' for the new InputPin, or null.
        type - The 'Type' for the new InputPin, or null.
        Returns:
        The new InputPin.
        See Also:
        getObject()
      • validateNotStatic

        boolean validateNotStatic​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                  Map context)
        The structural feature must not be static. self.structuralFeature.isStatic = #false
      • validateSameType

        boolean validateSameType​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                 Map context)
        The type of the object input pin is the same as the classifier of the object passed on this pin. true
      • validateMultiplicity

        boolean validateMultiplicity​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                     Map context)
        The multiplicity of the input pin must be 1..1. self.object.multiplicity.is(1,1)
      • validateVisibility

        boolean validateVisibility​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                   Map context)
        Visibility of structural feature must allow access to the object performing the action. let host : Classifier = self.context in self.structuralFeature.visibility = #public or host = self.structuralFeature.featuringClassifier.type or (self.structuralFeature.visibility = #protected and host.allSupertypes ->includes(self.structuralFeature.featuringClassifier.type)))
      • validateOneFeaturingClassifier

        boolean validateOneFeaturingClassifier​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                               Map context)
        A structural feature has exactly one featuringClassifier. self.structuralFeature.featuringClassifier->size() = 1