use of org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider in project xtext-core by eclipse.
the class ImportedNamespaceAwareLocalScopeProviderTest method setUp.
@Override
public void setUp() throws Exception {
super.setUp();
with(new IndexTestLanguageStandaloneSetup());
globalScopeProvider = new ResourceSetGlobalScopeProvider();
nameProvider = new DefaultDeclarativeQualifiedNameProvider();
nameConverter = new IQualifiedNameConverter.DefaultImpl();
final DefaultResourceDescriptionStrategy strategy = new DefaultResourceDescriptionStrategy();
strategy.setQualifiedNameProvider(nameProvider);
final DefaultResourceDescriptionManager resourceDescMnr = new DefaultResourceDescriptionManager() {
@Override
public IResourceDescription getResourceDescription(Resource resource) {
DefaultResourceDescription resourceDescription = new DefaultResourceDescription(resource, strategy);
return resourceDescription;
}
};
final DefaultResourceServiceProvider provider = new DefaultResourceServiceProvider() {
@Override
public Manager getResourceDescriptionManager() {
return resourceDescMnr;
}
};
globalScopeProvider.setGlobalResourceDecriptionProvider(new GlobalResourceDescriptionProvider(new ResourceServiceProviderRegistryImpl() {
@Override
public IResourceServiceProvider getResourceServiceProvider(URI uri, String contentType) {
return provider;
}
}));
CaseInsensitivityHelper caseInsensitivityHelper = new CaseInsensitivityHelper();
globalScopeProvider.setCaseInsensitivityHelper(caseInsensitivityHelper);
scopeProvider = new ImportedNamespaceAwareLocalScopeProvider(globalScopeProvider, nameProvider, nameConverter, caseInsensitivityHelper);
}
use of org.eclipse.xtext.naming.DefaultDeclarativeQualifiedNameProvider in project xtext-core by eclipse.
the class PartialLinkingTest method setUp.
@Override
public void setUp() throws Exception {
super.setUp();
with(ReferenceGrammarTestLanguageStandaloneSetup.class);
IQualifiedNameConverter nameConverter = new IQualifiedNameConverter.DefaultImpl();
IQualifiedNameProvider nameProvider = new DefaultDeclarativeQualifiedNameProvider();
ImportUriGlobalScopeProvider globalScopeProvider = new ImportUriGlobalScopeProvider();
globalScopeProvider.setImportResolver(new ImportUriResolver());
globalScopeProvider.setCache(IResourceScopeCache.NullImpl.INSTANCE);
final ResourceDescriptionsProvider provider = new ResourceDescriptionsProvider();
provider.setResourceDescriptions(new Provider<IResourceDescriptions>() {
@Override
public IResourceDescriptions get() {
return new IResourceDescriptions.NullImpl();
}
});
globalScopeProvider.setResourceDescriptionsProvider(provider);
globalScopeProvider.setLoadOnDemandDescriptions(new Provider<LoadOnDemandResourceDescriptions>() {
@Override
public LoadOnDemandResourceDescriptions get() {
return PartialLinkingTest.this.get(LoadOnDemandResourceDescriptions.class);
}
});
CaseInsensitivityHelper caseInsensitivityHelper = new CaseInsensitivityHelper();
globalScopeProvider.setCaseInsensitivityHelper(caseInsensitivityHelper);
scopeProvider = new ImportedNamespaceAwareLocalScopeProvider(globalScopeProvider, nameProvider, nameConverter, caseInsensitivityHelper);
modelAsText = "spielplatz 1 {\n" + " kind( Bommel1 1)\n" + " kind( Bommel2 2)\n" + " kind( Bommel3 3)\n" + " erwachsener( Bob 4)\n" + " erwachsener( Joe 5)\n" + " familie( Familienname Bob Joe Bommel2 )\n" + "}";
resource = getResourceFromString(modelAsText);
assertTrue(resource.getErrors().toString(), resource.getErrors().isEmpty());
model = resource.getParseResult().getRootASTElement();
final Iterator<EObject> iter = model.eAllContents();
while (iter.hasNext() && context == null) {
final EObject candidate = iter.next();
final String className = candidate.eClass().getName();
if (className.endsWith("Familie"))
context = candidate;
}
reference = (EReference) context.eClass().getEStructuralFeature("kinder");
}
Aggregations