Interface Namespace

    • Method Detail

      • getElementImport

        ElementImport getElementImport​(PackageableElement importedElement,
                                       boolean createOnDemand)
        Retrieves the first ElementImport with the specified 'Imported Element' from the ' Element Import' containment reference list.
        Parameters:
        importedElement - The 'Imported Element' of the ElementImport to retrieve, or null .
        createOnDemand - Whether to create a ElementImport on demand if not found.
        Returns:
        The first ElementImport with the specified 'Imported Element', or null.
        See Also:
        getElementImports()
      • getPackageImport

        PackageImport getPackageImport​(Package importedPackage)
        Retrieves the first PackageImport with the specified 'Imported Package' from the ' Package Import' containment reference list.
        Parameters:
        importedPackage - The 'Imported Package' of the PackageImport to retrieve, or null .
        Returns:
        The first PackageImport with the specified 'Imported Package', or null.
        See Also:
        getPackageImports()
      • getPackageImport

        PackageImport getPackageImport​(Package importedPackage,
                                       boolean createOnDemand)
        Retrieves the first PackageImport with the specified 'Imported Package' from the ' Package Import' containment reference list.
        Parameters:
        importedPackage - The 'Imported Package' of the PackageImport to retrieve, or null .
        createOnDemand - Whether to create a PackageImport on demand if not found.
        Returns:
        The first PackageImport with the specified 'Imported Package', or null.
        See Also:
        getPackageImports()
      • createOwnedRule

        Constraint createOwnedRule​(String name,
                                   org.eclipse.emf.ecore.EClass eClass)
        Creates a new Constraint, with the specified 'Name', and appends it to the ' Owned Rule' containment reference list.
        Parameters:
        name - The 'Name' for the new Constraint, or null.
        eClass - The Ecore class of the Constraint to create.
        Returns:
        The new Constraint.
        See Also:
        getOwnedRules()
      • getOwnedRule

        Constraint getOwnedRule​(String name)
        Retrieves the first Constraint with the specified 'Name' from the ' Owned Rule' containment reference list.
        Parameters:
        name - The 'Name' of the Constraint to retrieve, or null.
        Returns:
        The first Constraint with the specified 'Name', or null.
        See Also:
        getOwnedRules()
      • getOwnedRule

        Constraint getOwnedRule​(String name,
                                boolean ignoreCase,
                                org.eclipse.emf.ecore.EClass eClass,
                                boolean createOnDemand)
        Retrieves the first Constraint with the specified 'Name' from the ' Owned Rule' containment reference list.
        Parameters:
        name - The 'Name' of the Constraint to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the Constraint to retrieve, or null.
        createOnDemand - Whether to create a Constraint on demand if not found.
        Returns:
        The first Constraint with the specified 'Name', or null.
        See Also:
        getOwnedRules()
      • getMembers

        MDWEList<NamedElement> getMembers()
        Returns the value of the 'Member' reference list. The list contents are of type NamedElement. A collection of NamedElements identifiable within the Namespace, either by being owned or by being introduced by importing or inheritance.
        Returns:
        the value of the 'Member' reference list.
        See Also:
        UMLPackage.getNamespace_Member()
      • getMember

        NamedElement getMember​(String name,
                               boolean ignoreCase,
                               org.eclipse.emf.ecore.EClass eClass)
        Retrieves the first NamedElement with the specified 'Name' from the ' Member' reference list.
        Parameters:
        name - The 'Name' of the NamedElement to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the NamedElement to retrieve, or null.
        Returns:
        The first NamedElement with the specified 'Name', or null.
        See Also:
        getMembers()
      • getOwnedMember

        NamedElement getOwnedMember​(String name,
                                    boolean ignoreCase,
                                    org.eclipse.emf.ecore.EClass eClass)
        Retrieves the first NamedElement with the specified 'Name' from the ' Owned Member' reference list.
        Parameters:
        name - The 'Name' of the NamedElement to retrieve, or null.
        ignoreCase - Whether to ignore case in String comparisons.
        eClass - The Ecore class of the NamedElement to retrieve, or null.
        Returns:
        The first NamedElement with the specified 'Name', or null.
        See Also:
        getOwnedMembers()
      • validateMembersDistinguishable

        boolean validateMembersDistinguishable​(org.eclipse.emf.common.util.DiagnosticChain diagnostics,
                                               Map context)
        All the members of a Namespace are distinguishable within it. membersAreDistinguishable()
      • createPackageImport

        PackageImport createPackageImport​(Package package_,
                                          VisibilityKind visibility)
        Creates an import of the specified package into this namespace with the specified visibility.
      • getImportedPackages

        MDWEList<Package> getImportedPackages()
        Retrieves the packages imported by this namespace.
      • getNamesOfMember

        MDWEList<String> getNamesOfMember​(NamedElement element)
        The query getNamesOfMember() takes importing into account. It gives back the set of names that an element would have in an importing namespace, either because it is owned, or if not owned then imported individually, or if not individually then from a package. The query getNamesOfMember() gives a set of all of the names that a member would have in a Namespace. In general a member can have multiple names in a Namespace if it is imported more than once with different aliases. The query takes account of importing. It gives back the set of names that an element would have in an importing namespace, either because it is owned, or if not owned then imported individually, or if not individually then from a package. result = if self.ownedMember ->includes(element) then Set{}->include(element.name) else let elementImports: ElementImport = self.elementImport->select(ei | ei.importedElement = element) in if elementImports->notEmpty() then elementImports->collect(el | el.getName()) else self.packageImport->select(pi | pi.importedPackage.visibleMembers()->includes(element))-> collect(pi | pi.importedPackage.getNamesOfMember(element)) endif endif
      • membersAreDistinguishable

        boolean membersAreDistinguishable()
        The Boolean query membersAreDistinguishable() determines whether all of the namespace's members are distinguishable within it. result = self.member->forAll( memb | self.member->excluding(memb)->forAll(other | memb.isDistinguishableFrom(other, self)))
      • importMembers

        MDWEList<PackageableElement> importMembers​(MDWEList<PackageableElement> imps)
        The query importMembers() defines which of a set of PackageableElements are actually imported into the namespace. This excludes hidden ones, i.e., those which have names that conflict with names of owned members, and also excludes elements which would have the same name when imported. result = self.excludeCollisions(imps)->select(imp | self.ownedMember->forAll(mem | mem.imp.isDistinguishableFrom(mem, self)))
      • excludeCollisions

        MDWEList<PackageableElement> excludeCollisions​(MDWEList<PackageableElement> imps)
        The query excludeCollisions() excludes from a set of PackageableElements any that would not be distinguishable from each other in this namespace. result = imps->reject(imp1 | imps.exists(imp2 | not imp1.isDistinguishableFrom(imp2, self)))