当前位置: 首页>>代码示例>>Java>>正文


Java XTypeLiteral.getType方法代码示例

本文整理汇总了Java中org.eclipse.xtext.xbase.XTypeLiteral.getType方法的典型用法代码示例。如果您正苦于以下问题:Java XTypeLiteral.getType方法的具体用法?Java XTypeLiteral.getType怎么用?Java XTypeLiteral.getType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.eclipse.xtext.xbase.XTypeLiteral的用法示例。


在下文中一共展示了XTypeLiteral.getType方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: _computeTypes

import org.eclipse.xtext.xbase.XTypeLiteral; //导入方法依赖的package包/类
protected void _computeTypes(XTypeLiteral object, ITypeComputationState state) {
	JvmType type = object.getType();
	if (type == null) {
		return;
	}
	checkTypeParameterNotAllowedAsLiteral(object, type, state);
	ITypeReferenceOwner owner = state.getReferenceOwner();
	LightweightTypeReference clazz = owner.newParameterizedTypeReference(type);
	for (int i = 0; i < object.getArrayDimensions().size(); i++) {
		clazz = owner.newArrayTypeReference(clazz);
	}
	if (object.getArrayDimensions().isEmpty()) {
		if (clazz.isPrimitiveVoid()) {
			clazz = state.getReferenceOwner().newReferenceTo(Void.class);
		} else {
			clazz = clazz.getWrapperTypeIfPrimitive();
		}
	}
	LightweightTypeReference result = owner.newReferenceTo(Class.class);
	if (result instanceof ParameterizedTypeReference) {
		ParameterizedTypeReference parameterizedTypeReference = (ParameterizedTypeReference) result;
		parameterizedTypeReference.addTypeArgument(clazz);
	}
	state.acceptActualType(result);
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:26,代码来源:XbaseTypeComputer.java

示例2: toResolvedOperations

import org.eclipse.xtext.xbase.XTypeLiteral; //导入方法依赖的package包/类
public ResolvedFeatures toResolvedOperations(final Class<?> type) {
  try {
    StringConcatenation _builder = new StringConcatenation();
    _builder.append("typeof(");
    String _canonicalName = type.getCanonicalName();
    _builder.append(_canonicalName);
    _builder.append(")");
    XExpression _expression = this.expression(_builder);
    final XTypeLiteral typeLiteral = ((XTypeLiteral) _expression);
    JvmType _type = typeLiteral.getType();
    final ResolvedFeatures result = this.overrideHelper.getResolvedFeatures(((JvmDeclaredType) _type));
    return result;
  } catch (Throwable _e) {
    throw Exceptions.sneakyThrow(_e);
  }
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:17,代码来源:ResolvedFeaturesTest.java

示例3: checkDeprecated

import org.eclipse.xtext.xbase.XTypeLiteral; //导入方法依赖的package包/类
@Check
public void checkDeprecated(XTypeLiteral expression) {
	if (!isIgnored(DEPRECATED_MEMBER_REFERENCE)) {
		JvmType jvmType = expression.getType();
		checkDeprecated(
				jvmType,
				expression,
				XbasePackage.Literals.XTYPE_LITERAL__TYPE);
	}
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:11,代码来源:XbaseValidator.java

示例4: _doEvaluate

import org.eclipse.xtext.xbase.XTypeLiteral; //导入方法依赖的package包/类
/**
 * @param context unused in this context but required for dispatching
 * @param indicator unused in this context but required for dispatching
 */
protected Object _doEvaluate(XTypeLiteral literal, IEvaluationContext context, CancelIndicator indicator) {
	if (literal.getType() == null || literal.getType().eIsProxy()) {
		List<INode> nodesForFeature = NodeModelUtils.findNodesForFeature(literal,
				XbasePackage.Literals.XTYPE_LITERAL__TYPE);
		// TODO cleanup
		if (nodesForFeature.isEmpty())
			throw new EvaluationException(new ClassNotFoundException());
		throw new EvaluationException(new ClassNotFoundException(nodesForFeature.get(0).getText()));
	}
	JvmType type = literal.getType();
	Object result = translateJvmTypeToResult(type, literal.getArrayDimensions().size());
	return result;
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:18,代码来源:XbaseInterpreter.java

示例5: testReferenceToString_0

import org.eclipse.xtext.xbase.XTypeLiteral; //导入方法依赖的package包/类
@Test
public void testReferenceToString_0() throws Exception {
	XExpression expr = expression("typeof(foo.String)", true);
	assertTrue(expr instanceof XTypeLiteral);
	XTypeLiteral operator = (XTypeLiteral) expr;
	JvmType type = operator.getType();
	JvmTypeReference reference = this.typeReferences.createTypeRef(type);
	assertEquals("String", this.uiStrings.referenceToString(reference, "the-default-value"));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:10,代码来源:UIStringsTest.java

示例6: testReferenceToString_1

import org.eclipse.xtext.xbase.XTypeLiteral; //导入方法依赖的package包/类
@Test
public void testReferenceToString_1() throws Exception {
	XExpression expr = expression("typeof(String)", true);
	assertTrue(expr instanceof XTypeLiteral);
	XTypeLiteral operator = (XTypeLiteral) expr;
	JvmType type = operator.getType();
	JvmTypeReference reference = this.typeReferences.createTypeRef(type);
	assertEquals("String", this.uiStrings.referenceToString(reference, "the-default-value"));
}
 
开发者ID:eclipse,项目名称:xtext-extras,代码行数:10,代码来源:UIStringsTest.java


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