Class ClassOrInterfaceType
java.lang.Object
com.github.javaparser.ast.Node
com.github.javaparser.ast.type.Type
com.github.javaparser.ast.type.ReferenceType
com.github.javaparser.ast.type.ClassOrInterfaceType
- All Implemented Interfaces:
NodeWithAnnotations<ClassOrInterfaceType>, NodeWithRange<Node>, NodeWithSimpleName<ClassOrInterfaceType>, NodeWithTokenRange<Node>, NodeWithTypeArguments<ClassOrInterfaceType>, Observable, ConvertibleToUsage, Visitable, HasParentNode<Node>, Resolvable<ResolvedType>, Cloneable
public class ClassOrInterfaceType
extends ReferenceType
implements NodeWithSimpleName<ClassOrInterfaceType>, NodeWithAnnotations<ClassOrInterfaceType>, NodeWithTypeArguments<ClassOrInterfaceType>
A class or an interface type.
Object
HashMap<String, String>
java.util.Punchcard
Note that the syntax is ambiguous here, and JavaParser does not know what is to the left of the class. It assumes
cases like Map.Entry where Map is the scope of Entry. In java.util.Punchcard, it will not
recognize that java and util are parts of the package name. Instead, it will set util as the scope of Punchcard, as a
ClassOrInterfaceType (which it is not). In turn, util will have java as its scope, also as a
ClassOrInterfaceType
-
Nested Class Summary
Nested classes/interfaces inherited from class Node
Node.BreadthFirstIterator, Node.DirectChildrenIterator, Node.ObserverRegistrationMode, Node.ParentsVisitor, Node.Parsedness, Node.PostOrderIterator, Node.PreOrderIterator, Node.TreeTraversal -
Field Summary
FieldsFields inherited from class Node
ABSOLUTE_BEGIN_LINE, ABSOLUTE_END_LINE, LINE_SEPARATOR_KEY, NODE_BY_BEGIN_POSITION, PHANTOM_KEY, prettyPrinterNoCommentsConfiguration, PRINTER_KEY, SYMBOL_RESOLVER_KEY -
Constructor Summary
ConstructorsConstructorDescriptionClassOrInterfaceType(ClassOrInterfaceType scope, SimpleName name, NodeList<Type> typeArguments) ClassOrInterfaceType(ClassOrInterfaceType scope, SimpleName name, NodeList<Type> typeArguments, NodeList<AnnotationExpr> annotations) ClassOrInterfaceType(ClassOrInterfaceType scope, String name) ClassOrInterfaceType(TokenRange tokenRange, ClassOrInterfaceType scope, SimpleName name, NodeList<Type> typeArguments, NodeList<AnnotationExpr> annotations) This constructor is used by the parser and is considered private.ClassOrInterfaceType(String name) Deprecated.use JavaParser.parseClassOrInterfaceType instead. -
Method Summary
Modifier and TypeMethodDescription<R,A> R accept(GenericVisitor<R, A> v, A arg) Accept method for visitor support.<A> voidaccept(VoidVisitor<A> v, A arg) Accept method for visitor support.asString()clone()convertToUsage(Context context) Convert aClassOrInterfaceTypeinto aResolvedType.getName()getScope()voidbooleanbooleanbooleanbooleanresolve()setAnnotations(NodeList<AnnotationExpr> annotations) setName(SimpleName name) setScope(ClassOrInterfaceType scope) Sets the scopesetTypeArguments(NodeList<Type> typeArguments) Sets the typeArgumentsMethods inherited from class ReferenceType
asReferenceType, ifReferenceType, isReferenceType, toReferenceTypeMethods inherited from class Type
asArrayType, asIntersectionType, asPrimitiveType, asTypeParameter, asUnionType, asUnknownType, asVarType, asVoidType, asWildcardType, getAnnotation, getAnnotations, getArrayLevel, getElementType, ifArrayType, ifIntersectionType, ifPrimitiveType, ifTypeParameter, ifUnionType, ifUnknownType, ifVarType, ifVoidType, ifWildcardType, isArrayType, isIntersectionType, isPrimitiveType, isTypeParameter, isUnionType, isUnknownType, isVarType, isVoidType, isWildcardType, toArrayType, toIntersectionType, toPrimitiveType, toTypeParameter, toUnionType, toUnknownType, toVarType, toVoidType, toWildcardTypeMethods inherited from class Node
addOrphanComment, containsData, createDefaultPrinter, createDefaultPrinter, customInitialization, equals, findAll, findAll, findAll, findByRange, findCompilationUnit, findData, findFirst, findFirst, findFirst, findRootNode, getAllContainedComments, getChildNodes, getChildNodesByType, getComment, getData, getDataKeys, getDefaultPrinterConfiguration, getLineEndingStyle, getLineEndingStyleOrDefault, getNodesByType, getOrphanComments, getParentNode, getParentNodeForChildren, getParsed, getPrinter, getPrinter, getRange, getSymbolResolver, getTokenRange, hashCode, hasScope, isAncestorOf, isPhantom, isRegistered, notifyPropertyChange, register, register, registerForSubtree, remove, removeComment, removeData, removeForced, removeOrphanComment, replace, setAsParentNodeOf, setAsParentNodeOf, setBlockComment, setComment, setData, setLineComment, setParentNode, setParsed, setRange, setTokenRange, stream, stream, toString, toString, tryAddImportToParentCompilationUnit, unregister, walk, walk, walkMethods inherited from interface HasParentNode
findAncestor, findAncestor, findAncestor, hasParentNode, isDescendantOfMethods inherited from interface NodeWithAnnotations
addAndGetAnnotation, addAndGetAnnotation, addAnnotation, addAnnotation, addAnnotation, addMarkerAnnotation, addMarkerAnnotation, addSingleMemberAnnotation, addSingleMemberAnnotation, addSingleMemberAnnotation, addSingleMemberAnnotation, getAnnotation, getAnnotationByClass, getAnnotationByName, getAnnotations, isAnnotationPresent, isAnnotationPresent, setAnnotation, tryAddImportToParentCompilationUnitMethods inherited from interface NodeWithRange
containsWithin, containsWithinRange, getBegin, getEnd, hasRangeMethods inherited from interface NodeWithSimpleName
getNameAsExpression, getNameAsString, setNameMethods inherited from interface NodeWithTypeArguments
isUsingDiamondOperator, removeTypeArguments, setDiamondOperator, setTypeArguments
-
Field Details
-
scope
-
name
-
typeArguments
-
-
Constructor Details
-
ClassOrInterfaceType
public ClassOrInterfaceType() -
ClassOrInterfaceType
Deprecated.use JavaParser.parseClassOrInterfaceType instead. This constructor does not understand generics. -
ClassOrInterfaceType
-
ClassOrInterfaceType
public ClassOrInterfaceType(ClassOrInterfaceType scope, SimpleName name, NodeList<Type> typeArguments) -
ClassOrInterfaceType
public ClassOrInterfaceType(ClassOrInterfaceType scope, SimpleName name, NodeList<Type> typeArguments, NodeList<AnnotationExpr> annotations) -
ClassOrInterfaceType
public ClassOrInterfaceType(TokenRange tokenRange, ClassOrInterfaceType scope, SimpleName name, NodeList<Type> typeArguments, NodeList<AnnotationExpr> annotations) This constructor is used by the parser and is considered private.
-
-
Method Details
-
accept
Description copied from interface:VisitableAccept method for visitor support.- Specified by:
acceptin interfaceVisitable- Type Parameters:
R- the type of the return value of the visitorA- the type the user argument passed to the visitor- Parameters:
v- the visitor implementationarg- the argument passed to the visitor (of type A)- Returns:
- the result of the visit (of type R)
-
accept
Description copied from interface:VisitableAccept method for visitor support. -
getName
- Specified by:
getNamein interfaceNodeWithSimpleName<ClassOrInterfaceType>
-
getNameWithScope
-
getScope
-
isBoxedType
public boolean isBoxedType() -
toUnboxedType
- Throws:
UnsupportedOperationException
-
setName
- Specified by:
setNamein interfaceNodeWithSimpleName<ClassOrInterfaceType>
-
setScope
Sets the scope- Parameters:
scope- the scope, can be null- Returns:
- this, the ClassOrInterfaceType
-
getTypeArguments
- Specified by:
getTypeArgumentsin interfaceNodeWithTypeArguments<ClassOrInterfaceType>- Returns:
- the types that can be found in the type arguments:
<String, Integer>.
-
setTypeArguments
Sets the typeArguments- Specified by:
setTypeArgumentsin interfaceNodeWithTypeArguments<ClassOrInterfaceType>- Parameters:
typeArguments- the typeArguments, can be null- Returns:
- this, the ClassOrInterfaceType
-
setAnnotations
- Specified by:
setAnnotationsin interfaceNodeWithAnnotations<ClassOrInterfaceType>- Overrides:
setAnnotationsin classType
-
remove
-
asString
-
toDescriptor
- Specified by:
toDescriptorin classReferenceType
-
removeScope
-
clone
- Overrides:
clonein classReferenceType
-
getMetaModel
- Overrides:
getMetaModelin classReferenceType- Returns:
- get JavaParser specific node introspection information.
-
replace
-
isClassOrInterfaceType
public boolean isClassOrInterfaceType()- Overrides:
isClassOrInterfaceTypein classType
-
asClassOrInterfaceType
- Overrides:
asClassOrInterfaceTypein classType
-
ifClassOrInterfaceType
- Overrides:
ifClassOrInterfaceTypein classType
-
resolve
- Specified by:
resolvein interfaceResolvable<ResolvedType>- Specified by:
resolvein classType
-
toClassOrInterfaceType
- Overrides:
toClassOrInterfaceTypein classType
-
convertToUsage
Convert aClassOrInterfaceTypeinto aResolvedType.- Specified by:
convertToUsagein interfaceConvertibleToUsage- Parameters:
context- The current context.classOrInterfaceType- The class of interface type to be converted.- Returns:
- The type resolved.
-