List of usage examples for org.eclipse.jdt.core.dom WildcardType isUpperBound
boolean isUpperBound
To view the source code for org.eclipse.jdt.core.dom WildcardType isUpperBound.
Click Source Link
From source file:at.bestsolution.fxide.jdt.corext.dom.ASTFlattener.java
License:Open Source License
@Override public boolean visit(WildcardType node) { printTypeAnnotations(node);/*from w w w. ja v a2s.c om*/ this.fBuffer.append("?");//$NON-NLS-1$ Type bound = node.getBound(); if (bound != null) { if (node.isUpperBound()) { this.fBuffer.append(" extends ");//$NON-NLS-1$ } else { this.fBuffer.append(" super ");//$NON-NLS-1$ } bound.accept(this); } return false; }
From source file:boa.datagen.util.Java7Visitor.java
License:Apache License
protected String typeName(final WildcardType t) { String name = "?"; if (t.getBound() != null) { name += " " + (t.isUpperBound() ? "extends" : "super"); name += " " + typeName(t.getBound()); }/*from ww w.j ava 2s . com*/ return name; }
From source file:chibi.gumtreediff.gen.jdt.cd.CdJdtVisitor.java
License:Open Source License
@Override public boolean visit(WildcardType node) { String bound = node.isUpperBound() ? "extends" : "super"; pushNode(node, bound);//from ww w .j a v a2 s .c om return true; }
From source file:coloredide.utils.CopiedNaiveASTFlattener.java
License:Open Source License
public boolean visit(WildcardType node) { this.buffer.append("?");//$NON-NLS-1$ Type bound = node.getBound(); if (bound != null) { if (node.isUpperBound()) { this.buffer.append(" extends ");//$NON-NLS-1$ } else {//ww w .j a v a2s . c om this.buffer.append(" super ");//$NON-NLS-1$ } bound.accept(this); } return false; }
From source file:com.google.googlejavaformat.java.JavaInputAstVisitor.java
License:Apache License
/** Visitor method for {@link WildcardType}s. */ @Override/* ww w. j av a2 s . co m*/ public boolean visit(WildcardType node) { sync(node); beforeAnnotatableType(node); builder.open(ZERO); token("?"); if (node.getBound() != null) { builder.open(plusFour); builder.space(); token(node.isUpperBound() ? "extends" : "super"); builder.breakOp(" "); node.getBound().accept(this); builder.close(); } builder.close(); return false; }
From source file:com.halware.nakedide.eclipse.ext.annot.utils.AstUtils.java
License:Open Source License
public static String asString(Type type) { if (type.isArrayType()) { ArrayType arrayType = (ArrayType) type; return asString(arrayType.getComponentType()) + "[]"; }/*from ww w . j a v a2 s . c o m*/ if (type.isParameterizedType()) { ParameterizedType parameterizedType = (ParameterizedType) type; List<Type> typeArguments = Generics.asT(parameterizedType.typeArguments()); class TypeToString implements ClosureUtil.IClosure<Type, String> { public String eval(Type type) { return asString(type); } } return asString(parameterizedType.getType()) + "<" + StringUtil.join(ClosureUtil.forEach(typeArguments, new TypeToString()), ", ") + ">"; } if (type.isPrimitiveType()) { PrimitiveType primitiveType = (PrimitiveType) type; return primitiveType.getPrimitiveTypeCode().toString(); } if (type.isQualifiedType()) { QualifiedType qualifiedType = (QualifiedType) type; return qualifiedType.getName().getFullyQualifiedName(); } if (type.isSimpleType()) { SimpleType simpleType = (SimpleType) type; return simpleType.getName().getFullyQualifiedName(); } if (type.isWildcardType()) { WildcardType wildcardType = (WildcardType) type; Type boundType = wildcardType.getBound(); if (boundType != null) { if (wildcardType.isUpperBound()) { return "? extends " + asString(boundType); } else { return "? super " + asString(boundType); } } else { return "?"; } } return "(unknown type)"; }
From source file:com.kodebeagle.javaparser.TypeResolver.java
License:Apache License
/** * @param type/*from www .ja v a2 s. c o m*/ * @return */ protected String getNameOfType(final Type type) { String nameOfType = ""; if (type != null) { if (type.isPrimitiveType()) { nameOfType = type.toString(); } else if (type.isParameterizedType()) { nameOfType = getParametrizedType((ParameterizedType) type); } else if (type.isArrayType()) { final ArrayType array = (ArrayType) type; nameOfType = getNameOfType(array.getElementType()) /*+ "[]"*/; } else if (type.isUnionType()) { // TODO: this is used for exceptions till now // So we will just capture the first type that we encounter final UnionType uType = (UnionType) type; final StringBuffer sb = new StringBuffer(); for (final Object unionedType : uType.types()) { sb.append(getNameOfType(((Type) unionedType))); break; // sb.append(" | "); } // sb.delete(sb.length() - 3, sb.length()); nameOfType = sb.toString(); } else if (type.isWildcardType()) { final WildcardType wType = (WildcardType) type; nameOfType = (wType.isUpperBound() ? "? extends " : "? super ") + getNameOfType(wType.getBound()); } else { nameOfType = getFullyQualifiedNameFor(type.toString()); } } return nameOfType; }
From source file:de.akra.idocit.java.services.ReflectionHelper.java
License:Apache License
/** * Returns the identifier from the {@link Type} depending on the containing type. * //from w w w .j av a 2 s. c o m * @param type * [SOURCE] * * @return [OBJECT] * @see Type * @thematicgrid Extracting Operations */ public static String extractIdentifierFrom(Type type) { switch (type.getNodeType()) { case ASTNode.PRIMITIVE_TYPE: { PrimitiveType primitiveType = (PrimitiveType) type; return primitiveType.getPrimitiveTypeCode().toString(); } case ASTNode.ARRAY_TYPE: { ArrayType arrayType = (ArrayType) type; String name = extractIdentifierFrom(arrayType.getElementType()); StringBuffer identifier = new StringBuffer(name); for (int i = 0; i < arrayType.getDimensions(); i++) { identifier.append("[]"); } return identifier.toString(); } case ASTNode.SIMPLE_TYPE: { SimpleType simpleType = (SimpleType) type; return simpleType.getName().getFullyQualifiedName(); } case ASTNode.QUALIFIED_TYPE: { QualifiedType qType = (QualifiedType) type; return extractIdentifierFrom(qType.getQualifier()) + "." + qType.getName().getIdentifier(); } case ASTNode.PARAMETERIZED_TYPE: { ParameterizedType paramType = (ParameterizedType) type; StringBuffer identifier = new StringBuffer(extractIdentifierFrom(paramType.getType())); identifier.append('<'); @SuppressWarnings("unchecked") Iterator<Type> iterTypeArgs = (Iterator<Type>) paramType.typeArguments().iterator(); while (iterTypeArgs.hasNext()) { Type typeArg = iterTypeArgs.next(); identifier.append(extractIdentifierFrom(typeArg)); if (iterTypeArgs.hasNext()) { identifier.append(','); } } identifier.append('>'); return identifier.toString(); } case ASTNode.WILDCARD_TYPE: { WildcardType wildcard = (WildcardType) type; String identifier = "? extends "; if (!wildcard.isUpperBound()) { identifier = "? super "; } return identifier + extractIdentifierFrom(wildcard.getBound()); } } return SignatureElement.ANONYMOUS_IDENTIFIER; }
From source file:de.fkoeberle.autocommit.message.java.helper.TypeUtil.java
License:Open Source License
/** * @return a string version of the specified type or another string * indicating an error./* w w w . ja v a 2 s.c o m*/ */ public static void appendTypeTo(Type type, StringBuilder builder) { if (type instanceof SimpleType) { SimpleType simpleType = (SimpleType) type; builder.append(simpleType.getName().getFullyQualifiedName()); } else if (type instanceof PrimitiveType) { PrimitiveType primitiveType = (PrimitiveType) type; Code code = primitiveType.getPrimitiveTypeCode(); builder.append(code.toString()); } else if (type instanceof ArrayType) { ArrayType arrayType = (ArrayType) type; appendTypeTo(arrayType.getComponentType(), builder); builder.append("[]"); //$NON-NLS-1$ } else if (type instanceof QualifiedType) { // There aren't test for this case, // since it seems to be impossible to get an instance of // QualifiedType. // Outer.Inner gets parsed as SimpleType QualifiedType qualifiedType = (QualifiedType) type; builder.append(qualifiedType.getQualifier()); builder.append('.'); builder.append(qualifiedType.getName().getIdentifier()); } else if (type instanceof ParameterizedType) { ParameterizedType parameterizedType = (ParameterizedType) type; builder.append(parameterizedType.getType()); builder.append("<"); //$NON-NLS-1$ @SuppressWarnings("unchecked") List<Type> typeArguments = parameterizedType.typeArguments(); boolean addComma = false; for (Type typeArg : typeArguments) { if (addComma) { builder.append(", "); } else { addComma = true; } appendTypeTo(typeArg, builder); } builder.append(">"); //$NON-NLS-1$ } else if (type instanceof WildcardType) { WildcardType wildcardType = (WildcardType) type; Type bound = wildcardType.getBound(); if (bound != null) { if (wildcardType.isUpperBound()) { builder.append("? extends "); //$NON-NLS-1$ } else { builder.append("? super "); //$NON-NLS-1$ } appendTypeTo(bound, builder); } else { builder.append("?"); //$NON-NLS-1$ } } else { assert false : "Expected no other types"; //$NON-NLS-1$ } }
From source file:edu.uci.ics.sourcerer.extractor.ast.ReferenceExtractorVisitor.java
License:Open Source License
@SuppressWarnings("unchecked") private String getTypeFqn(Type type) { if (type == null) { logger.log(Level.SEVERE, "Attempt to get type fqn of null type!"); throw new NullPointerException("Attempt to get type fqn of null type!"); }//from w ww. jav a 2 s. c o m ITypeBinding binding = type.resolveBinding(); if (binding == null) { if (type.isPrimitiveType()) { return ((PrimitiveType) type).getPrimitiveTypeCode().toString(); } else if (type.isSimpleType()) { return getUnknownFqn(((SimpleType) type).getName().getFullyQualifiedName()); } else if (type.isArrayType()) { ArrayType arrayType = (ArrayType) type; Type elementType = arrayType.getElementType(); if (elementType == null) { return getUnknownFqn(BRACKETS.substring(0, 2 * arrayType.getDimensions())); } else { return getTypeFqn(elementType) + BRACKETS.substring(0, 2 * arrayType.getDimensions()); } } else if (type.isParameterizedType()) { ParameterizedType pType = (ParameterizedType) type; StringBuilder fqn = new StringBuilder(getTypeFqn(pType.getType())); fqn.append("<"); boolean isFirst = true; for (Type arg : (List<Type>) pType.typeArguments()) { if (isFirst) { isFirst = false; } else { fqn.append(","); } try { fqn.append(getTypeFqn(arg)); } catch (NullPointerException e) { logger.log(Level.WARNING, "Eclipse NPE bug in parametrized type", e); fqn.append(UNKNOWN); } } fqn.append(">"); return fqn.toString(); } else if (type.isWildcardType()) { WildcardType wType = (WildcardType) type; Type bound = wType.getBound(); if (bound == null) { return "<?>"; } else { return "<?" + (wType.isUpperBound() ? "+" : "-") + getTypeFqn(bound) + ">"; } } else { logger.log(Level.SEVERE, "Unexpected node type for unresolved type!" + type.toString()); return UNKNOWN; } } else { return getTypeFqn(binding); } }