• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java ImportNormalizer类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.eclipse.xtext.scoping.impl.ImportNormalizer的典型用法代码示例。如果您正苦于以下问题:Java ImportNormalizer类的具体用法?Java ImportNormalizer怎么用?Java ImportNormalizer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



ImportNormalizer类属于org.eclipse.xtext.scoping.impl包,在下文中一共展示了ImportNormalizer类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: getResourceScope

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
protected IScope getResourceScope(Resource res, EReference reference) {
	if (reference == TypesPackage.Literals.COMPLEX_TYPE__SUPER_TYPES)
		return super.getResourceScope(res, reference);
	EObject context = res.getContents().get(0);
	IScope globalScope = getGlobalScope(res, reference);
	List<ImportNormalizer> normalizers = getSuperTypeImports(res, reference);
	if (!normalizers.isEmpty()) {
		globalScope = createImportScope(globalScope, normalizers, null, reference.getEReferenceType(),
				isIgnoreCase(reference));
	}
	return getResourceScope(globalScope, context, reference);
}
 
开发者ID:Yakindu,项目名称:solidity-ide,代码行数:13,代码来源:SolidityImportedNamespaceAwareLocalScopeProvider.java


示例2: getSuperTypeImports

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
protected List<ImportNormalizer> getSuperTypeImports(Resource res, EReference reference) {
	List<ImportNormalizer> result = Lists.newArrayList();
	TreeIterator<EObject> allContents = res.getAllContents();
	while (allContents.hasNext()) {
		EObject next = allContents.next();
		if (next instanceof ContractDefinition) {
			ContractDefinition contract = (ContractDefinition) next;
			EList<ComplexType> superTypes = contract.getSuperTypes();
			for (ComplexType complexType : superTypes) {
				// if (complexType.eIsProxy() || complexType.getName() ==
				// null)
				// continue;
				ImportNormalizer resolver = createImportedNamespaceResolver(complexType.getName() + ".*", false);
				result.add(resolver);
			}
			allContents.prune();
		}
	}
	return result;
}
 
开发者ID:Yakindu,项目名称:solidity-ide,代码行数:21,代码来源:SolidityImportedNamespaceAwareLocalScopeProvider.java


示例3: createImportedNamespaceResolver

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
/**
 * Create a new {@link ImportNormalizer} for the given namespace.
 * @param namespace the namespace.
 * @param ignoreCase <code>true</code> if the resolver should be case insensitive.
 * @return a new {@link ImportNormalizer} or <code>null</code> if the namespace cannot be converted to a valid
 * qualified name.
 */
protected ImportNormalizer createImportedNamespaceResolver(final String namespace, boolean ignoreCase) {
	if (Strings.isEmpty(namespace))
		return null;
	QualifiedName importedNamespace = qualifiedNameConverter.toQualifiedName(namespace);
	if (importedNamespace == null || importedNamespace.isEmpty()) {
		return null;
	}
	boolean hasWildCard = ignoreCase ? 
			importedNamespace.getLastSegment().equalsIgnoreCase(getWildCard()) :
			importedNamespace.getLastSegment().equals(getWildCard());
	if (hasWildCard) {
		if (importedNamespace.getSegmentCount() <= 1)
			return null;
		return doCreateImportNormalizer(importedNamespace.skipLast(1), true, ignoreCase);
	} else {
		return doCreateImportNormalizer(importedNamespace, false, ignoreCase);
	}
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:26,代码来源:XbaseImportedNamespaceScopeProvider.java


示例4: createImportedNamespaceResolver

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
/**
 * Create a new {@link ImportNormalizer} for the given namespace.
 * @param namespace the namespace.
 * @param ignoreCase <code>true</code> if the resolver should be case insensitive.
 * @return a new {@link ImportNormalizer} or <code>null</code> if the namespace cannot be converted to a valid
 * qualified name.
 */
protected ImportNormalizer createImportedNamespaceResolver(final String namespace, boolean ignoreCase) {
	if (Strings.isEmpty(namespace))
		return null;
	QualifiedName importedNamespace = qualifiedNameConverter.toQualifiedName(namespace);
	if (importedNamespace == null || importedNamespace.isEmpty()) {
		return null;
	}
	boolean hasWildcard = ignoreCase ? 
			importedNamespace.getLastSegment().equalsIgnoreCase(getWildcard()) :
			importedNamespace.getLastSegment().equals(getWildcard());
	if (hasWildcard) {
		if (importedNamespace.getSegmentCount() <= 1)
			return null;
		return doCreateImportNormalizer(importedNamespace.skipLast(1), true, ignoreCase);
	} else {
		return doCreateImportNormalizer(importedNamespace, false, ignoreCase);
	}
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:26,代码来源:XImportSectionNamespaceScopeProvider.java


示例5: testResolve_ImportNormalizer

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testResolve_ImportNormalizer() throws Exception {
	QualifiedName xtextRelativeName = QualifiedName.create("xtext");
	QualifiedName ytextRelativeName = QualifiedName.create("ytext");
	QualifiedName xytextRelativeName = QualifiedName.create("xtext", "ytext");
	QualifiedName xytextRelativeNameWithDollar = QualifiedName.create("xtext$ytext");

	QualifiedName namespace = QualifiedName.create("org", "eclipse", "xtext");
	ImportNormalizer importNormalizer = new ImportNormalizer(namespace, false, false);
	assertEquals(namespace, importNormalizer.resolve(xtextRelativeName));
	assertEquals(null, importNormalizer.resolve(ytextRelativeName));
	assertEquals(null, importNormalizer.resolve(xytextRelativeName));
	assertEquals(null, importNormalizer.resolve(xytextRelativeNameWithDollar));
	
	ImportNormalizer wildcardImportNormalizer = new ImportNormalizer(namespace, true, false);
	assertEquals(namespace.append(xtextRelativeName), wildcardImportNormalizer.resolve(xtextRelativeName));
	assertEquals(namespace.append(ytextRelativeName), wildcardImportNormalizer.resolve(ytextRelativeName));
	assertEquals(namespace.append(xytextRelativeName), wildcardImportNormalizer.resolve(xytextRelativeName));
	assertEquals(namespace.append(xytextRelativeNameWithDollar), wildcardImportNormalizer.resolve(xytextRelativeNameWithDollar));

	ImportNormalizer xtextImportNormalizer = new ImportNormalizer(xtextRelativeName, false, false);
	assertEquals(xtextRelativeName, xtextImportNormalizer.resolve(xtextRelativeName));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:23,代码来源:ImportNormalizerTest.java


示例6: testResolve_ImportNormalizer

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testResolve_ImportNormalizer() throws Exception {
	QualifiedName xtextRelativeName = QualifiedName.create("xtext");
	QualifiedName ytextRelativeName = QualifiedName.create("ytext");
	QualifiedName xytextRelativeName = QualifiedName.create("xtext", "ytext");
	QualifiedName xytextRelativeNameWithDollar = QualifiedName.create("xtext$ytext");

	QualifiedName namespace = QualifiedName.create("org", "eclipse", "xtext");
	ImportNormalizer importNormalizer = createImportNormalizer(namespace, false);
	assertEquals(namespace, importNormalizer.resolve(xtextRelativeName));
	assertEquals(null, importNormalizer.resolve(ytextRelativeName));
	assertEquals(namespace.skipLast(1).append(xytextRelativeName), importNormalizer.resolve(xytextRelativeName));
	assertEquals(namespace.skipLast(1).append(xytextRelativeName), importNormalizer.resolve(xytextRelativeNameWithDollar));
	
	ImportNormalizer wildcardImportNormalizer = createImportNormalizer(namespace, true);
	assertEquals(namespace.append(xtextRelativeName), wildcardImportNormalizer.resolve(xtextRelativeName));
	assertEquals(namespace.append(ytextRelativeName), wildcardImportNormalizer.resolve(ytextRelativeName));
	assertEquals(namespace.append(xytextRelativeNameWithDollar), wildcardImportNormalizer.resolve(xytextRelativeName));
	assertEquals(namespace.append(xytextRelativeNameWithDollar), wildcardImportNormalizer.resolve(xytextRelativeNameWithDollar));

	ImportNormalizer xtextImportNormalizer = createImportNormalizer(xtextRelativeName, false);
	assertEquals(xtextRelativeName, xtextImportNormalizer.resolve(xtextRelativeName));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:23,代码来源:NestedTypeAwareImportNormalizerWithDotSeparatorTest.java


示例7: testDeesolve_NestedTypes

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testDeesolve_NestedTypes() throws Exception {
	QualifiedName mapEntry = QualifiedName.create("Map", "Entry");
	QualifiedName imported = QualifiedName.create("java", "util", "Map");
	QualifiedName fqnMapEntry = QualifiedName.create("java", "util", "Map", "Entry");
	QualifiedName fqnMaps = QualifiedName.create("java", "util", "Maps");
	QualifiedName fqnMapsInternal = QualifiedName.create("java", "util", "Maps", "Internal");

	ImportNormalizer importNormalizer = createImportNormalizer(imported, false);
	assertEquals(mapEntry, importNormalizer.deresolve(fqnMapEntry));
	assertEquals(null, importNormalizer.deresolve(fqnMaps));
	assertEquals(null, importNormalizer.deresolve(fqnMapsInternal));
	
	importNormalizer = createImportNormalizer(fqnMapEntry, false);
	assertEquals(QualifiedName.create("Entry"), importNormalizer.deresolve(fqnMapEntry));
	assertEquals(QualifiedName.create("Entry", "Nested"), importNormalizer.deresolve(QualifiedName.create("java", "util", "Map$Entry$Nested")));

	ImportNormalizer wildcardImportNormalizer = createImportNormalizer(QualifiedName.create("java", "util"), true);
	assertEquals(QualifiedName.create("Map", "Entry"), wildcardImportNormalizer.deresolve(fqnMapEntry));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:20,代码来源:NestedTypeAwareImportNormalizerWithDotSeparatorTest.java


示例8: testResolve_ImportNormalizer

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testResolve_ImportNormalizer() throws Exception {
	QualifiedName xtextRelativeName = QualifiedName.create("xtext");
	QualifiedName ytextRelativeName = QualifiedName.create("ytext");
	QualifiedName xytextRelativeName = QualifiedName.create("xtext", "ytext");
	QualifiedName xytextRelativeNameWithDollar = QualifiedName.create("xtext$ytext");

	QualifiedName namespace = QualifiedName.create("org", "eclipse$xtext");
	ImportNormalizer importNormalizer = createImportNormalizer(namespace, false);
	assertEquals(namespace, importNormalizer.resolve(xtextRelativeName));
	assertEquals(null, importNormalizer.resolve(ytextRelativeName));
	assertEquals(namespace.skipLast(1).append("eclipse$xtext$ytext"), importNormalizer.resolve(xytextRelativeName));
	assertEquals(namespace.skipLast(1).append("eclipse$xtext$ytext"), importNormalizer.resolve(xytextRelativeNameWithDollar));
	
	ImportNormalizer wildcardImportNormalizer = createImportNormalizer(namespace, true);
	assertEquals(null, wildcardImportNormalizer.resolve(xtextRelativeName));
	assertEquals(null, wildcardImportNormalizer.resolve(ytextRelativeName));
	assertEquals(null, wildcardImportNormalizer.resolve(xytextRelativeName));
	assertEquals(null, wildcardImportNormalizer.resolve(xytextRelativeNameWithDollar));

	ImportNormalizer xytextRelativeNameWithDollarNormalizer = createImportNormalizer(xytextRelativeNameWithDollar, false);
	assertEquals(xytextRelativeNameWithDollar, xytextRelativeNameWithDollarNormalizer.resolve(xytextRelativeNameWithDollar));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:23,代码来源:NestedTypeAwareImportNormalizerTest.java


示例9: testDeresolve_ImportNormalizer

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testDeresolve_ImportNormalizer() throws Exception {
	QualifiedName namespace = QualifiedName.create("org", "eclipse", "xtext");
	QualifiedName xtextFQN = namespace.append("Xtext$Xtext");
	QualifiedName ytextFQN = namespace.skipLast(1).append("ytext");
	QualifiedName xytextFQN = namespace.append("ytext$ytext");

	ImportNormalizer importNormalizer = createImportNormalizer(xtextFQN, false);
	assertEquals(QualifiedName.create("Xtext"), importNormalizer.deresolve(xtextFQN));
	assertEquals(null, importNormalizer.deresolve(ytextFQN));
	assertEquals(null, importNormalizer.deresolve(xytextFQN));
	
	importNormalizer = createImportNormalizer(xytextFQN, false);
	assertEquals(null, importNormalizer.deresolve(xtextFQN));
	assertEquals(null, importNormalizer.deresolve(ytextFQN));
	assertEquals(QualifiedName.create("ytext"), importNormalizer.deresolve(xytextFQN));

	ImportNormalizer wildcardImportNormalizer = createImportNormalizer(xtextFQN, true);
	assertEquals(null, wildcardImportNormalizer.deresolve(xtextFQN));
	assertEquals(null, wildcardImportNormalizer.deresolve(ytextFQN));
	assertEquals(null, wildcardImportNormalizer.deresolve(xytextFQN));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:22,代码来源:NestedTypeAwareImportNormalizerTest.java


示例10: testResolve_ImportNormalizer

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testResolve_ImportNormalizer() throws Exception {
	QualifiedName xtextRelativeName = QualifiedName.create("xtext");
	QualifiedName ytextRelativeName = QualifiedName.create("ytext");
	QualifiedName xytextRelativeName = QualifiedName.create("xtext", "ytext");
	QualifiedName xytextRelativeNameWithDollar = QualifiedName.create("xtext$ytext");

	QualifiedName namespace = QualifiedName.create("org", "eclipse", "xtext");
	ImportNormalizer importNormalizer = createImportNormalizer(namespace, false);
	assertEquals(namespace, importNormalizer.resolve(xtextRelativeName));
	assertEquals(null, importNormalizer.resolve(ytextRelativeName));
	assertEquals(namespace.skipLast(1).append(xytextRelativeNameWithDollar), importNormalizer.resolve(xytextRelativeName));
	assertEquals(namespace.skipLast(1).append(xytextRelativeNameWithDollar), importNormalizer.resolve(xytextRelativeNameWithDollar));
	
	ImportNormalizer wildcardImportNormalizer = createImportNormalizer(namespace, true);
	assertEquals(namespace.append(xtextRelativeName), wildcardImportNormalizer.resolve(xtextRelativeName));
	assertEquals(namespace.append(ytextRelativeName), wildcardImportNormalizer.resolve(ytextRelativeName));
	assertEquals(namespace.append(xytextRelativeNameWithDollar), wildcardImportNormalizer.resolve(xytextRelativeName));
	assertEquals(namespace.append(xytextRelativeNameWithDollar), wildcardImportNormalizer.resolve(xytextRelativeNameWithDollar));

	ImportNormalizer xtextImportNormalizer = createImportNormalizer(xtextRelativeName, false);
	assertEquals(xtextRelativeName, xtextImportNormalizer.resolve(xtextRelativeName));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:23,代码来源:NestedTypeAwareImportNormalizerWIthInvalidConfigTest.java


示例11: testDeresolve_ImportNormalizer

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testDeresolve_ImportNormalizer() throws Exception {
	QualifiedName namespace = QualifiedName.create("org", "eclipse", "xtext");
	QualifiedName xtextFQN = namespace.append("Xtext");
	QualifiedName ytextFQN = namespace.skipLast(1).append("ytext");
	QualifiedName xytextFQN = namespace.append("ytext");

	ImportNormalizer importNormalizer = createImportNormalizer(xtextFQN, false);
	assertEquals(QualifiedName.create("Xtext"), importNormalizer.deresolve(xtextFQN));
	assertEquals(null, importNormalizer.deresolve(ytextFQN));
	assertEquals(null, importNormalizer.deresolve(xytextFQN));
	
	importNormalizer = createImportNormalizer(xytextFQN, false);
	assertEquals(null, importNormalizer.deresolve(xtextFQN));
	assertEquals(null, importNormalizer.deresolve(ytextFQN));
	assertEquals(QualifiedName.create("ytext"), importNormalizer.deresolve(xytextFQN));

	ImportNormalizer wildcardImportNormalizer = createImportNormalizer(namespace, true);
	assertEquals(QualifiedName.create("Xtext"), wildcardImportNormalizer.deresolve(xtextFQN));
	assertEquals(null, wildcardImportNormalizer.deresolve(ytextFQN));
	assertEquals(QualifiedName.create("ytext"), wildcardImportNormalizer.deresolve(xytextFQN));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:22,代码来源:NestedTypeAwareImportNormalizerWIthInvalidConfigTest.java


示例12: testDeesolve_NestedTypes

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Test public void testDeesolve_NestedTypes() throws Exception {
	QualifiedName mapEntry = QualifiedName.create("Map$Entry");
	QualifiedName imported = QualifiedName.create("java", "util", "Map");
	QualifiedName fqnMapEntry = QualifiedName.create("java", "util", "Map$Entry");
	QualifiedName fqnMaps = QualifiedName.create("java", "util", "Maps");
	QualifiedName fqnMapsInternal = QualifiedName.create("java", "util", "Maps$Internal");

	ImportNormalizer importNormalizer = createImportNormalizer(imported, false);
	assertEquals(mapEntry, importNormalizer.deresolve(fqnMapEntry));
	assertEquals(null, importNormalizer.deresolve(fqnMaps));
	assertEquals(null, importNormalizer.deresolve(fqnMapsInternal));
	
	importNormalizer = createImportNormalizer(fqnMapEntry, false);
	assertEquals(QualifiedName.create("Entry"), importNormalizer.deresolve(fqnMapEntry));
	assertEquals(QualifiedName.create("Entry$Nested"), importNormalizer.deresolve(QualifiedName.create("java", "util", "Map$Entry$Nested")));

	ImportNormalizer wildcardImportNormalizer = createImportNormalizer(QualifiedName.create("java", "util"), true);
	assertEquals(QualifiedName.create("Map$Entry"), wildcardImportNormalizer.deresolve(fqnMapEntry));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:20,代码来源:NestedTypeAwareImportNormalizerWIthInvalidConfigTest.java


示例13: internalGetImportedNamespaceResolvers

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Override
protected List<ImportNormalizer> internalGetImportedNamespaceResolvers(final EObject context, final boolean ignoreCase) {
  final List<ImportNormalizer> resolvers = super.internalGetImportedNamespaceResolvers(context, ignoreCase);
  if ((context instanceof PackageDeclaration)) {
    QualifiedName _qualifiedName = this.getQualifiedNameConverter().toQualifiedName(((PackageDeclaration)context).getName());
    ImportNormalizer _importNormalizer = new ImportNormalizer(_qualifiedName, true, false);
    resolvers.add(_importNormalizer);
    EList<Import> _imports = ((PackageDeclaration)context).getImports();
    for (final Import imp : _imports) {
      {
        final QualifiedName name = this.getImportedNamespace(imp);
        ImportNormalizer _importNormalizer_1 = new ImportNormalizer(name, false, false);
        resolvers.add(_importNormalizer_1);
      }
    }
  }
  return resolvers;
}
 
开发者ID:eclipse,项目名称:xtext-core,代码行数:19,代码来源:FileAwareTestLanguageImportScopeProvider.java


示例14: getAliasedElements

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Override
protected Iterable<IEObjectDescription> getAliasedElements(Iterable<IEObjectDescription> candidates) {
	Multimap<QualifiedName, IEObjectDescription> keyToDescription = LinkedHashMultimap.create();
	Multimap<QualifiedName, ImportNormalizer> keyToNormalizer = HashMultimap.create();

	for (IEObjectDescription imported : candidates) {
		QualifiedName fullyQualifiedName = imported.getName();
		for (ImportNormalizer normalizer : normalizers) {
			QualifiedName alias = normalizer.deresolve(fullyQualifiedName);
			if (alias != null) {
				QualifiedName key = alias;
				if (isIgnoreCase()) {
					key = key.toLowerCase();
				}
				keyToDescription.put(key, new AliasedEObjectDescription(alias, imported));
				keyToNormalizer.put(key, normalizer);
			}
		}
	}

	return keyToDescription.values();
}
 
开发者ID:Cooperate-Project,项目名称:CooperateModelingEnvironment,代码行数:23,代码来源:DuplicateImportScope.java


示例15: getLocalElementsByName

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Override
protected Iterable<IEObjectDescription> getLocalElementsByName(QualifiedName name) {
	List<IEObjectDescription> result = newArrayList();
	ISelectable importFrom = getImportFrom();
	for (ImportNormalizer normalizer : normalizers) {
		final QualifiedName resolvedName = normalizer.resolve(name);
		if (resolvedName != null) {
			Iterable<IEObjectDescription> resolvedElements = importFrom.getExportedObjects(type, resolvedName,
					isIgnoreCase());
			for (IEObjectDescription resolvedElement : resolvedElements) {
				QualifiedName alias = normalizer.deresolve(resolvedElement.getName());
				if (alias == null)
					throw new IllegalStateException("Couldn't deresolve " + resolvedElement.getName()
							+ " with import " + normalizer);
				final AliasedEObjectDescription aliasedEObjectDescription = new AliasedEObjectDescription(alias,
						resolvedElement);
				result.add(aliasedEObjectDescription);
			}
		}
	}
	return result;
}
 
开发者ID:Cooperate-Project,项目名称:CooperateModelingEnvironment,代码行数:23,代码来源:DuplicateImportScope.java


示例16: getNormalizers

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@SuppressWarnings("unchecked")
private static List<ImportNormalizer> getNormalizers(IScope scope)
        throws NoSuchFieldException, SecurityException, IllegalArgumentException, IllegalAccessException {
    assertNotNull(scope);
    assertThat(scope, is(instanceOf(ImportScope.class)));

    ImportScope importScope = (ImportScope) scope;
    Field normalizersField = scope.getClass().getDeclaredField("normalizers");
    normalizersField.setAccessible(true);

    Object normalizers = normalizersField.get(importScope);
    assertThat(normalizers, is(instanceOf(List.class)));

    assertThat((List<?>) normalizers, everyItem(is(instanceOf(ImportNormalizer.class))));
    return (List<ImportNormalizer>) normalizers;
}
 
开发者ID:Cooperate-Project,项目名称:CooperateModelingEnvironment,代码行数:17,代码来源:ClsCooperateSimpleScopeProviderTest.java


示例17: getResourceScope

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Override
protected IScope getResourceScope(Resource res, EReference reference) {
	EObject context = res.getContents().get(0);

	// ||-- changed super-impl here:
	// IDE-662 filtering ArgumentsType & EnumBaseType from globalScobe, since it is a VirtualBaseType.
	Predicate<IEObjectDescription> filter = p -> {
		String name = p.getName().toString();
		return !("ArgumentsType".equals(name) || "EnumBaseType".equals(name));
	};
	IScope globalScope = getGlobalScope(res, reference, filter);
	// -- done change --||

	List<ImportNormalizer> normalizers = getImplicitImports(isIgnoreCase(reference));

	// IDE-1735 adding support for static-polyfills:
	TModule module = (TModule) res.getContents().get(1);
	if (module.isStaticPolyfillModule()) { // limit to situations of resources, that contain at least
		// one @StaticPolyfill
		normalizers.add(createImportedNamespaceResolver(
				module.getQualifiedName() + N4JSQualifiedNameConverter.DELIMITER + "*", false));
	}

	if (!normalizers.isEmpty()) {
		globalScope = createImportScope(globalScope, normalizers, null, reference.getEReferenceType(),
				isIgnoreCase(reference));
	}
	IScope resScope = getResourceScope(globalScope, context, reference);
	return resScope;
}
 
开发者ID:eclipse,项目名称:n4js,代码行数:31,代码来源:N4JSImportedNamespaceAwareLocalScopeProvider.java


示例18: getImplicitImports

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
@Override
protected List<ImportNormalizer> getImplicitImports(boolean ignoreCase) {
	// "#global#
	List<ImportNormalizer> result = newArrayList();
	result.add(createImportedNamespaceResolver(
			N4TSQualifiedNameProvider.GLOBAL_NAMESPACE_SEGMENT + N4JSQualifiedNameConverter.DELIMITER + "*",
			ignoreCase));
	return result;
}
 
开发者ID:eclipse,项目名称:n4js,代码行数:10,代码来源:N4JSImportedNamespaceAwareLocalScopeProvider.java


示例19: getResourceScope

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
protected IScope getResourceScope(IScope globalScope, @SuppressWarnings("unused") Resource res, EReference reference) {
	IScope result = globalScope;
	ISelectable globalScopeSelectable = new ScopeBasedSelectable(result);
	
	// implicit imports (i.e. java.lang.*)
	List<ImportNormalizer> normalizers = getImplicitImports(isIgnoreCase(reference));
	if (!normalizers.isEmpty()) {
		result = createImportScope(result, normalizers, globalScopeSelectable, reference.getEReferenceType(), isIgnoreCase(reference));
	}
	
	return result;
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:13,代码来源:XbaseImportedNamespaceScopeProvider.java


示例20: getImportedNamespaceResolvers

import org.eclipse.xtext.scoping.impl.ImportNormalizer; //导入依赖的package包/类
protected List<ImportNormalizer> getImportedNamespaceResolvers(final EObject context, final boolean ignoreCase) {
	return cache.get(Tuples.create(context, ignoreCase, "imports"), context.eResource(), new Provider<List<ImportNormalizer>>() {
		@Override
		public List<ImportNormalizer> get() {
			return internalGetImportedNamespaceResolvers(context, ignoreCase);
		}
	});
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:9,代码来源:XbaseImportedNamespaceScopeProvider.java



注:本文中的org.eclipse.xtext.scoping.impl.ImportNormalizer类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java OptionsPickerView类代码示例发布时间:2022-05-22
下一篇:
Java Name类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap