Package org.jboss.jandex
Class GenericSignatureParser
- java.lang.Object
-
- org.jboss.jandex.GenericSignatureParser
-
class GenericSignatureParser extends java.lang.Object
A simple recursive decent generic signature parser.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
GenericSignatureParser.ClassSignature
(package private) static class
GenericSignatureParser.MethodSignature
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,TypeVariable>
classTypeParameters
private java.util.Map<java.lang.String,TypeVariable>
elementTypeParameters
private NameTable
names
private int
pos
private java.lang.String
signature
private java.util.Map<java.lang.String,TypeVariable>
typeParameters
private static WildcardType
UNBOUNDED_WILDCARD
-
Constructor Summary
Constructors Constructor Description GenericSignatureParser(NameTable names)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private int
advanceNameEnd()
private int
advanceNot(char c)
private int
advancePast(char c)
private void
expect(char c)
static void
main(java.lang.String[] args)
private Type
parseArrayType()
(package private) GenericSignatureParser.ClassSignature
parseClassSignature(java.lang.String signature)
private Type
parseClassTypeSignature()
(package private) Type
parseFieldSignature(java.lang.String signature)
private Type
parseJavaType()
(package private) GenericSignatureParser.MethodSignature
parseMethodSignature(java.lang.String signature)
private DotName
parseName()
private Type
parseReferenceType()
private Type
parseReturnType()
private Type
parseTypeArgument()
private Type[]
parseTypeArguments()
private Type[]
parseTypeList(boolean argument)
private Type
parseTypeParameter()
private Type[]
parseTypeParameters()
private Type
parseTypeVariable()
private Type
parseWildCard(boolean isExtends)
private TypeVariable
resolveBounds(Type type)
private TypeVariable
resolveType(java.lang.String identifier)
private Type
resolveType(Type type)
private void
resolveTypeList(java.util.ArrayList<Type> list)
-
-
-
Field Detail
-
UNBOUNDED_WILDCARD
private static WildcardType UNBOUNDED_WILDCARD
-
signature
private java.lang.String signature
-
pos
private int pos
-
names
private NameTable names
-
typeParameters
private java.util.Map<java.lang.String,TypeVariable> typeParameters
-
elementTypeParameters
private java.util.Map<java.lang.String,TypeVariable> elementTypeParameters
-
classTypeParameters
private java.util.Map<java.lang.String,TypeVariable> classTypeParameters
-
-
Constructor Detail
-
GenericSignatureParser
GenericSignatureParser(NameTable names)
-
-
Method Detail
-
parseClassSignature
GenericSignatureParser.ClassSignature parseClassSignature(java.lang.String signature)
-
expect
private void expect(char c)
-
parseFieldSignature
Type parseFieldSignature(java.lang.String signature)
-
parseMethodSignature
GenericSignatureParser.MethodSignature parseMethodSignature(java.lang.String signature)
-
parseClassTypeSignature
private Type parseClassTypeSignature()
-
parseTypeArguments
private Type[] parseTypeArguments()
-
parseTypeParameters
private Type[] parseTypeParameters()
-
parseTypeList
private Type[] parseTypeList(boolean argument)
-
parseTypeArgument
private Type parseTypeArgument()
-
parseWildCard
private Type parseWildCard(boolean isExtends)
-
parseTypeParameter
private Type parseTypeParameter()
-
parseReturnType
private Type parseReturnType()
-
parseReferenceType
private Type parseReferenceType()
-
parseArrayType
private Type parseArrayType()
-
parseTypeVariable
private Type parseTypeVariable()
-
resolveTypeList
private void resolveTypeList(java.util.ArrayList<Type> list)
-
resolveBounds
private TypeVariable resolveBounds(Type type)
-
resolveType
private TypeVariable resolveType(java.lang.String identifier)
-
parseJavaType
private Type parseJavaType()
-
advancePast
private int advancePast(char c)
-
advanceNot
private int advanceNot(char c)
-
parseName
private DotName parseName()
-
advanceNameEnd
private int advanceNameEnd()
-
main
public static void main(java.lang.String[] args) throws java.io.IOException
- Throws:
java.io.IOException
-
-