Class DSLImportedNamespaceAwareLocalScopeProvider

  • All Implemented Interfaces:
    org.eclipse.xtext.scoping.IScopeProvider

    public class DSLImportedNamespaceAwareLocalScopeProvider
    extends org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider
    This namespace-aware local scope provider modifies the default scope provider from XText just slightly: it sorts the ImportNormalizer list to be returned such that normalizers with more segments are placed first. XText always uses the first match when normalizing an imported resource reference, thus if a package is imported by one less and one more specific import statement, the more specific one will be used regardless of the order of import statements, which results in the shortest possible normalized resource reference.
    Author:
    Rene Schneider - initial API and implementation
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected java.util.List<org.eclipse.xtext.scoping.impl.ImportNormalizer> internalGetImportedNamespaceResolvers​(org.eclipse.emf.ecore.EObject aContext, boolean anIgnoreCaseFlag)  
      • Methods inherited from class org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider

        createImportedNamespaceResolver, createImportScope, doCreateImportNormalizer, getAllDescriptions, getImplicitImports, getImportedNamespace, getImportedNamespaceResolvers, getKey, getLocalElementsScope, getQualifiedNameConverter, getQualifiedNameOfLocalElement, getQualifiedNameProvider, getResourceScope, getResourceScope, getScope, getWildCard, internalGetAllDescriptions, isRelativeImport
      • Methods inherited from class org.eclipse.xtext.scoping.impl.AbstractGlobalScopeDelegatingScopeProvider

        getGlobalScope, getGlobalScope, isIgnoreCase, setWrapper, wrap
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • DSLImportedNamespaceAwareLocalScopeProvider

        public DSLImportedNamespaceAwareLocalScopeProvider()
    • Method Detail

      • internalGetImportedNamespaceResolvers

        protected java.util.List<org.eclipse.xtext.scoping.impl.ImportNormalizer> internalGetImportedNamespaceResolvers​(org.eclipse.emf.ecore.EObject aContext,
                                                                                                                        boolean anIgnoreCaseFlag)
        Overrides:
        internalGetImportedNamespaceResolvers in class org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider