use of org.eclipse.xtext.common.types.JvmGenericType in project xtext-eclipse by eclipse.
the class AbstractTypeProviderTest method testMemberCount_06_01.
@Test
public void testMemberCount_06_01() {
String typeName = NestedTypes.Outer.Inner.class.getName().replace('$', '.');
JvmGenericType type = (JvmGenericType) getTypeProvider().findTypeByName(typeName, false);
doTestMemberCount_06(type);
}
use of org.eclipse.xtext.common.types.JvmGenericType in project xtext-eclipse by eclipse.
the class AbstractTypeProviderTest method test_ParameterizedTypes_inner_return_01.
@Test
public void test_ParameterizedTypes_inner_return_01() {
String typeName = ParameterizedTypes.class.getName();
JvmGenericType type = (JvmGenericType) getTypeProvider().findTypeByName(typeName);
JvmOperation operation = getMethodFromType(type, ParameterizedTypes.class, "plainInner(org.eclipse.xtext.common.types.testSetups.ParameterizedTypes$Inner)");
JvmTypeReference returnType = operation.getReturnType();
assertTrue(returnType.getIdentifier(), returnType instanceof JvmInnerTypeReference);
assertEquals("ParameterizedTypes<S, T, U, V, W>$Inner<W, List<W>, List<W>>", returnType.getSimpleName());
}
use of org.eclipse.xtext.common.types.JvmGenericType in project xtext-eclipse by eclipse.
the class AbstractTypeProviderTest method test_ParameterizedTypes_V_01.
@Test
public void test_ParameterizedTypes_V_01() {
String typeName = ParameterizedTypes.class.getName();
JvmGenericType type = (JvmGenericType) getTypeProvider().findTypeByName(typeName);
JvmTypeParameter typeParameterV = type.getTypeParameters().get(3);
assertEquals("V", typeParameterV.getIdentifier());
assertSame(type, typeParameterV.getDeclarator());
assertEquals(1, typeParameterV.getConstraints().size());
JvmTypeConstraint typeConstraint = typeParameterV.getConstraints().get(0);
assertTrue(typeConstraint instanceof JvmUpperBound);
JvmUpperBound upperBound = (JvmUpperBound) typeConstraint;
assertNotNull(upperBound.getTypeReference());
assertFalse(upperBound.getTypeReference().toString(), upperBound.getTypeReference().eIsProxy());
assertEquals("java.util.List<java.util.List<? extends V>>", upperBound.getTypeReference().getIdentifier());
JvmParameterizedTypeReference listType = (JvmParameterizedTypeReference) upperBound.getTypeReference();
assertEquals(1, listType.getArguments().size());
JvmTypeReference typeArgument = listType.getArguments().get(0);
assertEquals("java.util.List<? extends V>", typeArgument.getIdentifier());
JvmParameterizedTypeReference nestedListType = (JvmParameterizedTypeReference) typeArgument;
assertEquals(1, nestedListType.getArguments().size());
JvmTypeReference nestedArgument = nestedListType.getArguments().get(0);
assertTrue(nestedArgument instanceof JvmWildcardTypeReference);
assertEquals(1, ((JvmWildcardTypeReference) nestedArgument).getConstraints().size());
JvmUpperBound nestedUpperBound = (JvmUpperBound) ((JvmWildcardTypeReference) nestedArgument).getConstraints().get(0);
assertSame(typeParameterV, nestedUpperBound.getTypeReference().getType());
}
use of org.eclipse.xtext.common.types.JvmGenericType in project xtext-eclipse by eclipse.
the class AbstractTypeProviderTest method testMemberCount_05_02.
@Test
public void testMemberCount_05_02() {
String typeName = NestedTypes.Outer.class.getName().replace('$', '.');
JvmGenericType type = (JvmGenericType) getTypeProvider().findTypeByName(typeName, true);
assertNull(type);
}
use of org.eclipse.xtext.common.types.JvmGenericType in project xtext-eclipse by eclipse.
the class AbstractTypeProviderTest method testMethods_publicStrictFpMethod_01.
@Test
public void testMethods_publicStrictFpMethod_01() {
String typeName = Methods.class.getName();
JvmGenericType type = (JvmGenericType) getTypeProvider().findTypeByName(typeName);
JvmOperation method = getMethodFromType(type, Methods.class, "publicStrictFpMethod()");
assertSame(type, method.getDeclaringType());
assertFalse(method.isAbstract());
assertFalse(method.isFinal());
assertFalse(method.isStatic());
assertFalse(method.isSynchronized());
assertTrue(method.isStrictFloatingPoint());
assertFalse(method.isNative());
assertEquals(JvmVisibility.PUBLIC, method.getVisibility());
JvmType methodType = method.getReturnType().getType();
assertEquals("void", methodType.getIdentifier());
}
Aggregations